[Pipet Devel] Licensing issues

Jean-Marc Valin jean-marc.valin at hermes.usherb.ca
Thu Sep 7 20:47:38 EDT 2000

> Regardless of whether we choose the LGPL or GPL, we can always make a
> modification that explicitly permits CORBA linking or any other kind of
> linking.  That's something we should keep in mind.

In their current form, the GPL and LGPL allow linking with CORBA.

> > Before we start going into license (in)compatibilities, let's start by deciding
> > what kind of things we want to prevent. We know we don't want people to take our
> > code and make it proprietary. That leaves us with GPL and LGPL. Now is there any
> > kind of "linking" we want to prevent? If not, then we can almost LGPL
> > everything. If not, we need to see what needs to be GPL and what needs to be
> > LGPL.
> Jarl has a good point in that we may want to prevent one of the layers from
> being substituted with a proprietary program.  This may be more of an advocacy
> issue than a security issue, since, as Jean-Marc stated, an Open Source layer
> can be just as malicious.

Well, if you have a (static or dynamic) linking, then you can prevent that.
Otherwise, you can't. For instance, You cannot release under the GPL an ftp
client for which you forbid to connect to a closed-source ftp server. I would go
as far as saying that such a restriction would make your license non
GPL-compatible. Actually, locking such 3rd parties would be playing the very
same game as all the big bad software vendors. ...It would be like having the
gcc license saying you cannot compile closed-source programs with it!

> On the other hand, there may be some "control" issues here.  Let's pretend
> that Micro$oft (perhaps we are having some delusions of grandure) wants to
> "Embrace, Extend, and Extinguish" Piper.  It could do so by creating its own
> BL (or another layer) that uses a SLIGHTLY different protocol that only works
> with their UI.  They've done this before: Look at how many Web pages work only
> with IE.

Actually, locking out 3rd parties implementations would be playing the very same
game as all the big bad software vendors. The only thing we could try doing is
to patent the protocol and allow free use as long as you don't make a protocol
modification proprietary. It would be like a GPL-protocol, but I'm really not
sure we can (and want to) do that.

> But, if we are to make everything GPL, and say that CORBA linking from a non
> GPL'd layer is illegal for DL <-> BL <-> PL linking, then it has to be illegal
> for UIL <-> DL linking too.  It's a tough choice.  We (at least Jarl and I)
> want the former to be illegal but the latter to not be.

In theory, you could allow CORBA linking for some parts, and not for others...
However, as I stated above, the GPL and LGPL *allow* CORBA linking from and to
closed source programs and I think adding a restriction would make Piper
GPL-incompatible and we do not want to do that. You can allow more that stated
in the (L)GPL, but you cannot add restriction. The "allow CORBA exception" was
only to clarify the matter, but right now it is legal anyway.


Jean-Marc Valin
Universite de Sherbrooke - Genie Electrique
valj01 at gel.usherb.ca

More information about the Pipet-Devel mailing list