This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: possible DLL license violations

At 08:58 PM 4/22/2005, you wrote:
>On 4/22/2005 10:56 AM, David Rothenberger wrote:
>>On 4/22/2005 8:52 AM, David Rothenberger wrote:
>>>I ran across a tool called "Trader's Little Helper" at [url removed
>>>because it trips the cygwin spam filter] that includes the
>>>cygwin1.dll, but doesn't provide source code. Even worse, it puts
>>>cygwin1.dll in C:\WINDOWS!
>>I succeeded in contacting the author of this tool this morning and I informed him of the problems and directed him to the cygwin site for more information. I didn't attempt to contact any of the authors of the other packages.
>The author of Trader's Little Helper responded to me. He basically said the following:
>1. He doesn't think shorten or shntool are violating the GPL because they have been around for years.
>2. He doesn't think he's violating the GPL because he's not linking to the cygwin DLL nor modifying it.
>IANAL, but I think that his second point is correct. I still think shorten and shntool are violating the GPL because they *are* linking to the DLL; it doesn't really matter that it hasn't been caught for years - there is no statue of limitations in the GPL.

Well, he does provide sources for 'shorten' in 'shorten-3.6.0.tar.gz' but he
doesn't for the version of 'cygwin1.dll' that he's distributing.  Also, as 
you noted, he is clearly linked against 'cygwin1.dll', even if he doesn't
realize it.  As for the statement about not being in violation because 
of the long history of 'shorten' and friends, I admire his sense of humor.

Overall, the response given is rather typical of those unfamiliar with the 
GPL and/or those who would rather not bother to understand it.  But the fact
is that ignoring a license doesn't mean you exempt from complying with it.
'shorten' and friends are violating the Cygwin license because he is 
distributing them with 'cygwin1.dll' and not providing the sources to the 
distributed Cygwin version.  Seems to me he has four options here:

  1. Add a link on his site to a tarball of the source used to build the 
     version of the Cygwin DLL he's distributing.

  2. Remove the 'cygwin1.dll' he's distributing and point users to the 
     Cygwin site to install it.

  3. Remove the Windows binary from his site.

  4. Port 'shorten' and friends to Windows without using Cygwin.

Any of these put him back in compliance with the GPL, if you don't 
consider the contents of the license file he distributes.  (2) is the
recommended route if he's going to keep using 'cygwin1.dll', though (1)
is also legal.  As to the license distributed with 'shorten', it's safe
to ignore that, since it's more restrictive than the GPL and by linking in 
'cygwin1.dll', he's GPL'd 'shorten' and anything that links in 'shorten's
source.  This is true even if he now chooses either (3) or (4) above as
options going forward.  The existing 'shorten' source and derivations of 
it are GPL'd and its license cannot be changed back to something more 
restrictive.  Since he holds a copyright to the software, he's allowed 
to have alternative licenses as well which are more restrictive for the 
'shorten' source if he wants but that doesn't extend to the Cygwin DLL 
nor does it mean that 'shorten' is not available under the GPL as well.

>So, to me it seems that only shorten and shntool are violating the GPL and not TLH, dBpowerAMP, nor the Nero SHN plugin.

Agreed for 'shorten'.  I haven't looked at any of the other things you 
list here so I can't comment on those.

Oh, of course I'm obliged to say IANAL.  

Larry Hall                    
RFK Partners, Inc.                      (508) 893-9779 - RFK Office
838 Washington Street                   (508) 893-9889 - FAX
Holliston, MA 01746                     

Unsubscribe info:
Problem reports:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]