Does GPL apply to software-as-service?

Does GPL apply to software-as-service?

Post by Flacc » Fri, 06 Jul 2001 12:23:51



Consider this:

If Microsoft were to build software-as-service (e.g. subscription Office
package provided over the Internet) using GPL'd code, would they be
obligated to share their implementation?

It seems not, if they don't distribute the binaries - ie just lease its
use as a service over the network.

Is this a potential loop-hole?

I haven't given much thought to the implications, just wondered what
others thought.

 
 
 

Does GPL apply to software-as-service?

Post by Adam Warne » Fri, 06 Jul 2001 14:35:59




> Consider this:

> If Microsoft were to build software-as-service (e.g. subscription Office
> package provided over the Internet) using GPL'd code, would they be
> obligated to share their implementation?

> It seems not, if they don't distribute the binaries - ie just lease its
> use as a service over the network.

> Is this a potential loop-hole?

> I haven't given much thought to the implications, just wondered what
> others thought.

As I've read in gnu.misc.discuss I understand this is a potential loophole
that may be changed in later revisions of the GPL. From the google
archives:

http://groups.google.com/groups?as_q=loophole%20software%20service&as...

For example see this discussion:

http://groups.google.com/groups?hl=en&safe=off&th=51fa6ced6d8e79cb,25...

Regards,
Adam

 
 
 

Does GPL apply to software-as-service?

Post by pip » Fri, 06 Jul 2001 18:25:16



> Consider this:

> If Microsoft were to build software-as-service (e.g. subscription Office
> package provided over the Internet) using GPL'd code, would they be
> obligated to share their implementation?

They would be obligated to give the code to customers they sell it to.
If it just sits on their servers - then no. In any case is would be
highly unlikely that M$ would even want to use GPL code as that would be
a glaring admission that they can't do better themselves. Very bad PR.

Quote:> It seems not, if they don't distribute the binaries - ie just lease its
> use as a service over the network.

yes.

Quote:> Is this a potential loop-hole?

No, I don't think so.

Quote:> I haven't given much thought to the implications, just wondered what
> others thought.

It seems unpractical that the GPL could cover "services". That means
that when you interact with a webserver, mailserver, cvs server or corba
object - you would be deemed to be a "part" of the server or service.
This is ridiculous and would indeed be viral for the GPL to make this
change. When people create objects and services that are available to
the network it is very difficult to see why any one would want this
added inflexibility.

Really the question is what does a "service" mean? Does it mean a web
front end ? Some client application user a server? Some client
application using CORBA or some other distributed technology? Either way
I think is would be very strange to say that either of these interaction
warrant the same license to apply to both the client and the server when
they are in fact two distinct logical entities.

 
 
 

Does GPL apply to software-as-service?

Post by Ayende Rahie » Fri, 06 Jul 2001 20:16:20



Quote:> It seems unpractical that the GPL could cover "services". That means
> that when you interact with a webserver, mailserver, cvs server or corba
> object - you would be deemed to be a "part" of the server or service.
> This is ridiculous and would indeed be viral for the GPL to make this
> change. When people create objects and services that are available to
> the network it is very difficult to see why any one would want this
> added inflexibility.

I agree that it is stupid to try to apply the GPL to stuff like that, but...
[see below].

Quote:> Really the question is what does a "service" mean? Does it mean a web
> front end ? Some client application user a server? Some client
> application using CORBA or some other distributed technology? Either way
> I think is would be very strange to say that either of these interaction
> warrant the same license to apply to both the client and the server when
> they are in fact two distinct logical entities.

If this is true, than it's a big hole in the GPL.
CORBA applications could invoke GPLed CORBA components without needing to be
GPL themselves.
Considering that you can pack nearly anything inside a component, this more
or less nullify the GPL.
There was a case recently about a company that thought that using a GPLed
DLL is enough to not GPL their product, what would happen if they did it as
an out-of-proccess COM object?
This seem to be a way out of the give-back-the-changes-as-well-as-your-code
loop of the GPL.

If this *isn't* true, than you get into even more complicate situation,
where, as you said, a GPL server couldn't be use by non-GPL client.

I guess that there is some sort of middle path, but I think that this is a
very thin line. (What about SOAP, for instance? UDDI?)

 
 
 

Does GPL apply to software-as-service?

Post by pip » Sat, 07 Jul 2001 01:05:30



> or less nullify the GPL.
> There was a case recently about a company that thought that using a GPLed
> DLL is enough to not GPL their product, what would happen if they did it as
> an out-of-proccess COM object?
> This seem to be a way out of the give-back-the-changes-as-well-as-your-code
> loop of the GPL.

> If this *isn't* true, than you get into even more complicate situation,
> where, as you said, a GPL server couldn't be use by non-GPL client.

> I guess that there is some sort of middle path, but I think that this is a
> very thin line. (What about SOAP, for instance? UDDI?)

I can see that the line is indeed thin - but from my point of view,
anything that goes across a network layer (or abstraction) is a separate
entity. A client that uses a CORBA component is not to my mind "part" of
the component, but merely using it. Of course the end effect is the same
- but if software developers feel that strongly then they should not
present a network interface to the world. What will be interesting is
when there are enough cool components that this actually becomes a
problem. Of course GNOME is providing just such a toolbox of goodies.

If we should sanction that for example a CORBA component is just like a
weak linked program, then we'd better look at all protocols again. I
just don't think that there is a direct link. It may seem like it is
because of the way we view object models from a OO point of view, but it
is not so different from simple protocol exchanges such as https and as
such I would feel very uncomfortable if the GPL interfered in this area.

Of course having said that I would not be to happy if I made a whizz
bang super component that some large company decides to use without
giving anything back, of course it looks good on the cv :)

 
 
 

Does GPL apply to software-as-service?

Post by Ayende Rahie » Sat, 07 Jul 2001 06:51:22




> > or less nullify the GPL.
> > There was a case recently about a company that thought that using a
GPLed
> > DLL is enough to not GPL their product, what would happen if they did it
as
> > an out-of-proccess COM object?
> > This seem to be a way out of the

give-back-the-changes-as-well-as-your-code

Quote:> > loop of the GPL.

> > If this *isn't* true, than you get into even more complicate situation,
> > where, as you said, a GPL server couldn't be use by non-GPL client.

> > I guess that there is some sort of middle path, but I think that this is
a
> > very thin line. (What about SOAP, for instance? UDDI?)

> I can see that the line is indeed thin - but from my point of view,
> anything that goes across a network layer (or abstraction) is a separate
> entity. A client that uses a CORBA component is not to my mind "part" of
> the component, but merely using it. Of course the end effect is the same
> - but if software developers feel that strongly then they should not
> present a network interface to the world. What will be interesting is
> when there are enough cool components that this actually becomes a
> problem. Of course GNOME is providing just such a toolbox of goodies.

> If we should sanction that for example a CORBA component is just like a
> weak linked program, then we'd better look at all protocols again. I
> just don't think that there is a direct link. It may seem like it is
> because of the way we view object models from a OO point of view, but it
> is not so different from simple protocol exchanges such as https and as
> such I would feel very uncomfortable if the GPL interfered in this area.

> Of course having said that I would not be to happy if I made a whizz
> bang super component that some large company decides to use without
> giving anything back, of course it looks good on the cv :)

The problem that CORBA can be used to wrap just about anything, so this
basically nullify the affects that the GPL tries to enforce.
Let's say I want to pack KWord's document translation functions. I take them
and convert them so they output something my application understand.
Then I wrap them in a CORBA object, release the code to this, but not to my
application that calls it. Now, apperantly, this isn't violating the GPL,
but if I would've taken and put those functions in the code itself, it
*would* have been a violation. Even if I did it as a seperate, dynamically
loaded library.
What about the ReadLine library, for that matter? If I pack it in CORBA
object, do I get to use it without having to GPL it?
 
 
 

Does GPL apply to software-as-service?

Post by pip » Sat, 07 Jul 2001 08:50:21






> > > or less nullify the GPL.
> > > There was a case recently about a company that thought that using a
> GPLed
> > > DLL is enough to not GPL their product, what would happen if they did it
> as
> > > an out-of-proccess COM object?
> > > This seem to be a way out of the
> give-back-the-changes-as-well-as-your-code
> > > loop of the GPL.

> > > If this *isn't* true, than you get into even more complicate situation,
> > > where, as you said, a GPL server couldn't be use by non-GPL client.

> > > I guess that there is some sort of middle path, but I think that this is
> a
> > > very thin line. (What about SOAP, for instance? UDDI?)

> > I can see that the line is indeed thin - but from my point of view,
> > anything that goes across a network layer (or abstraction) is a separate
> > entity. A client that uses a CORBA component is not to my mind "part" of
> > the component, but merely using it. Of course the end effect is the same
> > - but if software developers feel that strongly then they should not
> > present a network interface to the world. What will be interesting is
> > when there are enough cool components that this actually becomes a
> > problem. Of course GNOME is providing just such a toolbox of goodies.

> > If we should sanction that for example a CORBA component is just like a
> > weak linked program, then we'd better look at all protocols again. I
> > just don't think that there is a direct link. It may seem like it is
> > because of the way we view object models from a OO point of view, but it
> > is not so different from simple protocol exchanges such as https and as
> > such I would feel very uncomfortable if the GPL interfered in this area.

> > Of course having said that I would not be to happy if I made a whizz
> > bang super component that some large company decides to use without
> > giving anything back, of course it looks good on the cv :)

> The problem that CORBA can be used to wrap just about anything, so this
> basically nullify the affects that the GPL tries to enforce.
> Let's say I want to pack KWord's document translation functions. I take them
> and convert them so they output something my application understand.
> Then I wrap them in a CORBA object, release the code to this, but not to my
> application that calls it. Now, apperantly, this isn't violating the GPL,
> but if I would've taken and put those functions in the code itself, it
> *would* have been a violation. Even if I did it as a seperate, dynamically
> loaded library.

Would it ? I thought that library linking was considered to be ok ?
After all people need to use the C library/sockets etc.

Quote:> What about the ReadLine library, for that matter? If I pack it in CORBA
> object, do I get to use it without having to GPL it?

I guess the answer to that would be : "yes". However I think that if
this was the case, it is a clear breech of what the GPL stands for and
should be fought out in the court. But these hypothetical cases do not
IMHO justify any draconian viri like measures. If this were the case I
would side with M$ and condem the altered GPL because it is just _too_
unclear where the line is drawn. Making these changes may illimenate a
theoretical loophole, but will also damage free software. There is yet
to be (as far as I know) a single instance of this problem. Further to
that, companies who are "found out" for doing these will be condemed
almost unaimously by the community and other companuies. These social
pressures should not be underestimated.

So let me end this interesting thread with a question : what is the real
difference between exposing a corba API for example, with some function
call that happens to process data, or using a non GPL web-broswer to
connect to a GPL web server that uses a GPL database to return the data
to the client ? I would suggest that there is no conceptual difference.
Both cases use a protocol, both cases use the network and both cases use
a GPL "component" to process a request and return data. Therefore I find
it hard to see where the line in the sand is drawn and where this line
of reasoning becomes unreasonable for us programmers to have to worry
about. For this very reason there is much merit in the BSD license as at
least it is clear what "free" means. While I very much admire the GPL
and the thinking behind it, I do worry that the FSF are sometimes too
fundamentalist for their own good and actually place restrictions on
their own code which may not be in the interestd of the very people the
GPL was formed to protect. So, I hope that the FSF tread carefully and
take the wider picture into account for the greater good and don't
prevent networked objects from falling into the GPL aggregation term.

 
 
 

Does GPL apply to software-as-service?

Post by Ayende Rahie » Sat, 07 Jul 2001 22:11:02




> > The problem that CORBA can be used to wrap just about anything, so this
> > basically nullify the affects that the GPL tries to enforce.
> > Let's say I want to pack KWord's document translation functions. I take
them
> > and convert them so they output something my application understand.
> > Then I wrap them in a CORBA object, release the code to this, but not to
my
> > application that calls it. Now, apperantly, this isn't violating the
GPL,
> > but if I would've taken and put those functions in the code itself, it
> > *would* have been a violation. Even if I did it as a seperate,
dynamically
> > loaded library.

> Would it ? I thought that library linking was considered to be ok ?
> After all people need to use the C library/sockets etc.

Yes, it would.
The libraries that you mention are LGPL.
You can't even link to GPL library without GPLing your code.
http://slashdot.org/article.pl?sid=01/05/23/1723215&mode=nested
For some detials.

Quote:> > What about the ReadLine library, for that matter? If I pack it in CORBA
> > object, do I get to use it without having to GPL it?

> I guess the answer to that would be : "yes". However I think that if
> this was the case, it is a clear breech of what the GPL stands for and
> should be fought out in the court. But these hypothetical cases do not
> IMHO justify any draconian viri like measures. If this were the case I
> would side with M$ and condem the altered GPL because it is just _too_
> unclear where the line is drawn. Making these changes may illimenate a
> theoretical loophole, but will also damage free software. There is yet
> to be (as far as I know) a single instance of this problem.

See above, it's not too far off from what happened.

Quote:> Further to
> that, companies who are "found out" for doing these will be condemed
> almost unaimously by the community and other companuies. These social
> pressures should not be underestimated.

Yes, so?
It's *legal*, and GPL-PR hardly ever has something to do with purchase
desicion of the consumer.

Quote:> So let me end this interesting thread with a question : what is the real
> difference between exposing a corba API for example, with some function
> call that happens to process data, or using a non GPL web-broswer to
> connect to a GPL web server that uses a GPL database to return the data
> to the client ?

This is more clearer, the web browser uses a well-defined interface that
isn't GPL (namely, HTTP), it doesn't rely on GPL to do its stuff.
An application using a CORBA component is relying on this component to do
some of its work
[Snip a long expalantion that didn't really explain anything]

I *know* that the difference is there, I just can't quite express it in
words.
Damn!

Quote:> I would suggest that there is no conceptual difference.
> Both cases use a protocol, both cases use the network and both cases use
> a GPL "component" to process a request and return data. Therefore I find
> it hard to see where the line in the sand is drawn and where this line
> of reasoning becomes unreasonable for us programmers to have to worry
> about.

You are right, I can't think of anyway to express this that wouldn't be
ridiculously wide.

Quote:> For this very reason there is much merit in the BSD license as at
> least it is clear what "free" means.

To qoute Theo:
"[BSD licensed software] must be free to all (be they people or companies),
for any purpose they wish to use it, including modification, use, peeing on,
or even integration into baby mulching machines or atomic bombs to be
dropped on Australia."

Quote:> While I very much admire the GPL
> and the thinking behind it, I do worry that the FSF are sometimes too
> fundamentalist for their own good and actually place restrictions on
> their own code which may not be in the interestd of the very people the
> GPL was formed to protect. So, I hope that the FSF tread carefully and
> take the wider picture into account for the greater good and don't
> prevent networked objects from falling into the GPL aggregation term.

I think I'll email them and ask them about it, would be interesting to learn
what their reply would be.

I think what is need is something like the GPL, that doesn't spread to other
code. (No, LGPL isn't quite it)

 
 
 

Does GPL apply to software-as-service?

Post by Craig Kelle » Sun, 08 Jul 2001 02:29:42






> > > The problem that CORBA can be used to wrap just about anything, so this
> > > basically nullify the affects that the GPL tries to enforce.
> > > Let's say I want to pack KWord's document translation functions. I take
> them
> > > and convert them so they output something my application understand.
> > > Then I wrap them in a CORBA object, release the code to this, but not to
> my
> > > application that calls it. Now, apperantly, this isn't violating the
> GPL,
> > > but if I would've taken and put those functions in the code itself, it
> > > *would* have been a violation. Even if I did it as a seperate,
> dynamically
> > > loaded library.

> > Would it ? I thought that library linking was considered to be ok ?
> > After all people need to use the C library/sockets etc.

> Yes, it would.
> The libraries that you mention are LGPL.
> You can't even link to GPL library without GPLing your code.

Not quite true, libstdc++3 (and pre-releases of) is GPL -- the
copyright holders explicity allow one to link against it wihtout
incurring any GPL penalties.

Readline is about the only evil library out there; and guess what
happened?  BSD-licenced readlines started apearing.

  [snippage]

--
It won't be long before the CPU is a card in a slot on your ATX videoboard


 
 
 

Does GPL apply to software-as-service?

Post by Ayende Rahie » Sun, 08 Jul 2001 04:51:08







> > > > The problem that CORBA can be used to wrap just about anything, so
this
> > > > basically nullify the affects that the GPL tries to enforce.
> > > > Let's say I want to pack KWord's document translation functions. I
take
> > them
> > > > and convert them so they output something my application understand.
> > > > Then I wrap them in a CORBA object, release the code to this, but
not to
> > my
> > > > application that calls it. Now, apperantly, this isn't violating the
> > GPL,
> > > > but if I would've taken and put those functions in the code itself,
it
> > > > *would* have been a violation. Even if I did it as a seperate,
> > dynamically
> > > > loaded library.

> > > Would it ? I thought that library linking was considered to be ok ?
> > > After all people need to use the C library/sockets etc.

> > Yes, it would.
> > The libraries that you mention are LGPL.
> > You can't even link to GPL library without GPLing your code.

> Not quite true, libstdc++3 (and pre-releases of) is GPL -- the
> copyright holders explicity allow one to link against it wihtout
> incurring any GPL penalties.

Then it's not what I would call GPL.
It's a GPL with exception.

Quote:> Readline is about the only evil library out there; and guess what
> happened?  BSD-licenced readlines started apearing.

Good.
But the FSF wants all libraries to be GPL, straight GPL.
 
 
 

Does GPL apply to software-as-service?

Post by Donal K. Fellow » Tue, 10 Jul 2001 22:26:44




>> Readline is about the only evil library out there; and guess what
>> happened?  BSD-licenced readlines started apearing.

> Good.  But the FSF wants all libraries to be GPL, straight GPL.

So?  I do not need to accede to their requests when it comes to the
business of choosing how to license libraries that *I* write, and nor
does anyone else...

Donal.
--
"Windows is a car with square wheels (architecture) and a huge engine (hype,
 etc.), capable of of making the car move despite the square wheels.  Linux
 is a car with round wheels but a small engine, capable of making the car go

 
 
 

Does GPL apply to software-as-service?

Post by Tom Wilso » Tue, 10 Jul 2001 22:57:16





>>>Readline is about the only evil library out there; and guess what
>>>happened?  BSD-licenced readlines started apearing.

>>Good.  But the FSF wants all libraries to be GPL, straight GPL.

> So?  I do not need to accede to their requests when it comes to the
> business of choosing how to license libraries that *I* write, and nor
> does anyone else...

That fact seems to ellude a lot of people.
 
 
 

1. GPL question: including a GPL program in a software package

I posted this question in gnu.misc.discuss, but have not yet gotten a
response, so I thought I would try this group, since my software runs on
Linux.  Hopefully it is an appropriate question for this group.

OK, I've just looked through a copy of the GPL.  (I confess that I
didn't read the whole license thoroughly.)  And I am not sure whether
the GPL allows the following: I'm considering including a GPLed program
in a software package I will be releasing.  (The package is free
software (but not GPL), but I may charge for extensions to it in the
future.)  The GPLed program is a Perl script that will be used to
obtain data from a web site needed by my program.  My program, which is
a compiled executable, will probably use a fork and exec to execute the
Perl program and obtain the resulting data (from a file or whatever).
Also, my program will be written so that other scripts or programs can
be used - plugged in - instead of this GPLed Perl program.

My question is - in the above case, if I include the Perl program with the
release of my program, will my program need to be released under the GPL?
Since the Perl script is not a library being used by my program and is not
being extended to create my program's functionality, I would expect that
my program does not need to be GPLed; but I can't tell for sure from the
license.

The clause in the license that appears to apply to this case is:

    b) You must cause any work that you distribute or publish, that in
    whole or in part contains or is derived from the Program or any
    part thereof, to be licensed as a whole at no charge to all third
    parties under the terms of this License.

I think the interpretation hinges on what is meant by "contains", which
doesn't appear to be explicitly defined in the license.

If the answer to my question is that my software does indeed need to be
GPLed, what about if I release the software without the Perl program, but
include instructions for users who want to use that program as the "plug-in
data-retrieving script" - that they download it and set it up to work with
my program?

Thanks!
--
Jim Cochrane

2. wireless networking

3. Which GPL applies?

4. NewB Question.. Please help.

5. Apply every patch??? or Uninstall unused services

6. non X graphical world wide web browser

7. Q: GPL license for web services code?

8. Trying to FDISK a drive with disk manager JULY 1995 CD

9. Year 2000 patch: to apply or not to apply?

10. GPL GPL?

11. Funding GPL projects or funding the GPL?

12. Gtk+ is *L*GPL (Was: Qt goes GPL)

13. offtpic: GPL driver vs. non GPL driver