Subject: Re: multiple licences
To: Thomas Michael Wanka <tm_wanka@earthling.net>
From: Miles Nordin <carton@Ivy.NET>
List: netbsd-advocacy
Date: 02/21/2000 00:54:27
On Mon, 21 Feb 2000, Thomas Michael Wanka wrote:

> if a given piece of code is published under the BSD licence the
> publisher should still have the right to publish the same piece of
> code under e.g. the GPL and vice versa

I'm not exactly experienced but my understanding is as follows.

 o It is possible to offer code under multiple licenses and tell the user
   ``take your pick'' among the offered licenses.

 o Sometimes, if a piece of code's original license is permissive enough,
   one can change a program slightly and redistribute it under a new
   license, provided that the new license does not violate the original.
   For example, when IBM or NetApp modify the BSD code, they redistribute
   it under a traditional corporate license, which is more restrictive
   than the BSD license but does not violate it. One could also
   distribute a hacked BSD under a license that demands source code be
   available to all descendent revisions.  but not the GPL, because the
   GPL makes demands that violate provisions in the BSD license (ex.,
   advertising clause)

 o Each piece of code has not only a license, but an owner to which the
   license is assigned.  Only the owner or assignee can change the license
   on a piece of code to something that conflicts with the originial
   license.  For example, the BSD license on the 4.4BSD-Lite2 tapes is
   assigned to The Regents of UC, so UC was able to _change_ the license
   and _remove_ the advertising clause on these tapes.  Likewise, to
   contribute to gcc you must assign your license to the FSF, so the FSF
   can change the license on your contribution to something notGPL later
   on if they want to.  If you are the asignee of your BSD license, you
   can later change the license to GPL or offer users their choice.  If
   you assign your license to the Regents or to TNF (``code contributed to
   TNF by T.M. Wanka''), then you cannot make this change, but TNF or 
   the Regents can make the change for you, which is better in some
   circumstances.  For example, NetBSD's BSD licenses are assigned to a
   sundry cast of hundreds--individuals, UCB, TNF...  This makes the
   amorphous license on NetBSD as a whole harder to change.  That's why
   the gcc folk insist on a license assignment.

 o When the license on a given revision of code fragment that's already
   been distributed, changes, then as a user you can still have the old
   license as an option.  Because of this, licenses on already-distributed
   code generally change only in the more-permissive direction, because
   any other change would be meaningless.  If a license is made more
   restrictive, it usually only includes future revisions. This fact is
   intuitive but important--it's why, for example, OpenSSH exists.  A
   change in licensing terms forked the project at an old revision that
   still offered the ``free-er'' license.  The GPL is designed so a more
   restrictive license on a future revision would conflict with the GPL,
   so only the asignee can make the license on future versions more
   restrictive.  With the BSD license, anyone (IBM, NetApp) can make the
   license on future versions more restrictive.

-- 
Miles Nordin / v:+1 720 841-8308 fax:+1 530 579-8680
555 Bryant Street PMB 182 / Palo Alto, CA 94301-1700 / US