[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: SUN RPC code is DFSG-free



On Sun, Aug 24, 2003 at 04:13:31PM +1000, Anthony Towns wrote:
> > An abbreviated form of the so-called "viral" part of the GPL says that
> > everything you include in a GPLed work must be distributable under the
> > GPL. 
> 
> This isn't quite accurate: it says that it must be distributable under the
> terms of the GPL. That is, if you follow the requirements of the GPL, then
> you're also obeying the requirements of whatever the actual license is.

That's what I said, only longer. And it remains the essence of the
problem here - we _can't_ distribute it under the GPL.

> > From this I can conclude that I need to be able to distribute any
> > given component of the glibc source code under the GPL.
> 
> Which isn't correct.
> 
> You need to be able to distribute the end product under the terms of
> the GPL, which you can; the original parts don't matter, since if you're
> distributing those, you're not bound by the GPL at all.

Consider if a package consisted of two files. One is 'hello.c', and
the other is 'fsf-funding'. The license for hello.c says "You may only
distribute this along with a copy of fsf-funding, md5sum
<value>". The license for the package as a whole says:

 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.

The licensor of the package does not own the copyright to hello.c,
and therefore cannot be construed as implicitly licensing it under the
GPL.

You can "distribute the end product under the GPL". You cannot remove
fsf-funding and distribute the result.

Are you seriously suggesting that this is acceptable under the terms
of the GPL? It's just another form of the invariant sections we've had
so much fun with in the GFDL - data which cannot be detached or
modified.

If not, please refine the statement "You need to be able to distribute
the end product under the terms of the GPL, which you can; the
original parts don't matter, since if you're distributing those,
you're not bound by the GPL at all." appropriately. I believe that
once you have refined it to exclude all the gratuitously non-free
examples I can invent, it will also exclude the sunrpc code.

> Consider, as another example, the following program:
> 
> 	#!/bin/sh
> 	# Capital-AJ version 1.0
> 	# Copyright (c) 2003 Anthony Towns <ajt@debian.org>
> 	# All rights reserved
> 
> 	find /foo -type f | grep 'aj' | while read a; do
> 		x="`echo "$a" | sed 's/aj/AJ/g'`"
> 		mv "$a" "$x"
> 	done
> 
> and the following derivative:
> 
> 	#!/bin/sh
> 	# Capital-AJ version 1.1
> 	# Copyright (c) 2003 Anthony Towns <ajt@debian.org>
> 	# May be freely used/copied/etc under the terms of the GNU GPL v2.
> 
> 	export LANG=C
> 
> 	word="$1"
> 	if [ "$word" = "" ]; then
> 		word="aj"
> 	fi
> 	worduc="`echo "$word" | tr a-z A-Z`"
> 
> 	find /foo -type f | grep "$word" | while read a; do
> 		x="`echo "$a" | sed "s/$word/$worduc/g"`"
> 		mv "$a" "$x"
> 	done
> 
> Version 1.1 and third party derivatives are clearly under the GPL, but
> that doesn't mean you can use it to make a copy of version 1.0 that's
> under the GPL, any more than you can start with a blank page and convert
> that to a copy of version 1.0 without violating copyright.

If this were true, then for all cases where multiple licenses applied
to a given sequence of bytes, then you would have to obey _all_ of
them. In the copyright law we use in this world, you only have to obey
_one_ of them. (Note that this is distinct from combining multiple
sequences of bytes under different licenses into a single work - then
you do have to obey all of them)

Under the GPL, I can take version 1.1, delete the first two stanzas,
replace $word with aj and $worduc with AJ - simple modification to
optimise the script. I now have a copy of version 1.0 that is under
the GPL. At no point did I look at version 1.0 while performing this
optimisation, so it is in no sense a derivative work of 1.0.

If this did _not_ hold, then a corporation would be able to produce a
GPLed program, and a set of modifications which you were not permitted
to make - by implementing them and licensing them differently.

-- 
  .''`.  ** Debian GNU/Linux ** | Andrew Suffield
 : :' :  http://www.debian.org/ |
 `. `'                          |
   `-             -><-          |

Attachment: pgpgMNRYEP0Ke.pgp
Description: PGP signature


Reply to: