mailinglists@xxxxxxxxxxxx wrote:
On Tue, 2006-01-17 at 20:57 -0700, David G. Miller (aka DaveAtFraud)
wrote:
jdow@xxxxxxxxxxxxx wrote:
> From: "Jeff Vian" <jvian10@xxxxxxxxxxx>
>
>> On Tue, 2006-01-17 at 21:40 +0000, Andy Green wrote:
>>
Up until recently I worked for a company that developed and marketed a
closed source, Linux based, network monitoring product
(http://www.vericept.com). The company lawyers saw no problem with us
building and selling a closed source product that included calls to a
variety of GPLed and LGPLed libraries. As has been extensively
discussed over at Groklaw (http://www.groklaw.net) and elsewhere on the
'net, headers and interfaces are *not* protectable elements under
copyright law. The only way the GPL kicks (via copyright law) in is if
you actually modify executable GPLed code for your product. At worst,
you would then need to make only these changes to the GPLed code
available as source (there's also nothing that says the maintainer has
to accept your changes; just publishing them is sufficient).
The GPL kicks in if you distribute your product. If your program needs a
GPL library the program is a derived work from that library and so if
you distribute that program you have to distribute it in a GPL
compatible way (for example by putting the program under the GPL).
If you have a LGPL library the use of that library is not seen as a
derived work and hence you are free to choose the license for your
program.
What's good enough for the goose is good enough for the gander so the
GPL zealots can't have it both ways. Either implementing libraries that
are compatible with existing Unix(tm) headers and interfaces violates
someone's (say SCO's) copyrights or using GPLed headers and interfaces
to GPLed libraries in proprietary code is legal. That being said, the
open source folks have a lot more to lose if headers and interfaces are
suddenly found to be subject to copyright protection.
That headers aren't protected by copyright doesn't mean the
implementation of the logic behind those headers isn't protected by
copyright. If you have a GPL library, copyright doesn't prevent you from
rewriting (from scratch) that library with compatible headers. Copyright
does however prevents you from using that GPL library in a way that is
not compatible with its license.
So GPL zealots, as you call them, can implement libraries that are
compatible with other libraries, without violating anybodies copyright.
And they can put libraries under the GPL and force you to follow that
GPL when you use their libraries. You, of course, can reimplement those
libraries too if you want and put them under a different license.
- Erwin
The point of the goose/gander paragraph is simply linking to someone
else's code does *not* contaminate your code with their license. Lots
of talk and FUD about this but linking doesn't foist a license since the
headers and interface (which aren't protectable elements) are all that
is copied. Just because you program uses a GPL library *does not*
contaminate it. As an example, I somehow doubt that an Oracle
implementation running on Linux makes no use of GPLed library or system
calls. Same for VMware and lots of other proprietary software that runs
on a Linux platform.
Again, IANAL, but I find the argument that the library somehow gets
"included" in the program to be totally bogus as long as said library is
a shared object that is still normally distributed. This argument might
be made for static libraries or if you literally copy and compile the
code but that's a different animal.
Cheers,
Dave