This weekend's witch-hunt

Rob Landley rob at landley.net
Wed Sep 20 16:56:39 UTC 2006


On Wednesday 20 September 2006 2:17 am, Bruce Perens wrote:
> Their declaration of the applicable license has all of the 
> legal weight of the license text itself,

The GPL has an anti-severability clause.  Their license declaration does not.  
(And if it did, you couldn't drop support for GPLv2 at some point in future, 
plus it would raise interesting questions of having to satisfy the conditions 
of _both_ licenses, when GPLv2 and GPLv3 aren't compatible.)

The copy that went through  _me_ had other redundant permission grants 
stripped off of it.  There are clean sources elsewhere (in the same 
directory, even) that have additional license grants, but that's not my 
problem.

And I did ask lawyers.  Would you like to go talk to the SFLC directly?  
Their email address is on their website.  I'm running out of patience to try 
to educate you with.

> > Linus announced six 
> > years ago (the Linux 2.4.0-pre8 announcement I linked to in a previous 
> > message was from 2000) that they were not the same, that his code was (and 
> > always had been) GPLv2 only.  Where does that leave our Torvalds-written 
> > applets?
> We write down this stuff BECAUSE people can change their minds or even
> just their interpretations. The "and any later version" is there in
> writing,

No, it is not.  You keep mouthing off about things you didn't check.  From 
BusyBox 0.25:

/*
 * mkswap.c - set up a linux swap device
 *
 * (C) 1991 Linus Torvalds. This file may be redistributed as per
 * the Linux copyright.
 */

Now let's take another of Linus's files: util-linux/mkfs_minix.c from current:

39   andersen /*
39   andersen  * mkfs.c - make a linux (minix) file-system.
39   andersen  *
39   andersen  * (C) 1991 Linus Torvalds. This file may be redistributed as 
per
39   andersen  * the Linux copyright.
39   andersen  */

And svn 39 was a looooong time ago.

Now if Linus _had_ said it could be used under GPL without citing any specific 
version --AS ALL YOUR CODE DID-- then according to clause 9 of GPLv2 we 
could have chosen _ANY_ version of GPL, including GPLv1.  So when Erik 
tightened the license to GPLv2 or later, all he was doing was dropping GPLv1.  
By your arguments, he's wasn't allowed to do that in the first place, all 
those years ago.  Your arguments do not match the current facts.

You're not arguing any coherent legal theory, you're merely repeating what you 
_want_ over and over.

I objected to your lack of any coherent legal theory earlier, when I pointed 
out that your position is not internally consistent.  You brushed it off, but 
the fact remains that you haven't even got logic on your side.  Just a 
burning need to be right.

> This could be dealt with through a public notice process.

It could be dealt with by throwing stuffed animals at it.  You're still 
arguing what you want, not a legal position.

> Publish the 
> code and license with a call for objection by copyright holders. The
> only gotcha is that SCO and its ilk could choose to make a false claim.

No, the gotcha is that it doesn't prove anything.  If a copyright holder in 
another country doesn't hear about the call, their copyright is not 
invalidated, and we haven't got the right to grant new licenses on their 
code.  By your logic my old "calculate internal rate of return" code (which I 
haven't touched since the late 90's but I vaguely remember sending to the 
gnucash project once upon a time) could be ripped out of GPL and put into BSD 
(and from there a proprietary product) simply because I didn't hear about the 
relicensing until afterwards and didn't object at the time (well I don't 
follow gnucash anymore).  This would _not_ stop me from filing a lawsuit.

Remember the guy who suddenly started enforcing his copyrights on "happy 
birthday" in the 1980's?  After _decades_ of not enforcing it?  Copyright 
doesn't have to be defended ot remain valid, you're confusing it with 
trademark law.  (Linux 0.12 was young enough with a small enough number of 
contributors that Linus _could_ contact them 
all.  BusyBox is not.)

You are a positive _fountain_ of bad legal advice.

> > I realize that you don't have this drive.
> Some races can be won by taking a different route, rather than by being
> faster or stronger.

Then do so.  I repeat for the...  5th time?  Fork the darn project if you care 
this much.  But GO AWAY.

> I think a much more distributed effort is possible.  
> I do not intend to work on this every evening, nor do I intend for
> anyone else to have to do that. As VP of Sourcelabs I may be able to
> make some new partnerships with companies that embed Busybox. Some of
> them are already our customers. Not all of them are putting in what they
> could.

Sounds like you're in an _excellent_ position to maintain a GPLv3 fork of the 
project then.  But I'm not doing it anymore.

> > The last sentence is relevant here.  I may choose the version.
> Yes, for the overall work. But you seem to believe that you have the
> right to remove someone else's right to choose a different GPL version
> to use with a particular fragment of code, where the copyright holder
> has made the right to use that version available.

If I merge a GPLv2 only patch in with a file, that file is GPLv2 only.  We 
touch every file in the tree an average of about twice a year with global 
function renames and such.

I remember back in 1996, I wanted to improve the CRC algorithm in something I 
was doing for IBM.  Their CRC table calculation was a page full of code, and I 
knew a way to calculate the table in two lines, which I'd come up with by 
simplifying the info-zip code when I was porting it to Java (shortly before 
Java 1.1 came out with the deflate algorithm in the library, rendering the 
whole thing moot to the point where I never finished it).  IBM's lawyers 
objected to using the algorithm from that source, and urged me to try to find 
it in a book somewhere instead.  (Yes, they were objecting over _two_lines_.  
This is where I learned some of this caution.)  I wound up leaving the code 
alone instead.

I have coworkers who do clearances for the Gutenberg project, and one of the 
tricks they use is to find old serial magazine versions of stories that 
predate the book, and prove that the book may have had its copyright renewed 
(under the old pre-berne convention laws requiring renewal) but the magazine 
version didn't.  And then they OCR the magazine version.  It's 99.9% the same 
material, but it's from a different source.  (P.S.  They point out that the 
filing on Happy Birthday was 1936, but wasn't the first publication, and if 
they could find the book with the earlier copy they could show that it wasn't 
renewed, which is separate from being defended and no longer a requirement on 
copyrights after 1989 when the enabling legislation for the US being a 
signatory to the Berne convention took effect.)

The original author of the file can decide to grant permission to use their 
code under CDDL, or OSL, or who knows what.  They can do this retroactively, 
after I get the copy that just says "GPLv2 or later".  I don't have to _add_ 
a permission grant to my copy for  the other licenses.  I may not even 
_know_.  I'm only required to document the set of licenses I actually use to 
distribute the thing, to prove that I had the right to distribute it.  Having 
multiple licenses gives you multiple options, but you only need one.  And the 
license I'm using is GPLv2.  Deal with it.

> > I'm treating everybody equally.  You're mad I'm not treating you 
> > specially.
>
> Sorry, but I have to reject this. What I have asked for everyone should
> have.

Your god complex is not my problem.  You certainly don't speak for _me_, and 
I'm sure I could find a few others if I bothered.  But one more try.

The 1.2.1 version still exists.  Any source code in the next -devel release 
that can still be used under GPLv3 must exist, in its entirety, in 1.2.1.  So 
they do have this.

What you're asking for is the same thing packaged in a different way, and a 
stupid way at that.  Anyone trying to cherry-pick code under one license out 
of a project under another license is on pretty shaky legal ground to start 
out with and had better be able to show their work.  We _do_ edit this code, 
regularly, right in the middle of it where you won't notice it without doing 
svn annotate, and after svn 16112 those changes are NOT available under 
GPLv3.  Any laywer will tell you that if there's a clean source you can go to 
that _won't_ raise these kind of questions, you should use that clean source 
if at all possible.  What you're asking for would only _encourage_ license 
violations.

I realize how desparately you want to undermine the GPLv2 only state of the 
next release of BusyBox.  I realize that you want GPLv3 to become the only 
licensed anyone uses.  But neither is going to happen.  This discussion 
serves no further purpose.

If you have any other questions, please ask them of the Software Freedom Law 
Center.  If you send them to me, I'll forward them to the SFLC so they can 
answer them.

Rob
-- 
Never bet against the cheap plastic solution.



More information about the busybox mailing list