All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Colm MacCárthaigh" <colm@stdlib.net>
To: Andrew Miklas <public@mikl.as>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Linksys WRT54G and the GPL
Date: Sun, 8 Jun 2003 20:44:22 +0100	[thread overview]
Message-ID: <20030608194421.GA92559@kilmainham.stdlib.net> (raw)
In-Reply-To: <200306072241.23725.public@mikl.as>


[general note: please cc, I'm not on lkml]

Andrew,

I was involved in a similar such action with Dell, though I had somewhat
different approach, but nevertheless I'm going to recount my experiences
as it may be useful for the purposes of comparison. Others: mark as read
now if you don't like long mails.

Early in the year, I purchased a nice new Dell Laptop, for running Linux
on, of course. Since it saved me money, I bought a Dell TrueMobile 1184
Access Point/Router at the same time.

 http://tinyurl.com/ds6i (accessories.us.dell.com)

 http://tinyurl.com/ds6d (support.ap.dell.com)

Give an impression of the product. Being a Network Engineer, I felt
compelled to fingerprint the device, very quickly finding that it
ran telnet on port 333, and after loging in (using the root username,
and the admin password), found that it was running armlinux:

# cat /proc/version

Linux version 2.2.14-v1.9 (root@localhost.localdomain) (gcc version
2.9-vLinux-armtool-0523) #5357 Sat Jan 25 17:39:42 CST 2003

# cat /proc/cpuinfo   
Processor       : S3C4510/SEC arm7tdmi rev 0
BogoMips        : 44.24
Hardware        : <NULL>

Other GPL software was abundant, including ipchains, busybox .. and
other things you would expect. Running Linux of course pleased me,
because it meant I put it to some real use (currently it's also
my house print server for example) as I had a self-built router
I wasnt going to stop using (I mean how could anyone live without
IPv6?). 

After some discussion on ILUG (www.linux.ie), I researched it further,
I double-checked, and none of the documentation Dell sent me, nor the
software CD, nor the website indicated it was using GPL software, and
did provide me with a copy of the license, or a written offer with a
means to obtain the source. I'm not a licensing hack, and I almost
would have been prepared to just leave it be had the Documentation not
said:

"Requirements:
  
  You must have at least one computer that has the following: 

   1. Running Microsoft(R) Windows(R) 98, 98SE, Windows Me,
      Windows 2000, Windows XP Home or XP Professional (
      Windows 2000 or XP require you to have administrator
      privileges on your computer in order to configure the
      router - see the computers users' guide for more information)
   2. A CD drive
   3. An active Internet connection"

Which supremely annoyed me, as of course all you need is *any* 
IP capable system for the router to work, it just uses plain NAT,
nothing Windows specific, and you can use any browser to configure
it's luser interface. So after some grepping:

# cat /etc/hosts
127.0.0.1               vLinux/Vitals_System_Inc.
  
They appear to have a website at:
  
  http://www.vitalsystem.com/

Though

  http://www.onsoftwarei.com/
  
seem to be the people who license support vlinux:

  http://www.onsoftwarei.com/product/prod_vlinux.htm

I'm sure there are people on-list with much more in-depth knowlege of
these companies.

Anyway, since in my case, Dell were the direct vendor, I contacted them
first. After some number chasing, I was passed to Dell Ireland's Legal
Director, who got on to the Dell US guys. 

I have to say that allthough it took some time for the issue to be
resolved, Dell were abosulutely brilliant about it, and kept me
informed, they were extremely friendly and helpful about the request.

The original mail I sent Dell is available at:

 http://www.redbrick.dcu.ie/~colmmacc/TrueMobile-1184/dell.letter

But after that, most of the action happened on phone. 6 weeks
later, Seamus (Dell Legal) was able to respond positively to my
request, and I got a CD including the source free of Charge, and
a nice letter:

 http://www.redbrick.dcu.ie/~colmmacc/TrueMobile-1184/dell.jpg

The contents are available online, and if anyone wants it, mails
me and I'll give you the URL, but to save me bandwidth - it's
vanilla Linux 2.2.14 with the 2.2.14-rmk4 patch, nothing bespoke.
But now that I had the configuration, I could actually build 
a replacement IPv6 capable kernel. 

Dell have also reviewed their procedures to ensure that this kind
of thing does not happen again, and from talking to Dell Legal I
got the impression that it was the result of suppliers not fully
informing Dell about Licensing provisions. 

Dell now ship a copy of the source and the license on the CD that
comes with the TrueMobile kit. I really have to make clear here,
Dell did amazingly well, they researched it, kept me informed,
responded positively, and rectified procedures. It's a great example
of how to do it right. 

So, I don't know what the linksys situation is fully, but I do hope
that this report may help you in that it gives an example of a
near-identical situation having been resolved successfully in the past.

I also know from Dell Legal, that my request generated a lot of 
e-mail internal to Dell legal, so I'm sure they researched it very
well. If Dell Legal come to the conclusion that this is what they
must do, that certainly might be a useful example to point Linksys
at.

On Sat, Jun 07, 2003 at 10:41:23PM -0400, Andrew Miklas wrote:
> Sorry for the very lengthly posting, but I want to be as precise as possible 
> in describing this problem.
> 
> Awhile ago, I mentioned that the Linksys WRT54G wireless access point used 
> several GPL projects in its firmware, but did not seem to have any of the 
> source available, or acknowledge the use of the GPLed software.  Four weeks 
> ago, I spoke with an employee at Linksys who confirmed that the system did 
> use Linux, and also mentioned that he would work with his management to 
> ensure that the source was released.  Unfortunately, my e-mails to this 
> individual over the past three weeks have gone unanswered.  Of course, I also 
> tried contacting Linksys through their common public e-mail accounts 
> (pr@linksys.com, mailroom@linksys.com) to no avail.
> 
> However, it is hard for me to know if my contact in the company has just gone 
> on a three week vacation (and not set an auto-responder), or has been asked 
> to not answer anymore mail on this subject.  Also, I should note that I don't 
> own this product, so I can't determine if the source is shipped with it.  
> However, I have gone through all the available information on the Linksys 
> website, and can find no reference to the GPL, Linux (as it relates to this 
> product), or the firmware source code.  Also, the firmware binary (see below) 
> is freely available from their website.  There is no link from the download 
> page to the source, or any mention of Linux or the GPL.  Finally, it would be 
> strange if the source was included in the physical package, as my contact at 
> Linksys was initially unaware Linux was used in this product.
> 
> 
> 
> The following steps can be used to determine the exact nature of the possible 
> GPL violation.
> 
> 1. Go to the following URL:
>     http://www.linksys.com/download/firmware.asp?fwid=178
> 
> 2. Download the "firmware upgrade files":     
> ftp://ftp.linksys.com/pub/network/WRT54G_1.02.1_US_code.bin
>     (MD5SUM: b54475a81bc18462d3754f96c9c7cc0f)
> 
> 3. While it is downloading, confirm that there is nothing on the webpage to 
> indicate that this binary contains GPLed software.
> 
> 4. Once the download is complete, copy the contents of the file from offset 
> 0xC0020 onward into a new file.
>     dd if=WRT54G_1.02.1_US_code.bin of=test.dump skip=24577c bs=32c
> 
> 5. Notice that this file is an image of a CramFS filesystem.
>     Mount it.
> 
> 6. Explore the filesystem.  You will notice that the system appears to be 
> based on Linux 2.4.5.
>    Incidentally, there is at least one other GPLed project in the firmware: 
> the BusyBox userland component: (http://www.busybox.net/)
> 
> 7. The Linux kernel (I think) is mixed up with a bunch of other stuff in:
>     bin/boot.bin
> 
> 
> 
> You might want to know why I am interested in getting the code for the kernel 
> used in this device.
> 
> There's been some discussion here about Linux's lack of wireless support for a 
> few of the newer 802.11b and (nearly?) all 802.11g chips.  Incidentally, 
> Linux has excellent support for at least one manufacturer's wireless family.  
> The following Broadcom chips all appear to be supported under Linux -- if you 
> happen to be running Linux on a MIPS processor in a Linksys router:
> 
> Broadcom BCM4301 Wireless 802.11b Controller
> Broadcom BCM4307 Wireless 802.11b Controller
> Broadcom BCM4309 Wireless 802.11a Controller
> Broadcom BCM4309 Wireless 802.11b Controller
> Broadcom BCM4309 Wireless 802.11 Multiband Controller
> Broadcom BCM4310 Wireless 802.11b Controller
> Broadcom BCM4306 Wireless 802.11b/g Controller
> Broadcom BCM4306 Wireless 802.11a Controller
> Broadcom BCM4306 Wireless 802.11 Multiband Controller
> 
> This list was produced by running strings on:
> lib/modules/2.4.5/kernel/drivers/net/wl/wl.o
> 
> I am trying to determine exactly how tightly coupled these drivers are to the 
> kernel.
> 
> As an aside, I know that some wireless companies have been hesitant of 
> releasing open source drivers because they are worried their radios might be 
> pushed out of spec.  However, if the drivers are already written, would there 
> be any technical reason why they could not simply be recompiled for Intel 
> hardware, and released as binary-only modules?
> 
> 
> 
> Finally, I know that traditionally, Linux has allowed binary-only modules.  
> However, I was always under the impression that this required that the final 
> customer be allowed to remove them at will.  That is to say, you couldn't 
> choose to implement a portion of the kernel critical to the system's 
> operation in a module, and then not release that module under the GPL.  In 
> this particular case, I would argue that the wireless drivers are critical to 
> this device's operation (after all, it is a wireless access point).  In 
> addition, the final user in this case really can't just "rmmod" the wireless 
> driver.
> 
> The Broadcom driver, kernel, and really everything else in the firmware, are 
> (IMHO anyways) being used to form a discrete package -- the WRT54Gs firmware.  
> Does/should this have any implication on whether the Broadcom wireless module 
> must be covered by the GPL?
> 
> 
> 
> I would be very interested in knowing if I am mistaken in any of my claims or 
> conclusions, and if not, how I should proceed in getting this issue resolved.
> 
> 
> -- Andrew Miklas
> 
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 
> 

-- 
Colm MacCárthaigh                        Public Key: colm+pgp@stdlib.net
colm@stdlib.net					  http://www.stdlib.net/

  parent reply	other threads:[~2003-06-08 19:30 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-08  2:41 Linksys WRT54G and the GPL Andrew Miklas
2003-06-08 11:54 ` Dave Jones
2003-06-08 14:23   ` Alan Cox
2003-06-08 18:13   ` uaca
2003-06-08 19:44 ` Colm MacCárthaigh [this message]
2003-06-08 20:14   ` Jörn Engel
2003-06-08 21:47   ` Russell King
2003-06-09 22:37   ` Daniel Phillips
2003-06-10 22:47     ` Andrew Miklas
2003-06-11 12:42       ` Alan Cox
2003-06-11 14:28       ` Kent Borg
2003-06-09  5:22 ` Frank Cusack
     [not found]   ` <20030609053010$504e@gated-at.bofh.it>
2003-06-09  8:28     ` Florian Weimer
2003-06-09 14:09   ` Horst von Brand
2003-06-09 18:23   ` Alan Cox
2003-06-09 21:33     ` Adrian Bunk
2003-06-09 21:50       ` David Schwartz
2003-06-09 22:21         ` Adrian Bunk
2003-06-10 20:17           ` Randolph Bentson
2003-06-11 15:38             ` Adrian Bunk
2003-06-11 17:39               ` Randolph Bentson
2003-06-11 19:22                 ` Adrian Bunk
2003-06-11 20:12                   ` David Schwartz
2003-06-11 20:31                     ` "any third party" (Re: Linksys WRT54G and the GPL) Filip Van Raemdonck
2003-06-11 20:51                       ` Eli Carter
2003-06-09  5:32 ` Linksys WRT54G and the GPL David Schwartz
2003-06-09  5:47   ` Frank Cusack
2003-06-09 16:53     ` David Schwartz
2003-06-09 18:25     ` Alan Cox
2003-06-09 21:37     ` Adrian Bunk
2003-06-08  3:13 Brad Chapman
2003-06-08 16:35 ` Davide Libenzi
2003-06-08  3:53 Erik Andersen
2003-06-08 10:08 ` Henning P. Schmiedehausen
2003-06-08 12:01   ` Christian Ullrich
2003-06-08 13:52     ` Dr. David Alan Gilbert
2003-06-08 14:05       ` Marcus Metzler
2003-06-08 16:49       ` Adrian Bunk
2003-06-08 17:00         ` Dr. David Alan Gilbert
2003-06-08 20:41 greendisease
2003-06-08 21:08 ` Davide Libenzi
2003-06-08 21:23   ` Jack Aboutboul
2003-06-08 21:50   ` Russell King
2003-06-08 22:48     ` Davide Libenzi
2003-06-08 20:57 Peter Westwood
2003-06-08 21:52 ` Russell King
2003-06-08 23:18 ` bill-linuxkernel20030609
2003-06-09  0:19 ` Oliver M. Bolzer
2003-06-09  0:31   ` Jeff
2003-06-10 20:43   ` Michael Neuffer
2003-06-08 23:25 Hakan Lennestal
2003-06-08 23:55 ` Martin List-Petersen
2003-06-09  8:47   ` Hakan Lennestal
2003-06-08 23:35 Erik Andersen
2003-06-09  0:09 ` Paul Jakma
2003-06-09  1:11   ` Erik Andersen
2003-06-09  0:05 Erik Andersen
2003-06-09  3:39 ` John Shifflett
2003-06-09 18:26   ` Alan Cox
2003-06-09  3:47 Russ Dill
2003-06-09  8:04 ` Russell King
2003-06-09 13:13 Downing, Thomas
2003-06-09 16:49 ` Martin List-Petersen
2003-06-10  4:11 Russ Dill
2003-07-18 23:48 root
2021-01-17 17:51 nipponmail

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030608194421.GA92559@kilmainham.stdlib.net \
    --to=colm@stdlib.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=public@mikl.as \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.