|
Microsoft Debunks the Pregnant Cow Argument & Explains SCO Can't License on Top of the GPL |
|
Monday, July 21 2003 @ 01:05 AM EDT
|
I'm sure they didn't intend what they wrote to be used like this, but
here is the page where Microsoft explains in what way it sees the GPL as being viral. But it also happens to explain how the GPL blocks SCO from any code distribution with a license on top (note the second bulleted item). Later today, we'll find out if they plan any distributions or not, or if they have another scheme in mind, but Microsoft has correctly explained how the GPL blocks any license on top of it. It also debunks the "we didn't release under the GPL because we didn't know our code was in there", the "pregnant cow" argument:
The GPL permits unlimited free use, modification, and redistribution of software and its source code, but imposes three key restrictions on every licensee:
-- If the licensee redistributes any code licensed under the GPL, it must guarantee availability of the code for the entire work for unlimited replication by anyone requesting it.
-- If the licensee redistributes GPL code, it may not charge a licensing fee or royalty, but may charge only for distribution costs.
-- If the licensee includes any GPL code in another program, the entire program becomes subject to the terms of the GPL.
This third restriction is what makes the GPL "viral", because it causes GPL terms to apply to software that incorporates or is derived from code distributed under the GPL, regardless of whether the program's developer intended that result or even knew of the presence of GPL code in the program. Violation of these restrictions may subject the offender to civil and criminal penalties for copyright infringement.Microsoft does not oppose the use of the GPL by individual developers, but does want developers and researchers to be aware of risks and restrictions they may face in using or developing GPL software. This is, of course, classic MS FUD. As we pointed out before the restrictions of the GPL only kick in if you are distributing software, not if you are merely using it. And as David Mohring correctly points out in his comments, a company that wishes to dual license [its own code] can also do that. An example of that would be StarOffice, which you can buy as a proprietary version or get as a GPLd version. But my point was simply this: by their own logic, the pregnant cow argument fails.
|
|
Authored by: Anonymous on Monday, July 21 2003 @ 04:15 AM EDT |
Actually I think Microsoft's third bullet is misleading, although it still
counts against SCO. Inadvertantly including GPL'ed code in your application
cannot *force* you to GPL the application, contrary to what many say. On being
shown that you have included GPLed code, your choice is stark - either licence
your application under the GPL, or stop distributing it altogether; but you do
have the latter choice and at least one company in the past has taken that
choice. Therefore MS is wrong to suggest that you can ever be forced to release
code. The copyright holders of the illegally redistributed GPL code can sue you
for damages, and can stop you distributing your application but cannot require
you to release its source code.
Of course this still doesn't help SCO, as it just means that their purported
ignorance about the GPLed code prevents them distributing the kernel at all.
That is why, as I argued in a previous post, they must surely have a scheme in
mind where others distribute the kernel and they "bless" the end users with
licences.
Unfortunately even this is unlikely to work, since by not telling Red Hat et al
where their alledged IP lies in the kernel, but giving a green light for them to
distribute it, they are de facto fact distributing their code; but it is
sufficiently convoluted that some businesses might swallow it.
If SCO have any sense, they will pitch these "licences" at a bargain price - say
free for non-commercial use and otherwise $20 a cpu for 32-bit x86. It's in
their interest to get "buy-in" from end users, and not to give anyone a reason
to say "come on, sue us". I buy SuSE boxed product, and if I didn't know
anything about the SCO case I wouldn't bat an eyelid if the price went up by $20
a box - it would still be great value. Of course, since I *do* follow the SCO
case, my eyelids would in fact be batting at about 3GHz ;) Dr Stupid[ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, July 21 2003 @ 04:37 AM EDT |
" -- If the licensee includes any GPL code in another program, the entire
program becomes subject to the terms of the GPL."
Actually, the above statement is Microsoft FUD, since it is actually the reverse
which is more correct.
* If the licensee includes any NON-GPL'ed code in a GPL'ed program or library (
*and* then distributes the resulting combined product outside of the licensee's
organization ) the NON-GPL code in question is deemed to be also licensed by the
distributer under the GPL license.
Note that is the not the commingling of the GPL'ed source with the NON-GPL'ed
product, but the act of distribution, outside of the licensee's organization
,which actually effectively results in the licensee granting all downstream
recipients the rights to use the result under the GPL license.
Just including GPL'ed source inside a NON-GPL'ed program or library does not
"automatically" license the NON-GPL'ed program/library under the GPL - It just
means that anyone distributing the resulting product, outside of the licensee's
organization, is in violation of the GPL license. The licensee has then three
options.
1) Recall and Cease distributing the combined product *OR*
2) Remove the GPL'ed code from the product and distribute the result under
whatever license the licensee sees fit *OR*
3) License the combined product under the GPL.
With the latter option #3, the licensee has the right to retain copyright over
their original source code and Dual/Multi-license under the GPL and any other
licenses they choose.
Sun does this with OpenOffice, as does the MySQL project and TrollTech with the
QT libraries.
If the licensee/vendor is careful, maintaing at least one branch of the source
seperate from the pure single licensed GPL'ed sources, geting all outside
developers to assign copyright over to the licensee/vendor for major
contibutions and patches, the licensee/vendor is free to exercise option #2 at
any time with the un-commingled source branch.
Sun does this with the proprietary StarOffice6, which is based on the Sun
OpenOffice.org sources. TrollTech also offers a proprietary licensed option for
the QT libraries.
Microsoft's claim also totally ignores the existence and use of the LGPL
license. The LGPL license is the same as the GPL license but grants the
recipient the right to link into NON-GPL'ed programs/libraries. The LGPL is
widely used and is very NON-GPL friendly. All of the vendor who supply
proprietary applications for Linux link with the GNU LGPL licensed C and C++
libraries.
[PJ, please feel free to adapt or include the above in your blog] David
Mohring[ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, July 21 2003 @ 05:47 AM EDT |
My previous entry was based upon the assumption that the NON-GPL'ed source code
was *NOT* explicity licensed, with the source code including copyright but not
including any terms of use license. Also there is the issue of other GPL
compatable licenses, which it is legal to include in GPL'ed source. Replacing
two paragraphs in the previous entry produces a more correct, if not somewhat
more verbose answer.
Correction: Replace "any NON-GPL'ed code" with "any non-explicitly licensed
code" in
* If the licensee includes any non-explicitly licensed code in a GPL'ed program
or library ( *and* then distributes the resulting combined product outside of
the licensee's organization ) the NON-GPL code in question is deemed to be also
licensed by the distributer under the GPL license.
Correction: inclusion of explicity licensed
The inclusion of explicity licensed NON-GPL compatable ( see
http:
//www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses ) source in
GPL'ed software, *or* just including GPL'ed source inside a NON-GPL'ed program
or library, does not "automatically" license the NON-GPL'ed
source/program/library under the GPL - It just means that anyone distributing
the resulting product, outside of the licensee's organization, is in violation
of the GPL license. The licensee has then three options. 1) Recall and Cease
distributing the combined product *OR* 2) Remove the GPL'ed code from the
product and distribute the result under whatever license the licensee sees fit
*OR* 3) License the combined product under the GPL.
[ A rewrite is probably needed ] David Mohring[ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, July 21 2003 @ 06:59 AM EDT |
Don't worry, David. I know it's FUD. My purpose was to let reporters see this,
just before the teleconference, so they'd hopefully *not* fall for the pregnant
cow FUD. I was in essence saying: you defined your own terms, and by those
terms the pregnant cow argument fails. I explained already about the GPL only
restricting distribution, not use. But I'm glad you're alert. I see from your
reaction that what I wrote was too subtle, and I'll fix it. pj[ Reply to This | # ]
|
|
|
|
|