OpenBSD project creator Theo de Raadt detailed his concerns [1] regarding BSD-licensed code and Dual-BSD/GPL-licensed code being re-licensed under only the GPL as previously discussed here [2], "honestly, I was greatly troubled by the situation, because even people like Alan Cox were giving other Linux developers advice to ... break the law. And furthermore, there are even greater potential risks for how the various communities interact." He went on to add:
"It may seem that the licenses let one _distribute_ it under either license, but this interpretation of the license is false -- it is still illegal to break up, cut up, or modify someone else's legal document, and, it cannot be replaced by another license because it may not be removed. Hence, a dual licensed file always remains dual licensed, every time it is distributed."
Theo then talked about cases where a significant amount of code is added or changed, "if you add 'large pieces of originality' to the code which are valid for copyright protection on their own, you may choose to put a different and separate (must be non-conflicting...) license at the top of the file above the existing license." He then suggested, "if you wish for everyone to remain friends, you should give code back. That means (at some ethical or friendliness level) you probably do not want to put a GPL at the top of a BSD or ISC file, because you would be telling the people who wrote the BSD or ISC file, 'thanks for what you wrote, but this is a one-way street, you give us code, and we take it, we give you you nothing back.'"
Regarding the concern that the BSD license allows companies to steal code, Theo reflected:
"GPL fans said the great problem we would face is that companies would take our BSD code, modify it, and not give back. Nope -- the great problem we face is that people would wrap the GPL around our code, and lock us out in the same way that these supposed companies would lock us out. Just like the Linux community, we have many companies giving us code back, all the time. But once the code is GPL'd, we cannot get it back.
"Ironic."
He concluded, "I hope some people in the GPL community will give that some thought. Your license may benefit you, but you could lose friends you need. The GPL users have an opportunity to 'develop community', to keep an ethic of sharing alive. If the Linux developers wrap GPL's around things we worked very hard on, it will definitely not be viewed as community development."
From: Theo de Raadt [3] [email blocked]
Subject: That whole "Linux stealing our code" thing
Date: Fri, 31 Aug 2007 19:40:52 -0600
[bcc'd to Eben Moglen so that people don't flood him]
I stopped making public statements in the recent controversy because
Eben Moglen started working behind the scenes to 'improve' what Linux
people are doing wrong with licensing, and he asked me to give him
pause, so his team could work. Honestly, I was greatly troubled by
the situation, because even people like Alan Cox were giving other
Linux developers advice to ... break the law. And furthermore, there
are even greater potential risks for how the various communities
interact.
For the record -- I was right and the Linux developers cannot change
the licenses in any of those ways proposed in those diffs, or that
conversation (http://lkml.org/lkml/2007/8/28/157 [4]).
It is illegal to modify a license unless you are the owner/author,
because it is a legal document. If there are multiple owners/authors,
they must all agree. A person who receives the file under two
licenses can use the file in either way.... but if they distribute
the file (modified or unmodified!), they must distribute it with the
existing license intact, because the licenses we all use have
statements which say that the license may not be removed.
It may seem that the licenses let one _distribute_ it under either
license, but this interpretation of the license is false -- it is
still illegal to break up, cut up, or modify someone else's legal
document, and, it cannot be replaced by another license because it may
not be removed. Hence, a dual licensed file always remains dual
licensed, every time it is distributed.
Now I've been nice enough to give Eben and his team a few days time to
communicate inside the Linux community, to convince them that what
they have proposed/discussed is wrong at a legal level. I think that
Eben also agrees with me that there are grave concerns about how this
leads to problems at the ethical and community levels (at some level,
a ethos is needed for Linux developers to work with *BSD developers).
And there are possibilities that similar issues could loom in the
larger open source communities who are writing applications.
Eben has thus far chosen not to make a public statement, but since
time is running out on people's memory, I am making one. Also, I feel
that a lot of Linux "relicencing" meme-talkin' trolls basically have
attacked me very unfairly again, so I am not going to wait for Eben to
say something public about this.
In http://lkml.org/lkml/2007/8/29/183 [5], Alan Cox managed to summarize
what Jiri Slaby and Luis Rodriguez were trying to do by proposing a
modification of a Dual Licenced file without the consent of all the
authors. Alan asks "So whats the problem ?". Well, Alan, I must
caution you -- your post is advising people to break the law.
I will attempt to describe in simple terms, based on what I have been
taught, how one must handle such licenses:
- If you receive dual licensed code, you may not delete the license
you don't like and then distribute it. It has to stay, because you
may not edit someone's else's license -- which is a three-part legal
document (For instance: Copyright notice, BSD, followed by GPL).
- If you receive ISC or BSD licensed code, you may not delete the
license. Same principle, since the notice says so. It's the law.
Really.
- If you add "large pieces of originality" to the code which are valid
for copyright protection on their own, you may choose to put a different
and seperate (must be non-conflicting...) license at the top of the file
above the existing license.
(Warning: things become less clear as to what the combination of
licenses mean, though -- there are ethical traps, too).
- If you wish for everyone to remain friends, you should give code back.
That means (at some ethical or friendliness level) you probably do
not want to put a GPL at the top of a BSD or ISC file, because you
would be telling the people who wrote the BSD or ISC file:
"Thanks for what you wrote, but this is a one-way street, you give
us code, and we take it, we give you you nothing back. screw off."
In either case, I think a valuable lessons has been taught us here in
the BSD world -- there are many many GPL loving people who are going
to try to find any way to not give back and share (I will mention one
name: Luis Rodriguez has been a fanatic pushing us for dual licensed,
and I feel he is to blame for this particular problem). Many of those
same people have been saying for years that BSD code can be stolen,
and that is why people should GPL their code.
Well, the lesson they have really taught us is that they consider the
GPL their best tool to take from us!
GPL fans said the great problem we would face is that companies would
take our BSD code, modify it, and not give back. Nope -- the great
problem we face is that people would wrap the GPL around our code, and
lock us out in the same way that these supposed companies would lock
us out. Just like the Linux community, we have many companies giving
us code back, all the time. But once the code is GPL'd, we cannot get
it back.
Ironic.
I hope some people in the GPL community will give that some thought.
Your license may benefit you, but you could lose friends you need.
The GPL users have an opportunity to 'develop community', to keep an
ethic of sharing alive.
If the Linux developers wrap GPL's around things we worked very hard
on, it will definately not be viewed as community development.
Thank you for thinking about this.
[I ask that one person make sure that one copy of this ends up on the
linux kernel mailing list]
From: Dmitrij D. Czarkoff [email blocked]
Subject: Re: That whole "Linux stealing our code" thing
Date: Sat, 1 Sep 2007 10:21:20 +0400
On Saturday 01 September 2007 05:40:52 Theo de Raadt wrote:
> It is illegal to modify a license unless you are the owner/author,
> because it is a legal document. If there are multiple owners/authors,
> they must all agree. A person who receives the file under two
> licenses can use the file in either way.... but if they distribute
> the file (modified or unmodified!), they must distribute it with thed.
> existing license intact, because the licenses we all use have
> statements which say that the license may not be removed.
So true, the license You use can't be removed. But when You get the
dual-licensed software, when You start modifying it You arrange the licensing
deal on terms of either first or second or both licenses. You choose the
license You gain You rights from and after You accepted it, You can do
whatever You want copyright until the law and the license You accepted
prohibit. The license You didn't accept doesn't restrict You any way until
otherwise stated by the developper.
--
Dmitrij D. Czarkoff
From: Theo de Raadt [6] [email blocked]
Subject: Re: That whole "Linux stealing our code" thing
Date: Sat, 01 Sep 2007 00:42:25 -0600
> On Saturday 01 September 2007 05:40:52 Theo de Raadt wrote:
> > It is illegal to modify a license unless you are the owner/author,
> > because it is a legal document. If there are multiple owners/authors,
> > they must all agree. A person who receives the file under two
> > licenses can use the file in either way.... but if they distribute
> > the file (modified or unmodified!), they must distribute it with thed.
> > existing license intact, because the licenses we all use have
> > statements which say that the license may not be removed.
>
> So true, the license You use can't be removed. But when You get the
> dual-licensed software, when You start modifying it You arrange the licensing
> deal on terms of either first or second or both licenses. You choose the
> license You gain You rights from and after You accepted it, You can do
> whatever You want copyright until the law and the license You accepted
> prohibit. The license You didn't accept doesn't restrict You any way until
> otherwise stated by the developper.
That is utterly false.
All of the licenses we use in the open source world
(1) Do not permit removal of the license by a non-author
(2) Do not permit modification of the license by a non-author.
If a license does not permit you to do the above, then you can't do
it, and that is EXACTLY how some people (including you) are attempting
to incorrectly interpret dual licenses.
Perhaps English is your second language, because my posting was very
clear. Please read what I said again. You cannot modify a
developer's license, and then distribute the file. That is the
problem at hand.
When an author declares (or, even, does not declare) Copyright, the
get certain rights. Then they surrender some rights to their audience --
with or without conditions. If a right is not surrendered, you don't
have it.
If the license does not say you may distribute the file without the
license, you can't. If the license does not say you may modify the
license, you can't.
From: Ihar Hrachyshka [email blocked]
Subject: Re: That whole "Linux stealing our code" thing
Date: Sat, 1 Sep 2007 11:37:19 +0300
If I understood clearly, following modifications of dual-licensed code
should also be dual-licensed, wouldn't they?
From: Theo de Raadt [7] [email blocked]
Subject: Re: That whole "Linux stealing our code" thing
Date: Sat, 01 Sep 2007 08:14:18 -0600
> If I understood clearly, following modifications of dual-licensed code
> should also be dual-licensed, wouldn't they?
should, or must?
must.
Another argument has popped up elsewhere (by some poster, on
kerneltrap.org), pointing out that the GPL itself may also require
dual-licensed software to remain dual-licensed.
The implication is that a recipient read both licenses, and then CHOSE
the GPL, the GPL would then them to pass on the choice they had to
whoever they distributed it to.
Yes, you get to see me quote a paragraph from the GPL. Just this
once. Never again.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
More can be found at kerneltrap.
From: David H. Lynch Jr. [email blocked]
Subject: Re: That whole "Linux stealing our code" thing
Date: Sat, 01 Sep 2007 08:52:45 -0400
Theo de Raadt wrote:
>
> For the record -- I was right and the Linux developers cannot change
> the licenses in any of those ways proposed in those diffs, or that
> conversation (http://lkml.org/lkml/2007/8/28/157 [8]).
>
> It is illegal to modify a license unless you are the owner/author,
> because it is a legal document.
With respect to both you and Eban, I would disagree..
The law requires complying with the license not preserving it.
The license is a part of the copyrighted work.
It grants users rights beyond those of copyright law.
The ISC License requires little more than preserving the copyright
notice, not the license itself,
And even that I would think is redundant as removing a copyright
notice would likely violate copyright law.
BSD Licensed code has found its way into proprietary products, with
no availability of source - and no preservation
of license.
The claim of the Free Software people has always been that BSD is a
"License to Steal"
I am not happy that the work of BSD developers is in essence being
co-opted by Linux developers.
To me it seems lacking in integrity for the GPL crowd to do to the
BSD crowd what they have gone to great
pains to prevent anyone doing to them. It certainly violates the
golden rule.
BUT I am having a hard time convincing myself that taking BSD/ISC
Licensed code - and relicensing it while preservng the
copyright notice, violates the BSD/ISC License.
Whether it is honest or not, it still seems to conform to my
understanding of both the spirit and the letter of the license.
BSD advocates claim their license is more free because it allows you
to do most anything with BSD code.
Am I missing the part where that freedom includes removing the
license ?
How is what Linux developers seem to be doing less legal or ethical
that what many commercial developers have already done ?
If this is not one of the freedom's of BSD Licensed code, then
craft your license to prohibit it.
If I am mis-understanding the license I appologize, but my view of
this dispute is that Linux developers are unethically and immorally,
but quite legally doing to BSD Licensed code pretty much what the
BSD License allows them to.
From: Theo de Raadt [9] [email blocked]
Subject: Re: That whole "Linux stealing our code" thing
Date: Sat, 01 Sep 2007 07:46:37 -0600
> Theo de Raadt wrote:
> >
> > For the record -- I was right and the Linux developers cannot change
> > the licenses in any of those ways proposed in those diffs, or that
> > conversation (http://lkml.org/lkml/2007/8/28/157 [10]).
> >
> > It is illegal to modify a license unless you are the owner/author,
> > because it is a legal document.
>
> With respect to both you and Eban, I would disagree..
>
> The law requires complying with the license not preserving it.
> The license is a part of the copyrighted work.
> It grants users rights beyond those of copyright law.
You sure? That's a very slippery slope. Are you advising me to
re-publich gcc tomorrow under a BSD license? Or with the GPL removed
from it? It sure looks like the GPL says you can't remove the
license, as well. Heck, it goes further -- the GPL says you must
release software with the same rights you received it under. Go look.
> The ISC License requires little more than preserving the copyright
> notice, not the license itself,
Look, you are oversimplifying things by a lot. The ISC license says a
hell of a lot more than that. If we could simplify it to less than 3
lines, as you did above we would. But it is clear your 2 lines above
don't explain what the ISC license requires and grants. You have
mis-described the license.
And, you have a backwards understanding of the law. Copyright law
first gives me rights, then I even surrender some rights to the
public. First I have rights, then I surrender rights. The ISC
statement does not contain a statement which surrenders my right, as
the author, to be the only one who modifies the license.
> BSD Licensed code has found its way into proprietary products, with
> no availability of source - and no preservation
> of license.
Wrong. The commercial products, when distributed as source code, do
still contain the licenses. Just go look at how Apple did it. Or
Sun. Heck, or how many BSD licences still show up on files throughout
the FSF's code distributions. Or find me one counter example of a
vendor publishing BSD licensed source code with a license removed, and
then getting away with it. AT&T/USL did actually do this wrong when
they published manual pages without showing the University of
California copyright notice, and that did not end up well for them.
> The claim of the Free Software people has always been that BSD is a
> "License to Steal"
It isn't that simple. When you oversimplify things, they are almost
always wrong.
What next... "the license does not say you can murder babies, so you can"?
> I am not happy that the work of BSD developers is in essence being
> co-opted by Linux developers.
> To me it seems lacking in integrity for the GPL crowd to do to the
> BSD crowd what they have gone to great
> pains to prevent anyone doing to them. It certainly violates the
> golden rule.
>
> BUT I am having a hard time convincing myself that taking BSD/ISC
> Licensed code - and relicensing it while preservng the
> copyright notice, violates the BSD/ISC License.
Wow, you don't get it. Here, let me give you a very simple lessons:
(1) You author an original work. You distribute it without a Copyright notice.
VOILA. Even without declaring copyright... You AUTOMATICALLY have
copyright on it, with the full rights as the author. You have all
the rights of copyright, and noone else does. Noone else can do
anything with it. Really! Go read up on this, if you don't believe
me. If you don't believe this, you better start by learning why
it is so.
(2) You author an original work. You distribute it with one line at the top:
Copyright (c) 2006 <name of author>
VOILA. You have copyright on it, since you declared it. You have
all the rights of copyright, and noone else does. Noone else can do
anything with it. It's the same as case (1) above.
(3) You author an original work. You distribute it with with the following
text at the top:
Copyright (c) 2006 <name of author>
You may use this software.
Someone may use this software. However, just like in cases (1) and (2)
above, you did not permit distribution. Copyright law automatically
retains that right for you, until you decide otherwise to give it up.
You don't even need to MENTION the rights you retain. You retain those
rights until the moment you give them up.
(5) You author an original work. You distribute it with the following text:
Copyright (c) 2006 <name of author>
Permission to use, copy, and distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
In this case, read very carefully. I removed the word "modify" from
an ISC license. Guess what? COPYRIGHT LAW gave the author the right
to control modification, and they did not surrender it in their notice.
Therefore, someone who receives this MAY NOT MODIFY IT.
REALLY.
All added up together, what is the lesson learned? If you are not
explicitly granted a right by the author, you haven't got it.
If you are told you must leave the notice to get all the other rights,
you gotta leave it. If you are NOT told you need to leave the notice,
you still gotta leave it. And you can't change it. Really.
You seem to think that as authors we write the license text to RETAIN
PROTECTION FOR OURSELVES. No! We automatically have the protection
for ourselves, and we write these licenses text to GIVE UP some of
those rights, to benefit the public sphere.
> Whether it is honest or not, it still seems to conform to my
> understanding of both the spirit and the letter of the license.
No.
Yes, there is an issue where we are asking others to follow the spirit
of open exchange as well.
But the Copyright surrender statement we give under a BSD / ISC / MIT
license is partial, and very conditional. The notice must stay.
> BSD advocates claim their license is more free because it allows you
> to do most anything with BSD code.
> Am I missing the part where that freedom includes removing the
> license ?
* Copyright (c) CCYY YOUR NAME HERE [email blocked]
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
Looking at an ISC license, it says it right there. It says that the
author surrenders his rights ONLY IF THE NOTICE IS LEFT. Do you need
to re-read it?
> How is what Linux developers seem to be doing less legal or ethical
> that what many commercial developers have already done ?
No, what the Linux developers propose is both illegal AND unethical.
It is illegal because they are voilating the rights of the author as
enshrined in Copyright law. The author did not surrender those rights
he automatically got under the law.
But yes, it is also unethical for them to strictly impliment a
"one-way street" around our freely given code.
Companies which distribute copies of our code DO leave the notices intact.
And companies follow the spirit of giving back all the time. Sometimes they
don't, because they wish to be proprietary, because it benefits them.
And that's what these Linux people are doing, right? Proprietary Linux,
GPL enforced. Is that the spirit of the GPL or the ISC license?
> If this is not one of the freedom's of BSD Licensed code, then
> craft your license to prohibit it.
We have crafted our license in that way, very carefully. The law says
people can't modify the licenses, and the law and our notice says that
they can't be deleted. It's not public domain.
> If I am mis-understanding the license I appologize, but my view of
> this dispute is that Linux developers are unethically and immorally,
> but quite legally doing to BSD Licensed code pretty much what the
> BSD License allows them to.
You sure have misunderstood the license.
Part of this is because people call them "licences", without
understanding that there are diffferent kinds of licenses with
different rules. A licenses under Copyright law starts off with a
presumption of rights for the author even before the word "Copyright".
According to the Berne Convention, and the applicable laws implimented
in the signing nations to that accord, Copyright gives the author
unrevokeable rights -- right from the start -- and then the author can
choose to surrender some of his rights in a statement. Contract
licenses has similar concepts such as "you can't pay someone else to
break the law", and such.
From: Theo de Raadt [11] [email blocked]
Subject: More on the Atheros driver situation
Date: Sat, 01 Sep 2007 10:37:23 -0600
Well, it looks like the Linux wireless people have decided that their
relatively small modifications to the Atheros driver will be GPL'd,
and not given back to improve the driver in the *BSD world.
http://marc.info/?l=linux-wireless&m=118857712529898&w=2 [12]
All the email addresses you need to mail to express your distaste
at this are right in that mail, except for one, which is
Eben Moglen <moglen@softwarefreedom.org>.
I've done what I can for now; Good luck to the rest of you.
Related Links:
- Archive of above thread [13]
- KernelTrap interview with Theo de Raadt [14]