Subject: Re: [Approval Request] BSD-Lite license
From: John Cowan <cowan@mercury.ccil.org>
Date: Tue, 27 Nov 2001 06:40:51 -0500 (EST)

Paul Guyot scripsit:

> My argument is that if I give you a program with, in the 
> documentation, the GPL and the BSD, you have to respect both, not 
> just the GPL (or just the BSD) because the BSD only covers a part of 
> the program (if it's a binary, I can't see how you could say "from 
> offset 0x1234 to offset 0x5678, redistribution is subject to the 
> following conditions" because the binary is a whole and every 
> contributor owns a copyright on it).

Umm, not exactly.  Let's factor out the GPL for a moment and just
look at a proprietary program some of whose modules are BSD.  This
is perfectly all right with the BSD license, since as I said it is not
a copyleft.

Suppose that A creates an original work a, and then B (who holds
a proper license from A to do so, namely the BSD), creates a derivative
work b.  Then B is the copyright owner of b, and may license it however
she pleases, provided she has no contrary obligations imposed by A as
a condition of his license.

It is B's license, and only B's license, that controls what
can be done with b in a copyright sense.  A's license may require
B to provide a copy of itself along with b, but that does not
make A's license effective over b, because A is not the copyright owner of b.

Consider in particular the command-line FTP client provided with
Windows.  This is a proprietary binary program, and it is covered
exclusively by the Windows EULA.  The fact that part of its
source code is covered by the BSD license is neither here nor there;
downstream licensees are strictly forbidden to pick out
the compiled code that corresponds to the BSD source, since
the EULA forbids decompilation.

Now in the case where B does provide the source code to downstream
parties, as would be required if there are GPLed components in b,
then C (a third party), who wishes to make derivative works, must
apply A's license when deriving from the parts of the source
written by A, since that *is* just the work a.  But this does
not mean that b as a whole is subject to A's license, though
there may be restrictions placed on the reuse of it by A's
license by reason of A's license restricting derivative works
in some way.  This distinction is critical.

> And actually, if the BSD license is only effective over the parts 
> originally BSD-licensed, I really can't understand why the GPL is 
> incompatible with the original BSD or the Apache license.

Because the old-BSD license says "Derivative works must do thus-and-so",
and the GPL says "Derivative works must not have restrictions imposed
on them other than those permitted and required by the GPL".  These
requirements are inconsistent.  (Of course, if all the GPLed modules are
written by B, she may write an exception to the GPL waiving this requirement
insofar as it conflicts with the old BSD.)

IANAL, TINLA.

-- 
John Cowan           http://www.ccil.org/~cowan              cowan@ccil.org
Please leave your values        |       Check your assumptions.  In fact,
   at the front desk.           |          check your assumptions at the door.
     --sign in Paris hotel      |            --Miles Vorkosigan
--
license-discuss archive is at http://crynwr.com/cgi-bin/ezmlm-cgi?3