about summary refs log tree commit diff
path: root/doc/COPYRIGHT.PATENT
blob: fe3c242a6bc872206c8716f927eb9af8b0ea402d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
Netpbm consists of code contributed by many authors.  In most of the
source code files, there is a copyright notice and license, telling
you what you may or may not do with the code.  All authors have granted
you the right to use and distribute their code without having to pay
them, as long as you meet some simple requirements.

Most of the components require you to include a copy of their
copyright notices and warranty disclaimers in any copies or
derivations you distribute.

Another restriction that some of the software has is that in order to
have permission to copy it (which includes writing anything derived
from it), you must distribute source code for your copy or derivation
and propagate the same restriction to people who would copy your
derivation.  In other words, the price the author wants for the use of
his proprietary work is your contribution to the free software cause.

One component prohibits you from selling it or using it in a
commercial way: hpcdtoppm.

Some components are contributed to the public domain.  

The copyrights on individual components of this package are detailed 
at appropriate places within the package.  A slightly out of date
summary of all the copyrights is in the file 'doc/copyright_summary'
in the Netpbm source tree.

As with most public open source software, no one really knows for sure
where the code came from.  It is possible that a contributor copied it
without license to do so.  That might mean any user of the code owes
someone royalties.  The Netpbm maintainer in particular has received
no warranties regarding any of the code in the package.  So consider
all the above to be modified by "to the best of the Netpbm
maintainer's knowledge."



PATENTS
-------

These are the patents the Netpbm maintainer knows about that relate to
Netpbm.  It is basically just information the maintainer has stumbled
over at some point -- no search has been done.

No licenses have been granted by patent owners to the maintainer of
Netpbm.  Therefore, if you need a patent to use something in Netpbm,
you need your own license.

A note about patents in general: A patent gives an inventor the
exclusive right to make, sell, or use the invention.  If you
independently invent something without knowing that the patent holder
already did, that makes no difference -- the patent holder still has
the exclusive right.  It makes no difference if you give the original
inventor credit.  The patent applies to a method, not its expression,
so writing a program from scratch to implement a certain method is
still a patent infringement.  Infringing a patent is not a crime per
se, but to the extent that it costs the patent holder money, the
infringer has to make it up.

The original purpose of patents is probably perverted when patents are
applied to things you implement in computer programs.  This is one of
the Free Software Foundation's causes.  See 
<http://www.gnu.org/philosophy.html#laws>.


Unisys owns patents on LZW compression, which is used by Ppmtogif, and
maybe on LZW decompression, which is used by Giftopnm.  IBM also owns
a patent that may cover the GIF tools.  Unisys offers a license of the
patent for trivial use for $5000.  Its U.S. patent (Number 4,558,302)
EXPIRED June 20, 2003.  In most of Europe, the patent expires June 18,
2004.  In Japan, it's June 20, 2004 and in Canada, July 7, 2004.
IBM's U.S. patent expirs August 11, 2006.

Neither company has ever enforced the patent against trivial users of
it.  <http://news.cnet.com/news/0-1005-200-1713278.html> is an article
dated April 18, 2000 on the issue.
http://www.unisys.com/about__unisys/lzw/> is Unisys' view of the
matter.  For information from another perspective, see
<http://burnallgifs.org>.

The following Netpbm components may be restricted by these patents:
Ppmtogif, Giftopnm.

A good substitute for GIF if the patents are a problem is PNG (see
pngtopnm, pnmtopng), which was developed with a primary purpose of not
using any patented technology.

You can also use the -nolzw option on ppmtogif to avoid using the LZW
patent.  The images so generated are larger than traditional
LZW-compressed GIFs, but any GIF decoder can decode them just the
same.

I repeat: The Unisys U.S. patent has expired.  It is not an issue
for any future use of Netpbm.


The Pnmtojpeg and possibly Jpegtopnm programs in some cases may use
the arithmetic coding patents owned by IBM, AT&T, and Mitsubishi.
There is difference of opinion on whether they do.

Forgent owns a patent it believes covers JPEG compression.  This
patent was virtually unknown before July 2002, when Forgent began to
enforce it.  It has successfully enforced it against two companies
(Sony and an unnamed Japanese digital camera maker), but without court
ruling.  This patent, U.S. Patent No. 4,698,672, expires in 2006.

Philips and Lucent Technologies also own patents they claim cover
JPEG.

The following Netpbm components may be restricted by these patents:
Jpegtopnm, Pnmtojpeg, Ppmtompeg, Tifftopnm, Pnmtotiff.  These all
do their JPEG work via a JPEG library not distributed with Netpbm.
Your JPEG-related liability for using Netpbm is limited to your 
liability for using your JPEG library.

The next best alternative to JPEG is probably PNG and maybe JBIG for
bilevel (black and white) images.

http://burnalljpegs.org contains information on this issue.


The Jbigtopnm and Pnmtojbig programs use arithmetic coding patents and
other patents covering various aspects of the "front end."