[MUD-Dev] code base inquiry

Travis Casey efindel at io.com
Wed Nov 17 18:01:30 New Zealand Daylight Time 1999

On Wednesday, November 17, 1999, Andru Luvisi wrote:
> On Wed, 17 Nov 1999, Travis S. Casey wrote:
>> On Mon, 15 Nov 1999, Robert Green wrote:

>> > One particularly excellent reason is that, in my case, the original code
>> > base (nightmare 3.x basis) was later withdrawn from circulation and
>> > declared as unavailable to anybody for any future projects. As a result,
>> > I am probably one of only 2 or 3 muds still using this codebase, and if
>> > something happens to my server, I would be in 'violation' of the current
>> > license if I start over from scratch -- a GPL mud could not be
>> > "un-released" in this manner.
>> Actually, it could.  Someone who chooses to distribute original software
>> under the GPL can still change his/her license terms at any time, just as
>> Descartes did with Nightmare.

> Not exactly *just* like Descartes did.

> Let's say you give me a code base under the GPL.  I now have the right to
> redistribute it to anyone I like.

> Let's say you stop distributing the code under the GPL, and now only
> distribute it under some new license.

> The code that *I* have, I can still redistribute as I like under the GPL.
> I can't necessarily redistribute any *new* ((code you release under the
> new license)) under the GPL.  The *original* release, however, will always
> be out there as long as there is anybody continuing to redistribute it.

Not quite, presuming that what Descartes did was legal.  Descartes not
only stopped distributing Nightmare -- he also said that no one who
already had a copy could create a mud with it.  If it were simply a
question of Descartes' stopping distributing it, anyone who had the
code could still use it.  You'll note the original poster complained
that he cannot legally restart his mud from scratch on a new server --
if the situation were as you describe it, he could, since that would
not involve distributing the code.

Now, let's say that I write a codebase and distribute it under the
GPL.  You then modify my codebase and start distributing your modified
version.  I then decide to stop using the GPL and make my codebase
commercial.  I still own copyright on the code you're using -- and
hence, can legally revoke your right to distribute it.  Now, you
*might* be able to still distribute the code you wrote, but you
can't distribute any part of the codebase that you didn't modify.  And
even if you modified all of it, it might still count as a derivative
work, in which case you wouldn't be able to distribute it without my

This sort of thing is why people "buying" copyrighted material (like
freelance articles) usually insert phrases like "these rights are
granted in perpetuity" into their contracts -- they don't want the
original creator to decide he can get a better deal from someone else
one day and revoke their right to use the material.

I do have to wonder why Gnu doesn't simply insert language saying that
users of the code are granted the rights they're granted in
perpetuity.  The only reason I can think of is that they might be
afraid that fewer people would distribute their code under the GPL
if they did that.

Now, I must say that I'm not a lawyer, and that ultimately, the only
way to find out whether someone really could change the license on a
distributed codebase this way is through a lawsuit.  From what I
understand, though, there's nothing in the law or the GPL that
prevents this.  If someone does know of something, please correct me!

> What happened with Nightmare was different.  Descartes never gave anyone
> the right to redistribute Nightmare.  He was *always* the only one (asside
> from a few select mirror sites) who could distribute it.  When he yanked
> it, those of us who had copies couldn't legally distribute those copies.

>> If someone incorporates GPLed code that they did not create into their
>> codebase, then they would not be able to change the license -- but someone
>> who writes a codebase from scratch and releases it under the GPL can
>> un-GPL it at any time.

> The GPL's never been tested in court, but one of the goals in writing the
> GPL was to create a license that could not be revoked unless the person
> using the code under the license violated it.  This was part of the
> purpose: to encourage people to contribute not only with the knowledge
> that their contribution would *always* remain free, but also with the
> knowledge that the code they based their contribution on would *also*
> always remain free.

Hmm... again, I'm no lawyer, but it doesn't look to me as if the
present GPL does that.  It *does* insure that no one but original code
creators can revoke the license, but I don't see where it prevents the
original code creators from doing so.  (Of course, in the present
environment, most, or at least many, people releasing code under the GPL
are borrowing some code that ultimately comes from Gnu itself.  Thus,
this isn't much of an issue at the moment.)

>> Whether such retroactive license changes are legal is another question
>> -- but that question is independent of the use of the GPL.

> Actually, it is tightly intertwined with the philosophy behind the GPL.
> You may notice that even if you violate the GPL, anyone who you've
> redistributed the software to *doesn't* lose *their* rights.  This was
> deliberately put in to try and make retroactive retractions impossible.

The philosophy of the GPL doesn't have any bearing on whether changing
the license on code that people are already using is legal.  Neither
does the language about violations of the license -- the copyright
owner has the right to define the license for anything he distributes,
and therefore cannot be in violation of it -- he can always make an
exception for himself.  (He *can* be in violation of a contract or
implied contract he has made with others -- for instance, if the license
stated that he granted rights in perpetuity, he could not legally
revoke them, since that would constitute a contract (or at least an
implied contract).)

       |\      _,,,---,,_        Travis S. Casey  <efindel at io.com>
 ZZzz  /,`.-'`'    -.  ;-;;,_   No one agrees with me.  Not even me.
      |,4-  ) )-,_..;\ (  `'-'
     '---''(_/--'  `-'\_)

MUD-Dev maillist  -  MUD-Dev at kanga.nu

More information about the MUD-Dev mailing list