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