On Fri, 19 Apr 2002, Craig R Hughes wrote:

> Bart Schaefer wrote:
> 
> BS> Right; the GPL doesn't require you to expose to any third party any
> BS> changes that you make; it just requires you to provide the source code if
> BS> and when you do expose changes to a third party.
> 
> I'm not sure what the GPL requires of you if you modify config files
> which interact programmatically with GPLed code

All config files interact programmatically with the software they're 
configuring.  Whether the config file happens to be written in the same 
language as the software is irrelevant.

> In the case of SA, the config files are really more or less part of the
> program code.  Does that mean ISPs would have to make their changes to
> the code available to their customers, if those customers are allowed to
> edit their user_prefs?

Section 0 says:

"Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program)."

The usual IANAL applies, but I don't think installing SA on a machine you
own and allowing users of the machine to run it can be said to constitute
"copying" or "distribution" to those users.

> ... The problem I'm more concerned with is the config-file-is-code one
> which is a feature of many Perl programs, combined with section 2(b) of
> the GPL which says that you must apply the GPL to any work "that in
> whole or in part _contains_ or is derived from" GPLed code (my
> underlining).  My reading of that is that containing a GPLed piece in
> the distribution of a greater package requires the greater package to
> carry the GPL.

I don't think you're reading 2(b) that wrong, but just because the program
reads and executes a config file doesn't mean that the config file is
"contained" in the "work."  (If the GPL included a definition of a "work"
a lot of this confusion could be avoided.)  "Running the Program is not 
restricted" -- if the config file doesn't become part of the program until 
the program runs, it's not covered.

> ... The last bit of section 2 seems to say that you can distribute the
> GPLed module separately from the non-GPLed part, and then avoid being
> compelled to GPL the whole thing, but if you package them together, the
> whole enchilada need to carry the GPL.

It doesn't really even say that.  "... mere aggregation of another work
not based on the Program with the Program (or with a work based on the
Program) on a volume of a storage or distribution medium does not bring
the other work under the scope of this License."  A GPL'd plugin does not
(in fact, specifically cannot -- "This General Public License does not
permit incorporating your program into proprietary programs") cause the
program into which it plugs to become GPL'd.

On Fri, 19 Apr 2002, Daniel Quinlan wrote:

> Bart Schaefer writes:
> 
> > This, on the other hand, is not clear.  The GPL attempts to apply to the
> > algorithms used in the code as well as to the literal code itself; some
> > people interpret this to mean that if you so much as look at a piece of
> > GPL'd code, you might accidentally learn something, which, if it later
> > affected the way you wrote some other piece of code, would mean that the
> > code you wrote was now also GPL'd.
> >
> > This is obviously a very paranoid interpretation, but not unheard-of.
> 
> It is not a correct understanding of the GPL.  Actually, it's
> completely wrong.  The GPL makes absolutely no claims on algorithms.

I don't know the exact reasoning behind the above claim, but it has been
repeated a number of times recently -- there was a slashdot discussion,
I think, and I've also seen remarks from a person who works at a large
software-company-that-shall-remain-nameless to the effect that their
corporate lawyers interpret the GPL that way.  On a guess, I'd say that
it all comes back to the GPL's use of "work" as a noun without defining
it.  "The work" of a program could be construed to include its algorithms.

> The GPL is not viral.  It cannot "infect" your code.  You must actively
> *copy* GPL code and *put* it into your code for the GPL to apply to the
> derivative work.  At a later date, you could remove all of the GPL code
> (and any code derived from it) and then the work would no longer be
> required to be GPL.

The "viral" meaning goes this way:  I actively copy some GPL'd code X into
my program Y.  The GPL now applies to the *entire* derivative work Z.  I
later remove X from Z; this creates a new work W.  However, all the deltas
from Y to W are GPL'd, because the entirety of Z was GPL'd.  In order to
remove the GPL from W, I have to revert all the way back to X.  As this is
usually impractical if not impossible, the GPL has effectively "infected"
my code.


_______________________________________________
Spamassassin-talk mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/spamassassin-talk

Reply via email to