LinkSys and the GPL - again
[Posted October 1, 2003 by corbet]
Last June, we published
a story about
LinkSys and its WRT54G wireless router product. That router runs Linux,
but LinkSys was not making the source for its Linux kernel available as the
GPL requires. In response to pressure from the community, LinkSys
eventually released a kernel tarball, and it
appeared that the episode had come to a close. Another apparent victory
for the GPL.
In this case, however, it seems that the victory celebrations were a bit
premature. A group of programmers has been working with the LinkSys
tarball in the hopes of creating a new, more accessible firmware image for
the WRT54G. Over time, this group has come to the conclusion that the
kernel source released by LinkSys is incomplete. Efforts to resolve the
situation with LinkSys have not been conclusive, so, on September 28,
this group sent out a letter describing its
findings.
Much of the code in the WRT54G kernel gets there by way of loadable
modules. In particular, much of the truly interesting stuff - the code
that implements the low-level wireless functionality - is packaged in
modules. The question of whether loadable modules are a derived product of
the kernel - and thus subject to the GPL - is a topic of ongoing debate;
not all kernel hackers are happy to see their work used by binary-only
modules. A definitive conclusion in that debate may never come about; in
the real world, however, binary-only modules are tolerated. Nobody has
made any serious public effort to get LinkSys to release the source to its
binary kernel modules. (Update: it turns out that claim is not
entirely true; see the comments added to this article for details).
The results of the investigation by the WRT54G hackers, however, indicate
that the WRT54G kernel contains a substantial amount of built-in code.
There is no ambiguity around code which is patched directly into the
kernel; it is clearly a derived product. A kernel which is patched in this
way can, by the GPL, only be distributed if the source for those patches is
released under the same license. LinkSys (or the contractor which did its
kernel work) has tried to slip in a kernel source tarball which does not
include the code found in its binary image; that is a GPL violation, and
the company has been caught. It is not clear how the people involved
thought they would get away with this attempt; perhaps they thought nobody
was really interested in looking at their source.
What happens now? The WRT54G hackers have released their information in
the hope that a wider public awareness of the problem will help push
LinkSys into living up to its obligations under the GPL. It turns out,
however, that the Free Software Foundation is
working on this case, and they are asking for patience.
GPL violations sometimes take time to resolve. We wish that we
could force resolution quicker, but we haven't found a way to do
that. We have, however, discovered a variant of Brooks's Law:
adding more lawyers to a GPL violation usually makes it take
longer. Lawyers are reluctant to admit to mistakes, because they
fear it could be used against them. Engineers and product managers
are typically interested in fixing mistakes, so we try our best to
work with them first before escalating to legal teams on both
sides. Such escalation has happened on this violation, so it will
take additional time to resolve the matter.
The FSF also points out that the kernel is only a part of the GPL-licensed
software running on a WRT54G router. The FSF is trying to represent the
copyright holders of all the affected software and resolve the whole
problem. They will, they say, keep the community informed as things
progress.
The FSF's work on GPL enforcement is usually hard to see; it is done in a
quiet and diplomatic manner that is invisible behind the rhetoric that
comes out of other parts of that organization. The FSF claims to have built the free software
community, but it toots its own horn rather less on the subject of GPL
compliance. But the FSF's GPL work plays a crucial role in keeping the
free software community going; we owe them a debt of gratitude for the work
they do to ensure that the terms of our licenses are respected. In the
LinkSys case, we also owe them some space and time to do their work. The
FSF has been highly successful in resolving GPL violations without the need
for long and expensive court cases. With some luck and patience, we can
hope to see a similar resolution here.
(
Log in to post comments)