[Gajim-devel] Licence incompatibility -- GPL and OpenSSL

Yavor Doganov yavor at gnu.org
Tue Jan 27 15:54:45 CET 2009

On Tue, Jan 27, 2009 at 03:08:57PM +0100, Jonathan Schleifer wrote:
>> I never said you did.
> Then I fail to see the problem.

The problem is the linking.  You can't link a GPL'ed application against 
a library under incompatible license, unless it classifies as a "system 

> We only combine our code with OpenSSL's code in memory.

That is precisely the problem.  You do that and the combination is 
impossible, which is why wget, gnubiff, exim and tons of other GPL'ed 
packages have this exception.

See also http://en.wikipedia.org/wiki/Openssl#Licensing -- this is 
widely known problem.  That's one of the reasons GnuTLS exists.

> This is perfectly legal, as the GPL only covers _DISTRIBUTION_.

Please reread the license.  Distributors are not allowed to distribute 
Gajim (at least in binary form, for sure), as it is not complying to its 
own license.  Several distros care about this (like Debian and Fedora), 
others assume OpenSSL is a "system library", and others simply ignore 
the problem like most licensing issues.

Only a very small portion of the bugs reported to Debian:

(How such bugs are resolved: 1) the package is relicensed upstream to 
GPL+OpenSSL exception; 2) the package migrates to GnuTLS or NSS; 3) the 
openssl support is removed if 1) and 2) are impossible.)

> Right, it is loaded at runtime. So the combined work is created at  
> _RUNTIME_, and _NOT_ at distribution. This isn't covered by the GPL at  
> all. It doesn't say a single word that it's forbidden to combine GPL'd  
> and non-GPL'd code in RAM.

It is definitely covered by the GPL, as the work you distribute "as a 
whole" should be under the GPL (which in practical terms means that all 
dynamically linked libraries must be licensed under a GPL-compatible 

See for example 

Note the two distinguished usages "I want to copy code under" and "I 
want to use a library under" and read their explanations above the 
table.  You are basically arguing that to comply with the GPL, you only 
must make sure to include GPL-compatible code in the tarball.  That's 
only one of the things you have to do.

More information about the Gajim-devel mailing list