13
13
One common dilemma is that GPL[1]-licensed code is not allowed to be linked
14
14
with code licensed under the Original BSD license (with the announcement
15
clause, unless there's a specified exception in the GPL-licensed module). You
16
may still build your own copies that use them all, but distributing them as
17
binaries would be to violate the GPL license - unless you accompany your
18
license with an exception[2]. This particular problem was addressed when the
19
Modified BSD license was created, which does not have the annoncement clause
20
that collides with GPL.
15
clause). You may still build your own copies that use them all, but
16
distributing them as binaries would be to violate the GPL license - unless you
17
accompany your license with an exception[2]. This particular problem was
18
addressed when the Modified BSD license was created, which does not have the
19
annoncement clause that collides with GPL.
22
21
libcurl http://curl.haxx.se/docs/copyright.html
29
28
OpenSSL http://www.openssl.org/source/license.html
31
Uses an Original BSD-style license with an announement clause that
32
makes it "incompatible" with GPL. You are not allowed to ship binaries
33
that link with OpenSSL that includes GPL code (unless that specific
34
GPL code includes an exception for OpenSSL - a habit that is growing
35
more and more common). If OpenSSL's licensing is a problem for you,
36
consider using GnuTLS instead.
30
(May be used for SSL/TLS support) Uses an Original BSD-style license
31
with an announement clause that makes it "incompatible" with GPL. You
32
are not allowed to ship binaries that link with OpenSSL that includes
33
GPL code (unless that specific GPL code includes an exception for
34
OpenSSL - a habit that is growing more and more common). If OpenSSL's
35
licensing is a problem for you, consider using GnuTLS instead.
38
37
GnuTLS http://www.gnutls.org/
40
Uses the LGPL[3] license. If this is a problem for you, consider using
41
OpenSSL instead. Also note that GnuTLS itself depends on and uses
42
other libs (libgcrypt and libgpg-error) and they too are LGPL- or
39
(May be used for SSL/TLS support) Uses the LGPL[3] license. If this is
40
a problem for you, consider using OpenSSL instead. Also note that
41
GnuTLS itself depends on and uses other libs (libgcrypt and
42
libgpg-error) and they too are LGPL- or GPL-licensed.
45
44
c-ares http://daniel.haxx.se/projects/c-ares/license.html
47
Uses an MIT license that is very liberal and imposes no restrictions
48
on any other library or part you may link with.
46
(Used for asynchronous name resolves) Uses an MIT license that is very
47
liberal and imposes no restrictions on any other library or part you
50
50
zlib http://www.gzip.org/zlib/zlib_license.html
52
Uses an MIT-style license that shouldn't collide with any other
52
(Used for compressed Transfer-Encoding support) Uses an MIT-style
53
license that shouldn't collide with any other library.
60
60
of the code in libcurl that is written to deal with Kerberos4 likewise
61
61
have such a license.
65
While nothing in particular says that a GSS/Kerberos5 library must use
66
any particular license, the one I've used (Heimdal) is Original BSD-
67
licensed with the announcement clause.
63
MIT Kerberos http://web.mit.edu/kerberos/www/dist/
65
(May be used for GSS support) MIT licensed, that shouldn't collide
68
Heimdal http://www.pdc.kth.se/heimdal/
70
(May be used for GSS support) Heimdal is Original BSD licensed with
71
the announcement clause.
73
GNU GSS http://www.gnu.org/software/gss/
75
(May be used for GSS support) GNU GSS is GPL licensed. Note that you
76
may not distribute binary curl packages that uses this if you build
77
curl to also link and use any Original BSD licensed libraries!
71
Unclear license. Based on its name, I assume that it uses the OpenSSL
72
license and thus shares the same issues as described for OpenSSL
81
(Used for SPNEGO support) Unclear license. Based on its name, I assume
82
that it uses the OpenSSL license and thus shares the same issues as
83
described for OpenSSL above.
75
85
libidn http://www.gnu.org/licenses/lgpl.html
77
Uses the GNU Lesser General Public License. LGPL is a variation of GPL
78
with slightly less aggressive "copyleft". This license requires more
79
requirements to be met when distributing binaries, see the license for
80
details. Also note that if you distribute a binary that includes this
81
library, you must also include the full LGPL license text. Please
82
properly point out what parts of the distributed package that the
87
(Used for IDNA support) Uses the GNU Lesser General Public
88
License. LGPL is a variation of GPL with slightly less aggressive
89
"copyleft". This license requires more requirements to be met when
90
distributing binaries, see the license for details. Also note that if
91
you distribute a binary that includes this library, you must also
92
include the full LGPL license text. Please properly point out what
93
parts of the distributed package that the license addresses.
85
95
OpenLDAP http://www.openldap.org/software/release/license.html
87
Uses a Modified BSD-style license. Since libcurl uses OpenLDAP as a
88
shared library only, I have not heard of anyone that ships OpenLDAP
89
linked with libcurl in an app.
97
(Used for LDAP support) Uses a Modified BSD-style license. Since
98
libcurl uses OpenLDAP as a shared library only, I have not heard of
99
anyone that ships OpenLDAP linked with libcurl in an app.
92
102
[1] = GPL - GNU General Public License: http://www.gnu.org/licenses/gpl.html