LWN.net Logo

public server clause could be problematic

public server clause could be problematic

Posted Sep 24, 2005 0:02 UTC (Sat) by JoeBuck (subscriber, #2330)
Parent article: RMS: The GNU GPL Is Here to Stay (O'ReillyNet)

While I'm sympathetic to the reasons why RMS and others like Bruce Perens have advocated some kind of "public server must serve its own source code" clause, it seems that there are many practical problems with the idea.

For example, RMS says that if the program provides a "download source" button, modifiers can't take that button away. That's fine if you just make a small improvement to the program. But what if the only part of the function you want is a cool string-matching function, and you want to use it in a program that is not a server? Is this legal? And if you craft a loophole to make an exception for that, will some lawyer come up with a "laundering" procedure where you extract the modules one by one through the loophole, and then reassemble them into a new program that doesn't have the "download source button" obligation?

Maybe RMS has an idea of how to solve this, but I haven't seen any evidence that it is even being thought about.


(Log in to post comments)

public server clause could be problematic

Posted Sep 24, 2005 12:50 UTC (Sat) by copsewood (subscriber, #199) [Link]

I think the distinction here is whether or not the operation of a program constitutes a public performance. A server providing a service to its users provides a kind of public performance. A reuse of code from that program for another purpose may or may not, but the license from the reused code will carry over and retain the requirement, such that if this code is ever reassembled into something that does provide a server with users, the licensing requirement for the download button will carry through.

It would take away privacy for a reuse which is not a public performance to require publication for private use of private changes. This privacy need will need to continue to be recognised in a future GPL which is likely to be accepted as respecting freedom in the sense of the right to this kind of privacy. However, once code from a private version requiring the download button for a server version is incorporated into a server version the download button requirement will reactivate.

You could argue that enforcement of this would be difficult, as how does the user of a server know what code provides it ? This, however, is a similar issue to the difficulty of knowing what source code was compiled into a binary distributed version of a program, where other means of obtaining evidence are likely to give the game away to someone who is interested enough.

public server clause could be problematic

Posted Sep 24, 2005 15:03 UTC (Sat) by tzafrir (subscriber, #11501) [Link]

Suppose that the server's code gets actually maintained, does this force the maintainer to keep track of any minor version that has been exposed to the public, just in some user will demand it at some point in the future?

public server clause could be problematic

Posted Sep 27, 2005 14:22 UTC (Tue) by copsewood (subscriber, #199) [Link]

"Suppose that the server's code gets actually maintained, does this force the maintainer to keep track of any minor version that has been exposed to the public, just in some user will demand it at some point in the future?"

My understanding of the download button license requirement is that this does impose the obligation to make all changes available for download, only in respect of the version currently in use while it is in use. The practicality of this requires that the code of the server as currently maintained needs to sit alongside the server and that the download button facility knows the location of the source tree from which the server is compiled or interpreted. Assuming that this source tree is maintained according to instructions which will be distributed along with the license this should not be an onerous obligation.

Another approach which could also meet a historical requirement based on past minor versions, might enable those providing such servers automatically uploading patches to a free-software repository, and these patches being automatically included within the effect of the download button. This technical approach to license compliance would also have benefits for upstream maintainers who may wish to include same patches in the mainstream distribution or popular forked versions of it. Having a more efficient patch distribution mechanism has obvious benefits for patch authors, who want to avoid the effort of repeated application of patches to newly installed mainstream version upgrades.

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds