restrictions on web service linking?

Arnoud Engelfriet arnoud at
Tue Nov 21 16:09:50 UTC 2006

Clark C. Evans wrote:
> On Tue, Nov 21, 2006 at 08:06:42AM +0100, Arnoud Engelfriet wrote:
> | Whether a dynamically linked library is a "derivative" or
> | "other software interacting with" is an often-debated question.
> | But yes, if it's *not* derivative then the GPL would not apply
> | to the linked library.
> I'm extremely confused how OSD#9 is compatible with the GPL license in
> the case of a dynamically linked library.  Could you explain in much
> more detail?  

Well, the short of it is that arguably an application is a
derivative work of a library it dynamically links against.
Entire papers and even a Ph.D. thesis or two have been written
about this argument.

And *if* you agree that an application is a derivative of its
libraries, then OSD 9 permits putting restrictions in the
library license such as "if you distribute the application
it has to be under the same license as this library."

> If it were found out, in a court of law, that dynamic linking does not
> in fact create a derivative work, and if the FSF still asserted that the
> GPL is still enforceable though other means and this were upheld, would
> this situation force the OSI to de-certify the GPL?

That would actually not make a difference IMO. The point is
(1) that the GPL puts restrictions on derivatives, (2) dynamically
linked applications are arguably derivatives of libraries, and
(3) therefore the GPL may put restrictions on applications.

OSD 9 says you can do (3) because you're effectively doing (1),
and (2) shows why (1) and (3) are the same.

What you are doing is (3) but because of something different:
(2') an application that communicates over socket, pipe etc
is not a derivative of the application on the other end

> Further, even if such a license did violate OSD#9, would it not make
> sense to consider this sort of license anyway (and perhaps amend the
> definition rules if they were found to be inadequate)?

In theory, yes. In practice the rules have proven very useful,
and the boundary between "two programs talking to each other"
versus "a combined work through linking" is generally not
a problem. 

Basically, in my view it just doesn't feel right to be able to
set restrictions on independent works just because the application
talks with them. You get all kinds of weird side-effects like
open source browsers not being allowed to communicate with
proprietary Web servers. 


Arnoud Engelfriet, Dutch & European patent attorney - Speaking only for myself
Patents, copyright and IPR explained for techies:

More information about the License-discuss mailing list