GPL vs. McHardy: How One Developer can Damage the Concept of Free Software and the GPL

Today we’re going to talk about an issue that has raised concern in the Linux community in general and also companies that use open source software (also known as FOSS) in their products. Many now fear that a recent legal battle between a company using Linux in their products and a single developer could greatly impair the adoption and development of Linux.

Linux developer Patrick McHardy brought China based company Geniatech to court in Germany due to an alleged violation of the GNU Public License version 2 known as GPLv2. Geniatech uses Linux for some of its satellite TV receivers sold in Europe by Geniatech Euorope. Allegedly, Geniatech provided only a binary of their modified version of Linux. The GPLv2 license requires that any modifications of the Linux source code be made available to the public.

McHardy’s suit had some validity, because he contributed some of the source code in Geniatech’s products. Specifically, he was a part of the netfilter and iptables core team, a firewall component built in to the version of Linux used by Geniatech2. The software used by Geniatech was of course, protected by the GPLv2 license.

The Gnu Public License version 2 is often referred to as a “copyleft” license, a play on words of the “copyright” license. The general concept is that the software designed under GPLv2 gives anyone the right to freely distribute copies and modified versions, provided the source code of any modification is made available. The idea is to allow Linux or any GPLed software to grow and become better by contributions made by many disparate developers.

As you can imagine, a legal issue arises when a company uses GPLed source code, modifies it, but does not offer their modifications and improvements to the general developer community. Typically when a company is found to be in violation of the GPL license, these violations are reported to the Free Software Foundation (FSF) or the Software Freedom Conservancy (SFC)1. The idea here is to use these organizations to gently move a company or individual in violation of the GPL towards a non-litigious resolution.

But why would the FSF and SFC not immediately use the courts to address GPL violations? To find the answer, we have to look at the reason Linux and other GPLed software is available in the first place. The idea is to provide quality software at a price anyone can afford. It would stand to reason that developers and users of GPLed software wish to see it grow and become more useful. In order for GNU Software and Linux to continue to expand, more developers and more users are a necessity.

Much of the time, it is companies that provide further development and innovation for GPLed software. The fear is companies will abandon use of GPL licensed software on the grounds that any one developer can sue for monetary damages if the GPL license if violated. But that’s a good thing, one might think. If a company is fearful of being sued, the GPL license is doing its job. But is it? If companies choose not to use GPL software, who will? Would GNU and Linux be left to enthusiasts and shrink to a tiny user base smaller than it already is?

That is why the FSF and SFC were surprised by McHardy’s actions. Initially, McHardy was interested in working with the FSF and SFC to address the alleged GPL infringement by Geniatech. Eventually, he stopped answering his phone or responding to emails from either the FSF and SFC or the Netfilter Core team2. Eventually the Netfilter team received credible information that McHardy was using GPL copyright to sue several companies for compensatory damages relating to his source code contributions to Netfilter. As a result, he was suspended from the Netfilter team until he addressed the allegations against him4.

In July of 2017, McHardy made a “test purchase” of a product sold by Geniatech, and found modified source code in binary form on the device. Geniatech had not offered the source code to the public as required by the GPL license; as a result, McHardy filed for an injunction against Geniatech Europe on the grounds that their use of the software was in violation3.

The Court of Cologne (OLG) made it clear they did understand the concept of GNU, Linux, the GPL license, and that the concept of co-authorship of Linux alleged by McHardy3. McHardy overstepped his bounds as a member of the netfilter development team, a small but important component of the overall GNU Linux operating system. By alleging he was a co-author of Linux, McHardy attempted to put himself in the position of a major rights holder of the entire GNU Linux OS used by Geniatech.

The court dismissed this claim, as well as the concept of co-authorship. “The Linux kernel development model does not support the claim of Patrick McHardy having co-authored Linux. In so far, he is only an editing author…and not a co-author. Nevertheless, even an editing author has the right to ask for cease and desist, but only on those portions that he authored/edited, and not on the entire Linux kernel.3” The court goes on to say: “The plaintiff being a member of the netfilter core team or even the head of the core team still doesn’t support the claim of being a co-author, as netfilter substantially existed since 1999, three years before Patrick’s first contribution to netfilter, and five years before joining the core team in 2004.3

Additionally, the court maintained that just being a member of a core team (or a maintainer) does not immediately grant one a copyright over source code. According to the court, McHardy also did not “substantiate what copyrightable contributions he has made outside of Netfilter/iptables. His mere listing as general networking subsystem maintainer does not clarify what his copyrightable contributions were2,3.” In other words, there was no verifiable proof that McHardy had any legal claim to the greater Linux code beyond his contributions to Netfilter.

Geniatech, in its own defense, showed substantial claims that Mr. McHardy was attempting to profit from the court proceedings, as was evidenced by 38 similar cases he has filed against companies in the past. Geniatech also showed that in one court case, McHardy requested a 2 million EUR penalty. This of course is contrary to the desires of the FSF and SFC, which hopes to bring a company into compliance without the use of courts, at least initially.

Given this evidence, the court then recommended “that it might be better to have regular main proceedings, in which expert witnesses can be called and real evidence has to be provided, as opposed to the constraints of the preliminary procedure that was applied currently.3” Given that McHardy was now faced with a significantly more expensive and time consuming litigation, he opted instead to withdraw his injunction. He will still have to pay all court costs including those by the the defendant, Geniatech.

The FSF, SFC, core teams and developers alike were relieved when McHardy decided to withdraw his injunction against Geniatech. Although Geniatech is in the wrong regarding their use of GPL software, they were willing to put up a protracted battle that McHardy did not have the stomach for. I for one agree with the outcome. If McHardy had been successful in pushing his claim through the courts, many companies would immediately rethink their strategy of using GPLed source code. As it is, just the possibility of costly litigation by a rogue developer has soured the advantage that free and open source software has. Any good company could and should reassess the risk of using GPLed source code in their products. If a company like Geniatech were to choose to use Windows embedded at a greater expense initially, at least they would know rogue programmers from Microsoft won’t be capable of suing individually.

We’ll leave with a quote from Linux developer Greg Kroah-Hartman: “The community is not out for financial gain when it comes to license issues – though we do care about the company coming into compliance.  All we want is the modifications to our code to be released back to the public, and for the developers who created that code to become part of our community so that we can continue to create the best software that works well for everyone.5

What are your thoughts on this topic? Does the attempt to sue Geniatech concern you? Drop me a comment and let me know what you think.

 

  1. The Principles of Community-Oriented GPL Enforcement. https://www.fsf.org/licensing/enforcement-principles
  2. Linux beats legal threat from one of its own developers. http://www.zdnet.com/article/linux-beats-internal-legal-threat/
  3. Report from the Geniatech vs. McHardy GPL violation court hearing. http://laforge.gnumonks.org/blog/20180307-mchardy-gpl/
  4. Suspending Patrick McHardy as a coreteam member. https://marc.info/?l=netfilter-devel&m=146887464512702#1
  5. Linux Kernel Community Enforcement Statement FAQ. http://kroah.com/log/blog/2017/10/16/linux-kernel-community-enforcement-statement-faq/
  6. The Importance of Following Community-Oriented Principles in GPL Enforcement. https://sfconservancy.org/blog/2016/jul/19/patrick-mchardy-gpl-enforcement/

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s