binary modules Modules and linking
Posted Oct 2, 2003 21:25 UTC (Thu) by
dwmw2 (subscriber, #2063)
In reply to:
binary modules Modules and linking by jeff@uclinux.org
Parent article:
LinkSys and the GPL - again
1. you didn't answer the question. Do you think the whole of the firmware is a GPL violation?
All such questions are meaningless and academic. There's no right answer until it's actually determined in a court of law. But since I'm volunteering an opinion on a similar question which I do intend to make real, I suppose it's only fair that I try to answer this one...
I'm fairly sure that any court would find that the Linksys firmware as a whole is 'a work based on the Program'. During normal operation, it runs entirely in kernel mode, forwarding packets between its two (or more) network interfaces. The code which performs those operations cannot reasonably be considered as anything other than a coherent whole.
The question of whether the ancillary userspace programs which allow occasional configuration should also be considered part of that whole is less clear. When taken in conjunction with the clear intent of the exception for userspace programs, I suspect a court would be likely to rule in the negative. I couldn't be entirely sure of that though.
2. ... If you disagree with this interp of "derived work" that's certainly ok, but it's not a case of my not using terms not relevant to the GPL
OK; then I shall interpret "mkcramfs is not a linker" as a statement that joining files onto a file system image does not make them derived works of each other, and I shall agree with you on that point.
3. ... Again I ask does this mean you think embedded linux
must always use only Free Software, and specifically that this whole image
is a GPL violation?
I've offered my speculation on this above. I suspect a court would rule that it is not, as long as the kernel modules are available under the terms of the GPL.
4. The exception does exist, because people have relied on it with the full knowledge of the community. I have said that it's[sic] status is grey.
You seem to be confused here with either trademark law, where you lose what you don't protect, or with estoppel. Neither are relevant in this case. Linus may personally be restrained by equitable estoppel if he were to attempt to sue for GPL violation with respect to a binary-only module. I certainly am not.
His statement that it might be OK holds no more weight than mine that it is not. They are both merely opinions, and neither is right or wrong until a court decides on the matter. His statement is no more an 'exception' than mine is, merely an interpretation. This is because neither are unanimously agreed by all the copyright holders, and hence noither can actually change anything.
What I suspect will carry more weight, ironically, is the exception which he actually did make for userspace. Since it was clearly opined that userspace needed such an exception in order to be considered other than a derived work, it cannot possibly by held that loadable modules, which are far more incestuously intertwined with the kernel itself, do not need such an exception to be made unanimously by all copyright holders. Such an exception does not exist and cannot now be made without unanimous consent.
5. ... That is a reason the definition of "derived" has to be sharper, and why I offer "linking".
That seems to be clearly incompatible with the definition which was intended by the original licence, since it was deemed necessary to explicitly make an exception for userspace; an exception which would not have been necessary if this were the intended meaning.
6. ... Does this mean you think that all things linked with libc5 and uC-libc are derived works of the kernel? Clearly not?
Due to the provisions of the exception which was made for userspace, I believe that they are not.
I for one don't want to see a whole class of
device not use Linux because vendors will not let the drivers be free or
because a government agency will not... as long as we keep building the
foundation.
Then your goals differ violently from mine and those of many people with whom I've discussed the issue. I do want to see people refrain from using and benefiting from my code, if they are unable or unwilling to conform to its licence and release their derivative work as Free Software.
If I wanted people to feel free to take my code and use it in non-Free Software, then I could have released it under the BSD licence, or 'GPL but not if you really really don't feel like it', rather than the GPL.
I don't. I didn't.
(
Log in to post comments)