Theo de Raadt Responds to Linux Licensing Issues
bsdphx writes "While Theo may have a reputation of being "difficult" in some circles, this response to the recent relicensing controversy is thoughtful and well penned. Through this whole process I've learned some new things about both GPL and BSD licensing, and especially about combining the two."
Try, "publicly, he's an asshole and routinely uses ad hominem."
From discussion of the very issue, Slightly more annoyed, Pièce de résistance, FLAME ON!
Pretty funny to then read, further down in the thread:
Theo didn't make the initial post about the BSD violation. Theo could have chosen to respond quite publicly, but instead he chose to respond on the OpenBSD mailing list. He did not go nuclear. He is not openly attacking anyone. He isn't even making a big fuss out of this, users on both sides are. Neither did he claim the Linux developers of being thieves.
Alluding that Linux kernel developers "must have failed gradeschool because you can't read" (paraphrasing only slightly) on a public website isn't "publicly attacking someone"?
The man doesn't know when to keep his mouth shut or how to be civil. It looks like (thankfully) people in the OpenBSD project are telling him to shut the fuck up and let them handle things:
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.
Please help metamoderate.
BSD allows you to use the code in your own project, your own project can be then redistributed with BSD code in it, however the BSD license cannot be removed from the BSD code. BSD code can be modified but the BSD license cannot be removed from the modified file either. It is not possible to add a new license to a BSD licensed file without permission of the original copyright holders.
However you can take BSD code, add it to your own project and distribute just the binaries of your project without giving any source code to anyone and it is not illegal under BSD. But BSD is a license and it cannot be legally removed from a licensed file.
You can't handle the truth.
The problem is that a file with the BSD license removed cannot be shared back with the BSD project, from whence it came in the discussion before us. Removing the BSD license makes the code less free, it binds it in the shackles of the GPL, so the code can flow only one way, out of BSD to GNU/Linux. All Theo is saying is give peace a chance.
If you mod me down, I shall become more powerful than you could possibly imagine.
The dual licensing says you may alternatively follow the GPL license. It does not say you must follow both licenses simultaneously. Once you are alternatively following the GPL, you need not leave the BSD part in there. Because the GPL license does not require it, the BSD section can be removed. It is very free that way. The original work, of course, remains available under both licenses. Remember, both licenses were an intrinsic part of the original work. But the original work allowed choosing one license (or the other) for subsequent changes. Choosing the GPL license allows removing the BSD license in subsequent works.
Remember that the dual license explicitly says the licenses do not both have to be followed. Only one does. It is trivial to become unbound from the BSD license in this scheme by following the GPL. Of course, if you follow the BSD license instead you can hide the source.
http://marc.info/?l=openssh-unix-dev&m=1143162246
You can't get much direct than that. I suggest you visit the link and read the rest of his mail.
-- Using the preview button since 2005
The point is, the code from inception was organized by the developer as 'either GPL or BSD'. Anyone contributing code to that should recognize that. If someone choses to follow GPL, devs shouldn't get offended, they knew what they were getting into. If you don't want to play by the rules of a segment of a project, go away. Claiming that people cannot strip the BSD license on a redistribution is like saying because one of the licenses is GPL, you must always ship the source code. It's ok to dual-license something, but you have to recognize that each license explicitly grants rights that the other may preclude (i.e. BSD explicitly grants the right to rip code and use as you see fit, without source, which the GPL explicitly forbids). If a project choses to use the code under one license or the other, you simply shouldn't take offense. If you didn't want the code to be distributed under GPL, you shouldn't say it's ok in the first place. If it is more of a 'you must follow the rules of both', it kinda blows up and can't be used in either world. BSD as a whole is setup such that a third party should be able to use it with impunity, and code which may have the GPL apply precludes that. The same people bitching about BSD license being stripped would be happy to see the code redistributed as a binary.
XML is like violence. If it doesn't solve the problem, use more.
Lets take a look at the current BSD license:
In english what this says:
If you strip the license out of the source it no longer grants you permission to distribute.
So where does that leave us?
There is NOTHING illegal about stripping out the BSD license!
It just voids the license.
Liberty.
Wow, I can't believe I'm reading this. This is the equivalent of taking a GPL file, adding another license, then taking away the GPL because "the second license allows it". Of course if anybody did this, there would be 1000 posts in this thread instead of 100.
Okay, lets be clear:
1) Someone wrote some code for OpenBSD, and licensed it with the BSD license.
2) The code is now allowable to be in OpenBSD, Linux, Windows, Solaris, cruise missiles.
3) Now, someone *could* insert their code and license it with anything, including GPL. Note however, the original code is still BSD, just the new GPL code is under GPL, hence dual licensed.
Then it goes to hell.
4) Someone then goes in and deletes the BSD license out of the source file. Now, linking with Linux is still allowed but linking with OpenBSD is shaky, Windows and cruise missiles is not allowed at all.
Here's the thing: DON'T DELETE SOMEONE'S LICENSE!!! Personally, if I was the writer of the file, I'd be much more pissed and would relicense it as commercial. But I'm just evil.
Oz
He didn't have the authority to remove the other license without the permission of all the other parties.
Yes, he did. The GPL gave him that permission.
The license is do as you like, but the one thing that one must not do is remove the license.
No, he didn't use that license, so he's not bound by its terms. He used the other license, the GPL. That license doesn't require him to preserve the BSD license, it requires him to preserve the GPL license. While it's usual to preserve both in cases like this, it's not a license requirement.
The reason for the strong emotion on this one is that by removing the BSD license from the code, the person is in effect claiming to have written all of the code which it licenses.
Rubbish. That's what removing the copyright notice did. The copyright notice and the BSD license are two very distinct things, you seem to be mixing them up.
I would suggest that a removal of one license is a move to relicense it.
Then you would simply suggest wrong. He accepted the terms of a license that was provided by the copyright holders. The fact that there was an alternative license he could have chosen is irrelevant, he was under no obligation to accept that license. The fact that he removed that superfluous license is irrelevant, he was under no obligation to preserve it, according to the other license he was provided with by the copyright holders.
Dual license is a bit of a misnomer, as the license includes both
Where are you getting this nonsense? This is pure fantasy. There is no singular conglomerate license of BSD+GPL that requires you to preserve the choice for people you distribute to. There are two alternative licenses offered. He picked one. He is not subject to the other, nor to this fantasy conglomerate license you seem to have invented.
Alan is either an ignoramus or lazy? If he took the time to look at each of the files patched he would have noticed that some parts of that driver are not dual licensed or GPL, in particular the ones I mentioned specifically.
Explanation enough for you?
Everybody crying "dual license" "dual license" is like a five year old child who's mother told him to sit on the sofa or play video games, but not eat cookies. When his mother catches him sitting on the sofa eating cookies he says "but you told me to sit on the sofa."
People need to grow up and recognize that Jiri did something illegal here and stop arguing half the situation because some of the files he modified were dual licensed.
What dual licenses say is how you can distribute and use the code. It doesn't say how the people receive the code can use and distribute it. They still have a choice. You can choose to impose on yourself the requirements of the GPL or you can impose on yourself the requirements of the BSD-style license. But the code itself has a license that says a particular person can distribute it under A or B. Every person who gets that code has that choice.
Consider qt from Trolltech. You distribute it with your app under an open source license. Someone who receives it from you can choose to distribute qt with the open source license or they can buy a commercial license from Trolltech and distribute it closed source. You can't stop them from doing that by changing the license to the terms you chose. You don't own the code so you don't have the right to make that kind of change.
Just because the BSD style licenses are less restrictive and considered "compatible" with the GPL doesn't mean that you can pretend they don't exist and remove them from code you didn't write even when dual licensed. It's an option for everybody not just you.
Now there's the question of your changes to the code. Those changes are yours and may or may not qualify for protection under copyright. If they don't qualify, for example all you did was add a '+ 1' to an expression involving ten terms, then your changes aren't protectable and you have absolutely zero say in how the aggregate work is licensed. If your changes are more substantial then you will be able to say "lines 1013 through 1165 of this file are distributed under the terms of the GPL. The rest of the file is available under the GPL or license B." But you can't take away the B option. It'd be interesting to know how much of the changes Jiri made to the driver are Linux glue and how much are actual improvements or additions. If it's just Linux glue then he probably has no real claim to controlling the licensing at all.
i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
Once you have the dual-licensed code, you can do with it what you want, so long as you respect ONE of the TWO licenses. However any derivative of this work must also have BOTH licenses included. The linux people are way off on this. Dual licensing does not mean pick one license and go with it, it means proceed with both licenses, obey one. The onus is on you to prove that you have the right to remove one of those licenses without proper permission. Why even have dual licensing if this is the case?
Secondly, the concept of community and sharing. Since both gpl and bsd have similar ideals (open the source), a certain amount of camaraderie and back scratching is nice. Each camp has similar goals. What pisses off the openbsd people in this case is that the gpl people acted in bad faith and removed a license illegally. Theo is 100% right about this.
If you want your work to be GPL only, separate it out and place under GPL only, and leave the dual licensed code alone, which would be legal. But as Theo says, this will reflect badly on the spirit of cooperation between the two license camps, and probably mean less inclination to support dual licenses in the future.