Jul 8 2007

GPL 3.0 and third party patent owners

The final version of the GPL 3.0 has been released. Third party patent holders should not care unless they themselves make and transfer works containing software licensed under this new license, but if they do, they may risk losing enforcement not only of current, but of future obtained patents. The final version of the GNU General Public License 3.0 (GPL 3.0) injects many areas of controversy and uncertainty in the open source arena. It is a new and highly restrictive license. Among the questions is the simple one of how we can expect a community of software developers to understand, let alone comply with, a complex eleven page legal document that contains complicated definitions and terminology and will take months if not years for lawyers to understand. Pity the developer who elects to use this license or who receives and wants to use other software under GPL 3.0. But fully understanding GPL 3.0 is a topic for a later time.

An intriguing part of GPL 3.0 is how it singles out particular practices or parts of an industry for special treatment. The drafters do not like anti-circumvention laws, so they try to use their license to circumvent those laws. § 3. They do like some companies and licenses that do not wish to follow pure GPL restrictions, so they validate many “Additional Terms.” § 7 The license attempts to commit patent owners who distribute “free” software to granting licenses to both current and any future patents.

The drafters do not like commercial arrangements like that between Microsoft and Novell, so they include terms trying to block that practice in the future, while not precluding Novell from adopting version 3.0 even as to its existing agreement. § 11. They believe that if 3.0 is used by Novel for future transactions, then Microsoft will be captured into broad patent licenses not contemplated in their original agreement. I think they are wrong.

The Microsoft-Novell agreement provides that each company shall covenant not to sue the other company’s customers for patent infringement on account of the customer’s use of certain products. It provides for payment from each party to the other based on how many such customers receive the commitment and for a means of recording this (e.g., using coupons). This is an unusual cross-licensing agreement since it protects the customers, but does not protect either company from a lawsuit by the other.

So why does the Free Software Foundation (FSF) dislike an arrangement that protects users of open source works from patent claims by Microsoft? It is not clear to me that the reason is anything other than a visceral dislike of Microsoft as epitomizing the so-called proprietary software realm and the fact that this arrangement allows Microsoft to participate more in the open source without adopting all premises set out by FSF. Beyond that, the only complaint is that the protections are not comprehensive – neither party gives the other’s customers a covenant not to sue as to several limited types of uses.

GPL 2.0, the most widely used open source license, does not preclude arrangements like the Microsoft-Novell agreement. This is because GPL 2.0 focuses solely on the rights and limitations received by the transferee of the software from the licensor. Microsoft is not a licensor of Novell software and Novell is not a licensor of Microsoft software under this arrangement. Rather, both have merely agreed with the other to waive rights as to third parties. In legal terminology, the customers are third-party beneficiaries of the MS-Novell agreement. GPL 2.0 does not deal with such relationships.

GPL 3.0, however, has two provisions that try to prevent this type of an arrangement (or at least change it to fit FSF goals). The problem for FSF is that Microsoft is not bound by either provision when it is not itself distributing software under or covered by GPL 3.0 and that Novell is affected only if it chooses to use GPL 3.0.

The first is paragraph 6 of § 11. It says basically that if you (as licensor) “convey or propagate by procuring conveyance of” a covered work, and grant a patent license to some parties receiving a GPL 3.0 work, “the patent license is automatically extended to all recipients of the covered work and works based on it.” The FSF apparently believe that if Novell adopts GPL 3.0, Microsoft will have procured conveyance of the GPL software by giving coupons to its customers and a patent waiver to Novel customers, thus falling within the provisions of paragraph 6. But this language is in GPL 3.0 – arguably a contractual document, but certainly not a body of law good against the world. If I am not bound by that contract, I am not bound by that provision.

Look at this from Microsoft’s perspective. It never agreed to GPL 3.0 in a transaction for a product covered by the Novell-Microsoft agreement. There is a debate about whether GPL creates a contract at all, but if GPL does, the contract is solely between the parties who agreed to it. That is one of the most basic tenets of contract law. Judge Easterbrook many years ago got it exactly right: contracts are not rights good against the entire world, but only create obligations between the contracting parties.

The GPL method for obtaining agreement is that the party agrees to the license by modifying or “propagating” the program. The word “propagate” is new to Version 3.0 and to law generally – it is another of many concepts that may spawn litigation in the future. But GPL 3.0 defines it to mean doing anything that would entail infringement (direct or indirect) under copyright law except executing in on a computer or modifying a private copy.

Microsoft neither modifies nor propagates in the type of transaction we are discussing. The customers who receive the Microsoft covenant not to sue are customers of Novell. Microsoft may give Novell covenants not to sue to its own customers or inform its own customers that it will not sue if they use Novell open source software within the Microsoft-Novell agreement, but it does this in transactions using its own licenses and software, not GPL. Microsoft (or any other party in a similar arrangement) is not bound by the excessively broad requirement in paragraph 6, even if it’s contracting partner decides to use GPL 3.0 for its own customers.

If GPL does not create a contract, the situation is even more clear. Non-contractual purported restrictions on the use of a transferred copy may not even bind the transferee. They certainly do not bind a third party.

The situation for Novell (or similarly situated party) is less clear as to its own patents. Novell may choose to both agree to GPL 3.0 and to grant a patent license for its own patents to its transferees. If it does so, then the broad paragraph 6 undertaking may apply. But Novell does not and cannot grant patent licenses to Microsoft patents. Indeed, the Microsoft-Novell agreement seems to assume that Microsoft commits to a patent enforcement waiver only for a defined group of Novell customers.

The second provision is paragraph 7 of § 11. This paragraph states that a party who has software covered by GPL 3.0 cannot convey the software to another person if that party is part of an arrangement defined specifically to track the Microsoft-Novell arrangement where the patent license agreed to is “discriminatory” (e.g., does not give or conditions the rights available under GPL). GPL 3.0 provides that this non-conveyance rule only applies to arrangements made after March, 2007. The Microsoft-Novell agreement is thus excluded to “tactical” reasons – that is, FSF wants Novell to shift to GPL 3.0 and believes that Microsoft is caught up within paragraph 6 for any GPL 3.0 product.

But as we have seen, they are not. Thus, this paragraph 7 is a provision that narrows the settlement and commercial agreement options for all subsequent developers.

Post A Comment / Question

Remember personal info?