LWN.net Logo

GPL and linking

GPL and linking

Posted Feb 16, 2006 5:50 UTC (Thu) by proski (subscriber, #104)
Parent article: On the dual-license model

I wonder if the GPL linking clause has ever been tested in court. Although GPLv2 says in the last paragraph that it "does not permit incorporating your program into proprietary programs", this paragraph is located in an appendix, after the "terms and conditions" part. Also consider that GPL positions itself as a license, not as a contract, and you may wonder how the linking clause can have any effect on other works, unless there is a clear precedent establishing that linking to a library always creates a derived work of the said library.

I see that serious money is changing hands in the assumption that GPLed libraries can dictate the license to the software linked to them. I'm sure Oracle has lots of lawyers that looked into that issue. Can we consider the latest Oracle investments as a confirmation that the linking clause in GPLv2 would likely hold in the court of law?

As for the Sleepycat license, it doesn't say anything about linking at all, but I think the same rules should apply to it.


(Log in to post comments)

GPL and linking

Posted Feb 16, 2006 8:19 UTC (Thu) by khim (subscriber, #9252) [Link]

Can we consider the latest Oracle investments as a confirmation that the linking clause in GPLv2 would likely hold in the court of law?

No. This clause is almost totally irrelevant to dual-licensing model.

I think you are mixing issues. Consider two samples.

1. I created nice MegaPuperProgram - and it can use libreadline if it's already installed on target system. I do not distribute libreadline itself. Can I distribute my work legally ? Who knows. It's not clear if my work is derived work of libreadline or not. Especially if my program is perfectly functional (but without command-line editing, of course) without libreadline.

2. I've created my SuperPuperProgram and have put MySQL in the same package (may be on the same CD or merely in the same box) and claim that even if my SuperPuperProgram is not usable without MySQL it's not GPL-violation (since I've used old LGPL'ed mysqlclient drivers or something). Hmm... Interesting. Box with SuperPuperProgram and MySQL is clearly derived product of MySQL. And you can only distribute MySQL in package if it's "mere aggregation". But if your program is not functional without MySQL... then how the hell can you call it "mere aggregation" ?

Think about it: when dual-licensed MySQL (or QT, or something else) is used you are firmly in situation number 2 for 99% cases. Where "linking clause" of GPLv2 is irrelevant. If you are distributing box with two totally unrelated packages (Apache and Bash, for example) - you are still distributing something derived from Apache and Bash (think about verses collection - you need specific permissions from all copyright holders and if poet B is loathing poet A and does not want to see such collection - you are stuck; no linking - verbs are totally independent from each other). Then. How the hell you can distribute RedHat Linux at all ? Oh, it's easy. With GPLv1 - you can not. With GPLv2 - you can since "mere aggregation" exception clause was added fifteen years ago. But it's kinda hard to claim that MySQL and your SuperPuperProgram are merely aggregated on the same media if your SuperPuperProgram is unusable without MySQL...

In short: dual-licensing model depends on differerent part of GPLv2. On limits for "mere aggregation" clause - and that's totally different story. This is why clarification about inability to use dynamic linking to avoid GPL requirements is in appendix: it's just explanation, not something required by GPLv2 machine - it'll work just fine without any appendix at all.

Derivative works vs Compilation works

Posted Feb 16, 2006 11:16 UTC (Thu) by hummassa (subscriber, #307) [Link]

What defines derivative work on many jurisdictions is not the presence of
a work inside another, but the process of a transformation that made the
first work become the second one.

Classical example of derivative works: translations. You get Harry Potter
and the Goblet of Fire and re-write it in Kadiweu. The original book is
transformed until you get the derivative work.

The right to *make* (not only distribute, but *make*) derivative work is
one of the monopolized rights by the copyright owner, and it can be
granted to a third party under any terms the copyright owner deems fit.
Like: "yes, you can make a derivative work of my book if you sacrifice
your firstborn under the blue moon".

Other example: fanfics. When you get the body of work of Star Trek, for
instance, and transform it, making another story that re-uses the
characters and mise-en-scene, you are transforming a body of work into a
new body of work (the Trek universe containing your story). Many
publishers close their eyes to fanfics that are made not-for-profit, but
don't try to publish a Trek book without Paramount's permission!

Ah, and once you have the permission to make the the derivative works --
albeit the copyright of your work is Yours -- you still have to follow any
dispositions by the original work's copyright owner about its
distribution, etc. (THAT is how the GPL works)

Now, the act of distributing a number of copyrighted works in a collection
or compilation has completely different implications. For example, when
you distribute a compilation work, you must still abide to the licensing
terms of each individual work, but you are not the copyright owner of the
compilation -- you are the owner of the abstract "selection and ordering"
that you have defined to compile the works.

All in all, your program being functionally dependent on mysql or not does
not define a derivative work (the principles of abstraction, filtration
and comparison would weed out -- in principle [this can be held not true
for some special cases] -- the derivation), and IMHO, any aggregation is
"mere", independently of functional dependence -- this, because, legally,
the set of "your work + mysql" is just a compilation work.

Oh $DEITY

Posted Feb 16, 2006 10:15 UTC (Thu) by hummassa (subscriber, #307) [Link]

There is no "GPL linking clause".

I defy anyone to find anywhere in the license text of the GPL that
mentions "linking". Even the "incorporating" in the non-normative last
paragraphs is absolutely incorrect. I have explained, than complained,
then ranted, and now when I look at myself talking about this, I *know* I
look like a drooling madman.

I'll try to calm down and explain (again):

1. The FSF GPL FAQ is the only semi-authoritative place where it's said
that you can't link, either statically or dynamically, your
GPL-incompatible-licensed program with a GPL'd library.

2. The argument used to uphold the forementioned FAQ opinion is weak. The
problem is that the GPLv2 has an error in its content, in the following
segment of clause #0:

""" The "Program", below, refers to any such program or work, and a "work
based on the Program" means either the Program or any derivative work
under copyright law: that is to say, a work containing the Program or a
portion of it, either verbatim or with modifications and/or translated
into another
language. """

Let's analyze it.
a "work based on the program"
is "the program or a derivative work under copyright law";
that is to say (== explaining) "a work containing the program or a portion
of it (...)"
==> which is blatantly false!!! This is not the definition of "a
derivative work under copyright law".

3. As the GPL states in its clause #0, next paragraph:

""" Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted (...) """

It is, at the very least, least implicitly allowing the distribution of a
GPL-incompatible-licensed program that links DYNAMICALLY with a
separately-distributed GPL'd library: because the GPL will not restrict
"the act of running the program" (where the "program" is in fact the
library).

4. IOW#1: The GPL has a serious error in its formulation on clause #0 and
one of the stuff they should do is correct it for the v3.

5. IOW#2: For all practical LEGAL terms, license a library under the GPL
is very similar to license it under the LGPL (Derivative works of the
library must still have their source distributed -- to whomever one
distributes as binary -- etc., ie, must be GPL'd also, but a "using
program" does not /per/ /se/ has this requirement)

Oh $DEITY

Posted Feb 16, 2006 10:52 UTC (Thu) by k8to (subscriber, #15413) [Link]

Are we free to understand this article is authoritative legal advice?

Or, less snarkily, why do you believe you can give an authoritative legal opinion on the license text when others who are legal experts are not in agreement with you?

It is easy to accept that the matter is not made entirely clear by the license text. It is very difficult to accept your conclusion.

As authoritative as possible, considering:

Posted Feb 16, 2006 11:33 UTC (Thu) by hummassa (subscriber, #307) [Link]

IANAL, but I have worked for two years as a paralegal in a DA's office, I
have legal training, and I researched Brasilian copyright law (and 17USC)
for use in criminal prosecution of copyright infringers.

The only _real_ authoritative answer will come from a superior court in
your jurisdiction. Maybe I should have disclaimed all that -- for the
100th time? Ok. Now it's done.

Oh $DEITY

Posted Feb 16, 2006 19:13 UTC (Thu) by ekj (guest, #1524) [Link]

He's basically rigth, even though he words it provocatively.

The basic point is: No license has the power to define what "derivative work" mean in the context of copyrigth law.

Only a judge can do that. And if a judge says that X is not, according to copyrigth-law, a derivative of Y, then there is absolutely nothing the author of Y can do to affect X. The license for Y is simply irrelevant in this case.

Oh $DEITY

Posted Feb 23, 2006 13:17 UTC (Thu) by Wol (guest, #4433) [Link]

Which is why the GPL v3 addresses this directly ...

v2 was not written by a lawyer. I don't know whether v3 was, but if it wasn't it had a lot of legal involvement in its drafting.

Cheers,
Wol

GPL and linking

Posted Feb 16, 2006 15:00 UTC (Thu) by mattdm (subscriber, #18) [Link]

I wonder if the GPL linking clause has ever been tested in court.

It's very telling that it has been successfully enforced without going to court -- going to court is what you do only if there looks like there might actually be a question.

GPL and linking

Posted Feb 17, 2006 1:12 UTC (Fri) by giraffedata (subscriber, #1954) [Link]

It's very telling that it has been successfully enforced without going to court -- going to court is what you do only if there looks like there might actually be a question.

It's telling, but not as much as this suggests. These successful enforcements are merely settlements. Both sides gave up something, in recognition by each of the possibility he would lose in court. In the settlements I've heard about, the copyright owner didn't get royalties, which he would be entitled to if the GPL really said everything he claimed. All he got was for the alleged infringer to stop infringing.

In such a case, I don't think the alleged infringer really gives up much in the settlement, so he might actually be 90% convinced he's right, but it just isn't worth the 10% risk to go to court.

A few years back, I read a quote from FSF's Eben Moglen, the foremost enforcer of GPL, about all the fact that GPL had never been to court because of all these settlements. He said the alleged infringer always says, "we don't know GPL means we can't link, because no one's ever lost in court" and Moglen replies, "but do you want to be the first?" That makes the choice not to defend sound more like a fear of litigation than a solid belief that FSF's interpretation is right.

GPL and linking

Posted Feb 23, 2006 13:20 UTC (Thu) by Wol (guest, #4433) [Link]

There's also something called "intent". And something else called "precedent".

It is widely accepted that the intent of the GPL is to control linking. There is a lot of precedent that that is the way it is interpreted.

If the judge was unsure which way to rule, then they would look to intent and precedent, and in that case they couldn't do anything except come down in favour of the FSF.

Cheers,
Wol

GPL and linking

Posted Feb 23, 2006 16:50 UTC (Thu) by giraffedata (subscriber, #1954) [Link]

I don't think either precedent or intent help us here.

Several postings here say there is no precedent at all for the linking question. I.e. no authority has ever ruled on it. If you know of a precedent, please post it.

As for intent, I think it's pretty clear that the intent of a person who distributed object-code-only code that links to GPL code was to link and still not violate copyright. The intent of the guy who licensed the GPL code to him may have been for him not to link, but why is his intent more important?

In criminal law, intent of the perpetrator is important because we don't punish people for innocent actions. In contract law, the intent of the parties is relevant to the extent that all parties have the same intent. In ambiguous statutes, the intent of the legislature is sometimes called in to disambiguate. But I don't see any room for intent in deciding whether I have permission from Linus to distribute his kernel code along with an object-code-only program that links to it. It's the permission he actually gave, not what he intended to give, that matters.

GPL and linking

Posted Feb 24, 2006 18:44 UTC (Fri) by Duncan (guest, #6647) [Link]

Isn't it the case that it has now been enforced in (German) court, several
times, as Harald Welte and the Netfilter core team have aggressively
enforced their rights with the various hardware manufacturers that used
it? Google on court netfilter .

Apparently, the German system has a pretty short clock on things, so once
an alleged violator is notified, they have to respond rather quickly or
find themselves in court. It cuts down on the stalling tactics and causes
many companies to comply right away. Those that don't get dragged into
court and ultimately have to comply or face no longer being able to sell
their product in Germany (the entire EC??). It has happened to several
that dilly dallied too long, at least one of which apparently got beyond
the preliminary injunction to the permanent injunction -- backing the GPL.

Of course, a German court isn't a US court, or a Japanese court, or... but
to say the GPL hasn't been tested in court, blanket statement, is now
factually incorrect.

Also of potential interest is that the English version of the GPL is the
only official version. Other translations specifically state that they
aren't official, and that the English translation is to be considered
legally authoritative, should there be any discrepancy. Thus, it was
specifically the English version of the GPL that was held valid.

Duncan

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds