Considering porting acpi

Rob Landley rob at landley.net
Sun Oct 12 18:30:23 UTC 2014


On 10/12/14 10:24, Rich Felker wrote:
> On Sun, Oct 12, 2014 at 03:08:03AM -0500, Rob Landley wrote:
>> Heh. The ping.c one is particularly strange because clause 2,
>> "Redistributions in binary form must reproduce the above notice" but
>> busybox does not include the word "Regents" in any text string, so how
>> it would emit it at runtime I couldn't tell you. That said it's been
>> there like that for _years_ and nobody has ever cared except me.
> 
> The subject of the verb "produce" there is not "the program, when
> executed" but "[the] redistribution". This just means you have to have
> a text file or paper distributed with the binary containing the
> notice. It does not mean that the program itself needs to embed the
> notice and be able to display it on an output device; however, doing
> so is an easy way to ensure that it stays attached unless somebody
> intentionally removes it.

"Must reproduce in the documentation" but ping --help doesn't mention
it, busybox.net/BusyBox.html doesn't mention it...

Assuming your interpretation is correct, does that mean the
busybox.net/downloads/binaries directory I put up ages ago is in
violation? (I think defconfig contains ping, but haven't checked in
ages.) Or is it ok because the notice exists elsewhere in the downloads
directory? (In which case if something like buildroot downloaded the
binaries via automated wget deep in the bowels of the makefiles, would
_that_ be in violation? And yes, automated wget of binaries is a thing
these sort of projects do, ala
http://git.buildroot.net/buildroot/commit/?id=ae2364676f6a0d5390142791b7cb4200dc55ad9e).
How about router firmware that contains busybox but not a copy of the
BSD boilerplate? (Presumably most of them do it anyway but do they know
they need to do it if busybox has ping enabled?)

And I'd still like an explanation of how this requirement is compatible
with GPLv2, but as I said I no longer feel qualified to travese this
minefield. My Ohio LinuxFest talk included a section about how asking
kernel developers to do userspace programming is how you get the lovely
git command line, asking non-cryptographers to do cryptography is how
you get side-channel attacks (at _best_), and asking cryptographers to
do C programming is how you get heartbleed. This kind of subdomain
expertise is why intellectual property lawyers point and laugh if
criminal defense attourneys express opinions about IP. Now stop and
realize neither of us are _any_ kind of lawyer. Confident in your
understanding of these issues now? I'm not in mine...

I was happy with the GPL when it was the universal receiver license, the
only one I had to care about, and I could study it for years and parrot
what experts told me and reduce all license interaction questions to a
binary "is this GPLv2 compatible or not".  But there's no such thing as
"The GPL" anymore. Linux and Samba provide GPL implementations of two
ends of the same protocol but can't share code. QEMU is stuck between
wanting GPLv2 only Linux driver code and GPLv3 or later gdb/binutils
processor definitions and there _is_ no license that lets you combine
both in the same program. A project that's "GPLv2 or later" can't accept
code from _either_ source. And that's before you get to the v3 clause
selection and Affero and so on. Not quite the universal receiver it once
was, eh?

I responded because somebody asked: zero clause BSD is a public domain
permission statement, which means it's presumably equivalent to
unlicense.org and Creative Commons Zero and "LibTomCrypt is public
domain" down in the Dropbear sources. It's a universal donor, so public
domain _is_ compatible with both GPLv2 and 4 clause BSD. To what extent
those two are compatible with each other I leave to others to answer...

> Rich

Rob


More information about the busybox mailing list