BSD legal question

Ted Mittelstaedt tedm at toybox.placo.com
Fri May 20 01:26:42 PDT 2005



> -----Original Message-----
> From: owner-freebsd-questions at freebsd.org
> [mailto:owner-freebsd-questions at freebsd.org]On Behalf Of Joel
> Sent: Friday, May 20, 2005 12:12 AM
> To: freebsd-questions at freebsd.org
> Subject: Re: BSD legal question
>
>
> > > > Suppose I distribute a library that is under my own copyright,
> > > > yet carries a BSD-like license.
> > > >
> > > > Suppose you then come along and take my library, and a GPLed
> > > > library, link both of them together into a new program of yours.
> > > >
> > > > The FSF says that the entire code now becomes GPL.
> > >
> > > That's not true. The GPL requires you to license any
> distributed code
> > > derived from GPLed code under the GPL.
> >
> > This is a hairsplit since FSF=GPL, but yes, technically it's
> not the FSF
> > saying the entire code now becomes GPL, it's the GPL saying that the
> > entire
> > code now becomes GPL.
>
> NOT(FSF=GPL)
>

NOT(NOT(FSF=GPL))

Politically, the two are the same - the FSF owns copyright on the GPL
itself,
they can change it anytime they want - thus the GPL says what the FSF
wants
it to say.  Legally, no, but that doesen't count
when the press is interviewing Eric Raymond for the bazillonth time.  And
it is those interviews that do the damage, not the legalities.

> You can assign a copyright you own to the FSF if you've put it
> under the
> GPL. You can also put the code under GPL and retain the copyright to
> yourself. This is clearly explained on the FSF's FAQs.
>
> <http://www.fsf.org/licensing/licenses/gpl-faq.html#DoesUsingTh
eGPLForAProgramMakeItGNUSoftware>
>

Yes, I knew that - of course if you retain copyright the FSF won't pay
your legal bills if someone infringes your code (and the GPL) and you
try to sue them.

> And splitting hairs is exactly how lawyers and judges get us to behave
> civilly towards each other, so splitting hairs or not
> splitting hairs is
> also irrelevant. Or, rather, you do have to split hairs to understand
> what's going on because this is a contract. It's the same thing as
> understanding the fine print on your car loan.
>

Yes and no.  Judges also weigh the intent of things as well.  In fact if
I recall correctly, there is a law or some such in the US that if a
contract's clause is not well defined and vague, that it's interpretation
is made in favor of the person who signed it, not the person that
authored
it.

The law wasn't designed to be used by an unscruplous person to twist
up someone, at least in the US.  Judges take a dim view of this and
the legal system has mechanisms to filter out the worst of the abuses.
It happens more frequently on criminal trials - the defendant may get
away scott free on his fraud charge, but then they turn around and
convict him on tax evasion and give him a penalty that is worse than
what he would have got if he had not got off on a technicality.  That
is what happened to Martha Stewart - she got tossed in the pen anyway,
even though her lawyers will eventually be able to get her off because
she's filthy rich.

> The GPL does not say the entire code becomes GPL. It says the work as a
> whole is licensed under the GPL. In fact, section 2 is explicit about
> parts:
>
>     If identifiable sections of that work are not derived from
>     the Program, and can be reasonably considered independent
>     and separate works in themselves, then this License, and
>     its terms, do not apply to those sections when you
>     distribute them as separate works.
>
> Therefore, the GPL is explicit that it does not attempt to alter the
> original license of any part that has an independent existence. The
> original license of a part remains in force. (If the license of a part
> is to be changed when incorporated into the combined work, the
> author or
> copyright holder of the part must explicitly change it.)
>
> If the license of the part is incompatible, distribution of the whole
> can't legally occur under the GPL.
>
> If the license of the part is compatible, it remains in force on the
> part as an independent work.
>

But, their definition of compatible is so narrow only the GPL fits it.
This is political posturing.  It's like saying your free to buy gasoline
anywhere you want, but only 1 gas station, the one I own, sells the
special gas your car takes.

> There is some detail following the part I quoted, which specifies that
> you can't take the license of a part and extend it to new works derived
> from the whole as a way to get around the GPL, but there is nothing in
> the GPL that alters (or allows a licensee to alter) the license of a
> part.
>
> Well, if I leave it at that, there may be some confusion.
> There is a FAQ
>
> <http://www.fsf.org/licensing/licenses/gpl-faq.html#GPLIncompat
> ibleAlone>
>
> which says that the license for a part would have to allow the part to
> be distributed as an independent part under the GPL for the license to
> be compatible with the GPL. In other words, the license of the part has
> to be at least as liberal as the GPL.
>
> But what this FAQ is about is conditions like, "You may distribute this
> program as a part of a combined work under an approved open source
> license, but as a standalone program, it must be distributed under
> license Q."
>
> I'm not sure I agree with that interpretation. But if it is
> the case, it
> does not mandate distribution under GPL, only requires it to
> be allowed.
> And it still does not remove or alter the original license.
>
> If the license is incompatible, distribution of the combined work is
> engaging in illegal activity, not modifying licenses.
>
> On the other hand, nothing prevents an author from offering more than
> one licensing option, as long as none of the optins is an exclusive
> license.
>

All of that is pretty clear from reading the license, but you need to
be very cautious about the FAQ's that the FSF has created.  None of them
have any legal weight or bearing whatsoever when it comes down to the
hairsplitting.  They would have weight with a fight that was an intent
kind of fight, which is why they exist. But once again I must emphasize
very
strongly that the FSF has a policy of settling everything out of court.
They really really do not want the GPL tested in court.  These
theoretical
discussions of what a court might do when confronted with the GPL are
fun, but not realistic.

> > > Since, as you point out...
> > >
> > > > The problem here is that since you never owned copyright on
> > > > my library, you do not have legal rights to modify the copyright
> > > > and license on it.  Thus, you cannot legally apply GPL to it.
> > > > Nor can the FSF or anyone else apply GPL to it.
> > >
> > > ... the conclusion is that you cannot *distribute* the derived
> > > program;
> > > NOT that it magically relicenses code you've used to build it.
> >
> > Except that this is only the case if your definition of distribution
> > is limited like the FSF's.
>
> Distribution is distribution, even if it comes with a little sleight of
> hand.
>

That is a very big jump.  If I go buy a bottle of milk and a bottle of
chocolate syrup and follow a recipie to mix them together then the dairy
is not selling
chocolate milk, no matter that they might have a patent on it.

> > That is exactly why the FreeBSD ports system was created.
>
> I don't think it's the only reason.
>

In the beginning it was one of the largest.

> > The idea behind ports is that 'unknowledgeable user' who I will
> > refer to as a UU, can go to the ports, flick a switch (type
> > make install) and whala- instantly the GPL licensed libraries that
> > the FSF wants to prevent you from distributing with your nasty
> > BSD stuff, are FTP'ed from whatever dark hole that
> > they come from, the nasty BSD stuff is FTP'ed from wherever it
> > comes from, the mixmaster is turned on at high speed and Bing!
> > Instantly the UU has your intermixed program, while you have neatly
> > avoided the little trap that the FSF has built to prevent UU's
> > from getting ahold of nasty intermixed stuff!
>
> Sigh. So that's why it's called mixmaster. I think I understand why ...
>

Don't be silly, I just made that name up for fun.

> Anyway, that little trick can only get you a certain distance.
>
> > The result is the same as if you build your program, and thoughtfully
> > distribute intermixed source for your UUs - which runs afoul of the
> > FSF's daffynition of distribution.
>
> I would not want to try to defend this in court, particularly since the
> user is not informed that he has created a derived work, and that
> distribution of the derived work is subject to various conditions
> including those of the GPL.
>

The FSF has had ample chance to sue FreeBSD over ports and has declined.
They know it is unwinnable.

> It may well be that a judge would declare that, since the link points
> were defined and mechanized in the scripts fed to mixmaster,
> this merely
> constitutes delaying the linking, and that, for all that the
> end user is
> the one that "pushes the button", the linkage was predefined, and the
> distribution of the scripts and the machinery to execute them therefore
> constitutes distribution of a combined work.
>

This would be very easy to punch holes into.  For starters, the term
"linking" has special technical meaning in software development.  What
the ports manager does has not been defined by anyone in the software
industry as any form of linking, or prelinking, or anything like that
at all.  Sure you probably could find a parade of expert witnesses to
claim that the ports manager is nothing more than a sophisticated
linker, but I could get an equal parade of expert witnesses that would
claim otherwise.

More importantly, though, is the assignment of responsibility.  You may
know, for example, exactly how to grow weed, where to get seeds for it,
where to get hydroponic systems for it, what chemicals are needed for
them, etc.  You may tell me "go down to Fred there, ask him for some
sunflower seeds, come back here and put those seeds in this hydro tank
I have set up in your basement"  I don't know anything about seeds so
I see Fred, he gives me weed seeds, I come back, and grow a nice crop of
dubage.  You, on the other hand, I don't see hide nor hair of the day
after
you tell me to see Fred.

Well, when the cops come busing my door down, I'm the one arrested.  It
doesen't matter that I was ignorant.  I'm still responsible according to
the law.

If a Judge bought off on the "distribution of the scripts and the
machinery
to execute them therefore constitutes distribution of a combined work"
argument then he is effectively saying that responsibility for the
infringement rests on the person who wrote all those scripts, not the
person who was running them and distributing the result.  Thus every
pirate
being sued over copyright
infringement could merely argue that they were ignorant of what they were
copying and to go sue the people who made the copying machine.

> Particularly, calling the end user an "unknowledgeable user" emphasizes
> that it is not the end user doing the combining.
>

But it -is- the end user doing the combining.  Just because they were
ignorant
of it doesen't mean they have no responsibility.

People find this out all the time - someone trips on a crack on the
sidewalk
in front of their house and they get sued for medical bills, and they
scream about it because they never heard of the city ordinance that
makes sidewalk maintainence their responsibility.

> > The FSF never envisioned that
> > someone would actually go to the trouble of creating something like
> > the FreeBSD ports software when they wrote the GPL, so they
> fortunately
> > didn't define that kind of distribution mechanism in their license's
> > definition of "distribution"
>
> Oh, sure they did. It is not mentioned explicitly in the
> license, but it
> is mentioned in the FAQ.
>
> <http://www.fsf.org/licensing/licenses/gpl-faq.html#MereAggregation>
> <http://www.fsf.org/licensing/licenses/gpl-faq.html#GPLOutput>
>
> among others.
>

Neither of those sections mentions anything of the sort.  If you think
otherwise then quote the relevant sentence and explain how.

> Mixmaster is a really useful tool, but the utility is not in overcoming
> the limits of licenses.
>
> Now, because mixmaster is available to the user, and because the user
> knows he can get the source of the parts and the whole by using it, the
> conditions of offering redistribution, at any rate, are likely
> to be met
> by the porting system.

Your just repeating what you said above.  No, ports does not meet this.

> That does leave a few other license conditions,
> however.
>
> > But you can bet that if they had known Ports was coming, they would
> > have written language proscribing that kind of distribution in the
> > GPL.
> >
> > Another more obvious note is that the 'configure' script
> doesen't have
> > that fetching capability in it - although it would be trivial to add.
> >
> > Ted
>
> Thanks for the warning. Now I know one of the things I'll need
> to be very
> careful about if I sell FreeBSD workstations with ports pre-installed.
>

Exactly, you should never do this.  You should sell workstation hardware
then have the customer contract with you to build the software on them.
It needs to be a separate contract and all of that.  That is exactly what
we do when we deal with these sorts of things.

Ted



More information about the freebsd-questions mailing list