[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GPLv3 comedy unfolding -- "what Eben Moglen is working on now"

From: Alexander Terekhov
Subject: Re: GPLv3 comedy unfolding -- "what Eben Moglen is working on now"
Date: Mon, 27 Nov 2006 12:47:38 +0100

Another threat to free software is from software patents. GPL2's section
7, which is now section 12, deals with one of these threats: the threat
of a distributor signing a contract that gives it the patent licence for
the software but in a limited way.

A few years ago, I realised that there were other ways software patents
might be used to make software non-free, so we're designing GPL version
3 to block them too. For instance, one issue is, what if the developer
of the software has a patent on it, or rather, has a patent on some
particular computational technique used in the program. I made a
terrible mistake when I said "has a patent on the program", that's not
how patents work. I know better, and yet I still made this mistake.
There's no such thing as a patent on a program, software patents don't
work that way. Every software patent is a monopoly on a certain kind of
technical funcationality or method. A program violates the patent if
anywhere inside the program it implements that method or that
functionality. The result is that one program can infringe any number of
patents at the same time.

Two years ago, a thorough study found that the kernel Linux infringed
283 different software patents, and that's just in the US. Of course, by
now the number is probably different and might be higher.

That is the only example of this kind of study, as far as I know. But
probably any large program infringes hundreds of different patents at
once. What if a distributor of the program has a patent on some
computation inside the program and distributes the program to others,
and when they try to redistribute, the patent holder says "We're going
to sue you for patent infringement if you try". We didn't think this was
an issue because in the US, when that company distributes the software
under the GPL, they're telling people "We have no objections if you do
what the GPL says you can do" and so if they tried to sue those same
people for patent infringement later, they would lose.

However, we found out that this is not true all around the World. So GPL
version 3 carries an explicit patent licence which is following the lead
of the Mozilla Public License. I think that was the first one which
contained an explicit patent licence. Basically, all this says is that
none of the people who distributed the program on it's path to reaching
you can turn around and sue you for patent infringement on the patents
that covered the code that passed through their hands.

This is not as broad as it could possibly be, but it seems right because
it's pretty much the same as the implicit patent licence that US law
gives people.

However, there's another way of using software patents to threaten the
users which we have just seen an example. That is, the Novell-Microsoft
deal. What has happened is, Microsoft has not given Novell a patent
licence, and thus, section 7 of GPL version 2 does not come into play.
Instead, Microsoft offered a patent licence that is rather limited to
Novell's customers alone.

It turns out that perhaps it's a good thing that Microsoft did this now,
because we discovered that the text we had written for GPL version 3
would not have blocked this, but it's not too late and we're going to
make sure that when GPL version 3 really comes out it will block such
deals. We were already concerned about possibilities like this, namely,
the possibility that a distributor might receive a patent licence which
did not explicitly impose limits on downstream recipients but simply
failed to protect them.

What if one company pays Microsoft for a patent licence where Microsoft
says "Alright, we won't sue you, but we're just not making any promises
about your customers if they redistribute it". We had already written a
downstream shielding provision into GPL version 3 saying that if you
convey the program, and you are benefitting from a patent licence that
is not available, that does not extend to the downstream users, then you
have to do something to shield them.

This is, it turns out, inadequate in two ways. First of all, "shielding
them" is vague. We're replacing that with a specific list of methods,
and second, once again it assumes that the distributor has received a
patent licence, so the Microsoft/Novell deal cunningly does not give
Novell the patent licence, only Novell's customers.

Well, now that we have seen this possibility, we're not going to have
trouble drafting the language that will block it off. We're going to say
not just that if you receive the patent licence, but if you have
arranged any sort of patent licensing that is prejudicial among the
downstream recipients, that that's not allowed. That you have to make
sure that the downstream recipients fully get the freedoms that they're
supposed to have. The precise words, we haven't figured out yet. That's
what Eben Moglen is working on now. 

Thanks god "the GPL is not a contract". :-)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]