Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-29 Thread Tzeng, Nigel H.


On 12/27/11 11:37 AM, Clark C. Evans c...@clarkevans.com wrote:

First, thank everyone for their responses.  I especially
enjoy the reading material that Rick Moen has referenced.

On Tue, Dec 27, 2011, at 10:07 AM, Tzeng, Nigel H. wrote:
 If it's not a derivative work then it's not a derivative
 work and you should have no heartache.  If it is a
 derivative work then you have legal recourse to correct it.

I'm concerned about the case where a shim/adapter could be
ruled as derivative work and as such its distribution of
such could be prohibited under copyright law --- but where
the court does not consider the derivative work to include
an independent proprietary component needed to actually use
the derivative in a meaningful way.

Yes, this strikes me as likely.  An independent web service as suggested
in your scenario is unlikely to be a derivative work.

Please note that my scenario is different, I'm talking
about a competitor who would alter/transform/modify our
work in order to add proprietary functionality -- not
simply use it via its public interface.

 Then your scenario of shims and creative
 circumventions isn't a negative but a positive as it
 enhances both your revenue stream and ecosystem.

I can't disagree more.  This technique, if the GPLv3
offers no defense against it, would permit our competitors
to keep their exclusive proprietary licensing stream
while actively integrating the benefit that our software
would provide without contributing back.  The shim being
an actual anti-contribution since it may confuse users
what is free software and what isn't.

As I said, it's primarily a business decision.  If you are primarily a
consulting firm who's business model is based on billable staff hours then
if you consider your software this important to your value added then I
might not open source it at all.

If you are a product company your decision may be different.

They are never obligated to contribute their work back to you anyway.
Only to their own customers which may or may not ever bother to give it to
anyone else.  So even if your competitor elected to provide their library
as source neither you nor anyone else may ever see it.  It may also be in
a deeply forked form not readily reusable by you.

My impression is no form of open source is likely to ever give you the
level of protection you desire. If nothing else my understanding is that
if they are contracted on a work for hire basis to write a shim from your
code to any proprietary library (theirs or anyone else's) then no
distribution occurs and no licensing clause is triggered.  GPL v3
explicitly addresses work for hire as not being a distribution.

Regarding MySQL and their licensing strategy...lets just say that they
leveraged any ambiguity to their greatest advantage.

Most companies will likely be very conservative in their approach if the
pain of paying you is low enough to be not worth the bother to attempt to
circumvent.  At some point cost is very secondary to service.  Given that
Oracle was likely quite a bit more than any mySQL commercial license
anyway...

If your software has such a structure where adding a proprietary library
is easily done via a shim then having a real plug-in architecture and
charging for an Enterprise version of your code strikes me as a good
balance between open and a viable revenue stream.

Besides, all the mental and emotional effort spent defending your assets
in court is effort not spent on actually improving your core product
whether that's billable hours or product sales.  That's potentially even
more deadly than infringement.

That's also ignoring any monetary aspect.  If you don't have a sufficient
legal war chest to assert your rights in court how much does it really
matter against an aggressive and unscrupulous competitor?

If your risk tolerance is this low then open source is not likely the
right sleep comfortably at night answer for you.  Your source will be
out there and if actually useful then someone will likely be using it in a
way you probably wouldn't like.

___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-27 Thread Rick Moen
Quoting Clark C. Evans (c...@clarkevans.com):

 I think MySQL AB's licensing strategy is offered in this
 forum as an overreach.  In  particular, Larry Rosen argues 
 that there is no derived work when an application simply 
 uses MySQL as intended via its public interface, even if 
 the application relys upon specific MySQL functionality.

MySQL AB's sales staff is reputed to have made claims to customers that
were insupportable.  (Whether that thus constitutes a licensing strategy 
I would not know, but I'm generally not quite that cynical.)  That is, 
the sales staff were reputed to have told customers that, if they used
any proprietary software whatsoever in conjunction with MySQL in any
way, then the fact that MySQL's client libraries were under GPLv2 with a
meant that the customer was obliged to purchase a for-money licence to
use MySQL Enterprise instead of using an instance under open source
licensing.

This was a doubtful argument in several ways at the same time:

1.  MySQL wasn't pure GPLv2 anyway, but GPLv2 with a GPL linking
exception clause of some sort (something like Classpath's; I don't care
enough to look up particulars at the moment).

2.  Even if the linking exception clause weren't present, the implied
notion that _any_ ancillary software is inherently a derivative work of
MySQL RDBMS and its access libraries is laughable.

3.  If the problem is licensing of the access libraries, then there are 
also several other usable access libraries, some under liberal academic 
licences.  (Reportedly, the sales staff carefully failed to mention
that.)

Which is mostly just a case in point about why a businessman who talks
directly to salesman and believes what they say without investigation
has a fool for a negotiator.

-- 
Rick Moen  'Decimate' when referring to killing one 
r...@linuxmafia.comin ten.  'Octomate' when referring to the 
McQ!  (4x80)   cephalopod dating site.  -- FakeAPStylebook
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-27 Thread John Cowan
Rick Moen scripsit:

 MySQL AB's sales staff is reputed to have made claims to customers
 that were insupportable.  (Whether that thus constitutes a licensing
 strategy I would not know, but I'm generally not quite that cynical.)

Maybe not, but lying to your customers is definitely a *business*
strategy.  Whether or not MySQL AB employed it, my first employer
certainly did.  Their salesmen were told to say the software could do
anything the customer asked for, and the programmers (including me) had
the job of cashing out these promises, however extravagant.

I eventually got sick of this and left, whereupon some enterprising
person issued a post-final paycheck in my name and forged my signature
to it.  Shortly after, the company collapsed.  Four equally bogus
companies later, the principals finally found themselves under arrest.

 Which is mostly just a case in point about why a businessman who talks
 directly to salesman and believes what they say without investigation
 has a fool for a negotiator.

*shrug*   Unbiased advice is always hard to come by.

-- 
John Cowan  co...@ccil.org  http://www.ccil.org/~cowan
Raffiniert ist der Herrgott, aber boshaft ist er nicht.
--Albert Einstein
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-27 Thread Thomas Schneider

Good answer, John!

Same with me, deceniums agao, at GEISCO (General Electric Information 
Services).


But you do *never know* what the future does bring ...

** unless you actively do try to INFLUENCE it (the future of human 
beeings) **


Watch me at Thomas.Schneider.Wien, at FaceBook, Skype, etc...

Then you will know ;-)

Thomas Schneider.

PS: AND: I will definitely need help from many, many individual humans :-)

=
Am 27.12.2011 19:53, schrieb John Cowan:

Rick Moen scripsit:


MySQL AB's sales staff is reputed to have made claims to customers
that were insupportable.  (Whether that thus constitutes a licensing
strategy I would not know, but I'm generally not quite that cynical.)

Maybe not, but lying to your customers is definitely a *business*
strategy.  Whether or not MySQL AB employed it, my first employer
certainly did.  Their salesmen were told to say the software could do
anything the customer asked for, and the programmers (including me) had
the job of cashing out these promises, however extravagant.

I eventually got sick of this and left, whereupon some enterprising
person issued a post-final paycheck in my name and forged my signature
to it.  Shortly after, the company collapsed.  Four equally bogus
companies later, the principals finally found themselves under arrest.


Which is mostly just a case in point about why a businessman who talks
directly to salesman and believes what they say without investigation
has a fool for a negotiator.

*shrug*   Unbiased advice is always hard to come by.




--
Thomas Schneider (Founder of www.thsitc.com) Member of the Rexx Languge 
Asscociation (www.rexxla.org) Member of the NetRexx Developer's Team 
(www.netrexx.org)

___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-27 Thread Clark C. Evans
John,

Thank you for your reply.  

On Tue, Dec 27, 2011, at 11:18 AM, John Cowan wrote:
  Does the GPL prevent the distribution of M if the 
  work it relies upon, P, isn't compatibly licensed?
 
 Web browsers rely on web servers to provide most of their function
 (take it from someone who was recently cut off from the Internet for
 three whole days), and also on the entire Internet infrastructure of
 routers and so on.  Most of this infrastructure, and many web servers,
 runs proprietary software, but nobody argues that a GPLed web browser
 can legally interact only with GPLed servers using GPLed infrastructure.

I'm not arguing for this interpretation, this would be a 
restriction on how software may be used (clearly non-free).

You offered earlier a thoughtful remark:

| Microsoft grants explicit permission to use its SDKs to 
| construct software that is intended to run on Windows.  
| If it happens to run on non-Windows systems such as 
| ReactOS or Wine, that is not the developer's fault. 

So, I look at it in a similar manner: if a derivative work
in the form of a shim/adaptation can be used as advertised
using only free software, then the requirement that the
whole work be licensed in a compatible manner is met.
That the shim or adapter might work with a proprietary 
implementation of that same free software is an acceptable
outcome.  It is the user's right to operate their copy of
the software with a proprietary implementation.

With this view, if a derivation (shim or adaption) requires
proprietary software (with no open source substitutes) in
order to function as expected, then the whole of the
work, and all its parts, regardless of how they are
packaged has not been compatibly licensed.  In this case,
while the author may wish to distribute their improvement 
under the GPL, they are barred from doing so under 5(c)
since their improvement effectively requires that one
obtain a proprietary license to enjoy the derived work.

So, back to your question.  Given my interpretation, the
only issue with a GPL'd web browser might be the inclusion
of features that only work in combination with a proprietary 
web server (and lack an open source implementation).  In
this case, there are three options: (a) make an exception
in the license, this is what the System Libraries stuff
is all about, (b) implement the quirks/features of the 
proprietary web server as a derived work from an open 
source web server, or (c) use a different license.  

I think that (b) is a very fair tradeoff.  If a vendor
would like to add support for proprietary webserver
features to a GPL'd web browser, they should be willing to
provide a reference implementation with the complete
functionality they wish to incorporate.  How else could
one only using free software take advantage of the feature
they have added to the web browser?  How else could you
maintain this addition to the commons and know it works?

On Tue, Dec 27, 2011, at 02:49 AM, John Cowan wrote:
  My question involves 3 works, not 2.  We have a original 
  work O, a derived work D (O + a shim/adapter), and an 
  independent proprietary work P; where D derived from O 
  under copyright law, D relies upon P for its operation, 
  and where P has no substitutes.  I am assuming that by 
  copyright law the author of O can restrict the distribution 
  of D.  Let's further assume that P has no substitutes, so
  that its functionality is not available under a license
  compatible with the GPLv3.  So, my question is if the GPLv3 
  would restrict the distribution of D due to its dependence 
  on this independent and proprietary work P.
 
 As a worst case, the behavior of P can be reverse engineered,
 since it is communicating openly with D in a way that can be
 analyzed.

I think this misses the point entirely.  If it's easy
enough to embed proprietary functionality via shims
without providing an open source implementation of the
complementary functionality, then copyleft doesn't really
serve much purpose, except for being a nuisance.  The shim
you'd get would be a minimal conversion from your data
structures to something that could be then converted into
theirs... how'd that be useful to reverse engineering?
Why should the burden of reverse engineering be placed
on the one contributing free software to the commons?

 If you don't know about the Affero GPL3, you should look into it.  

Yes, but the AGPLv3 addresses a completely different problem;
it also faces the same challenge I'm outlining.

I appreciate the the thoughtful engagement, I don't see why
the proprietary Internet infrastructure has anything to do
with what I'm discussing since I could create  test just 
about anything using a set of networked virtual machines.

Best,

Clark
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-27 Thread Henrik Ingo
On Tue, Dec 27, 2011 at 5:07 PM, Tzeng, Nigel H. nigel.tz...@jhuapl.edu wrote:
 I'm trying to find an appropriate licensing strategy
 for our company, and I'm expressly trying to prevent
 and understand the sort of shims that seem to be
 standard industry practice.  If our work can't be
 protected from these creative circumventions by
 the GPL, then we probably won't use this license.

 If it's not a derivative work then it's not a derivative
 work and you should have no heartache.  If it is a
 derivative work then you have legal recourse to correct
 it.

 IMO, appropriate licensing strategy is far more a
 business decision than a legal one.  If you wish to develop



 As others have suggested you can look at Affero
 if you think vanilla GPL v3 too lax.

Note that Affero GPL does not in any way change the question of what
is a derivative work and how you could insulate yourself from effects
of (A)GPL by using a Web API or other shim approach. Since the FSF
does not define what is a derivative work of something else, it
obviously couldn't possibly do so.

If A is a service and B is a program using this service over a HTTP Web API, and

1) A is licensed under the GPL, or
2) A is licensed under the AGPL

In both cases #1 and #2 B could be licensed as whatever, the only
difference is that in #2 the person who makes available A as a service
has to make the source code of A available, as set forth by AGPL. The
whole point of the derivative work debate is that the license of A
does not have any effect on B.

(Unless of course you are of the opinion it does have an effect, in
which case that should be your opinion equally for both #1 and #2
anyway.)

henrik

-- 
henrik.i...@avoinelama.fi
+358-40-8211286 skype: henrik.ingo irc: hingo
www.openlife.cc

My LinkedIn profile: http://www.linkedin.com/profile/view?id=9522559
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-27 Thread Chris Travers
On Tue, Dec 27, 2011 at 8:37 AM, Clark C. Evans c...@clarkevans.com wrote:
 First, thank everyone for their responses.  I especially
 enjoy the reading material that Rick Moen has referenced.

 On Tue, Dec 27, 2011, at 10:07 AM, Tzeng, Nigel H. wrote:
 If it's not a derivative work then it's not a derivative
 work and you should have no heartache.  If it is a
 derivative work then you have legal recourse to correct it.

 I'm concerned about the case where a shim/adapter could be
 ruled as derivative work and as such its distribution of
 such could be prohibited under copyright law --- but where
 the court does not consider the derivative work to include
 an independent proprietary component needed to actually use
 the derivative in a meaningful way.

Two quick points:

1)  Derivation is not contageous.  SCO argued this in their lawsuit
against AIX to absolutely no avail.  Just because A is derivative of B
and B is derivative of C, it doesn't follow that A is derivative of C.
 At least in the US, you have to show that the derived *expressions*
from C made it from B into A.

2)  Copyright has, IMHO, virtually nothing to do with dependencies at
least in the US (IANAL).  Copyright only protects expressive elements,
and only to the extent they are separable from functional elements.
This is why I don't think that #include readline.h is sufficient to
create a derivative work, and even if it was, I could certainly create
equivalent macros in my own code, and create a minimal .h file with
only the exports I wanted ordered in a different order, and then there
would be no derivative work at least in US law (don't know about
Europe).  Basically a .h file is ideally a set of facts (namely
function prototypes).  If there are additional expressive elements I
don't see why those can't be stripped out.  In the US, facts cannot be
copyrighted, so I can copy all the whitepages directory listings in
the country without violating anyone's copyrights (in Europe I know
this is different however).

 In this case, does the GPLv3 create an additional contractual
 condition for the distribution of the covered work in 5(c)
 that would forbid the distribution of the shim if the required
 proprietary component is not also licensed compatibly?

If copyright law doesn't require permission, then you don't need
permission.  And even the FSF draws a line between where things are in
one process and where they communicate over pipes or sockets.


 Or, is 5(c) of the GPL essentially the same as the OSL and
 limited to only the scope of a derivative work.  In this
 interpretation, you rely upon convincing the court that the
 entire derived work necessarily includes a component which
 is required for it's operation.  That seems much harder case.

Interesting thought experiment.

Suppose I write a license functionally identical to the GPL (we'll
call it the MGPL) but with the provision that all software written
must be licensed under the same license if:

1)  It is written by a person who is bound to the license by
distributing MGPL'd software, and
2)  Interacts with the MGPL'd software in any way.

So if I write an MGPL'd web server than anyone who distributes this
web server and also makes a web browser must license the web browser
under the MGPL.

I wonder if that would even meet the OSD, particularly the bit about
not restricting other software?  Might it be an edge case?

 IMO, appropriate licensing strategy is far more a
 business decision than a legal one.  If you wish to develop
 an open source community around your product then
 GPL v3 + a proprietary license option like MySQL AB
 offered is safe enough for most practical purposes.

 I think MySQL AB's licensing strategy is offered in this
 forum as an overreach.  In  particular, Larry Rosen argues
 that there is no derived work when an application simply
 uses MySQL as intended via its public interface, even if
 the application relys upon specific MySQL functionality.
 It seems that Rick Moran and many others agree.

 Please note that my scenario is different, I'm talking
 about a competitor who would alter/transform/modify our
 work in order to add proprietary functionality -- not
 simply use it via its public interface.

MySQL AB has argued many different things in the past in this area.
They generally drew the line though between using a standardized
interface like ODBC and directly linking to their libraries.  ISTR a
controversy on Slashdot regarding a statement that MySQL AB would
treat exporting the API's of the client libs via a web service as an
attempt to circumvent their licensing.

 Then your scenario of shims and creative
 circumventions isn't a negative but a positive as it
 enhances both your revenue stream and ecosystem.

 I can't disagree more.  This technique, if the GPLv3
 offers no defense against it, would permit our competitors
 to keep their exclusive proprietary licensing stream
 while actively integrating the benefit that our software
 would provide without 

Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-26 Thread Clark C. Evans
On Sun, Dec 25, 2011, at 01:01 PM, Rick Moen wrote:
 Quoting Clark C. Evans (c...@clarkevans.com):
 
  What confuses me and what I'm asking here is why licensing 
  professionals focus on two items that I consider irrelevant: 
  (a) what is the type of linking between D and P?
... (b) is D a derived work of P?   What we know is that D 
... is derived from O and that D requires P for its operation.

 Please name one such licensing professional (who is not an FSF
 spokesman).

What was on my mind was this journal article:

 Software Interactions and the GNU General Public License
 By Malcolm Bain in IFOSS L. Rev. Vol 2, No 2 (2010) 
 (http://www.ifosslr.org/ifosslr/article/view/44)

What was also on my mind was an informal side chat
with an attorney on the stack overflow question [1].
I was referred to the GNU FAQ, especially the answer
for plug-ins [2] where the applicability of the copyleft
depends on how the program invokes its plug-ins and
aggregation [3] where it says sockets...  are normally
used between two separate programs.  This attorney
said the specific details of the case were necessary
to give any advice, but after my insistence, commented
that the community consensus is likely correct.  

Probably you consider both of these professionals to 
be associated with the free software foundation.  For 
what it's worth, our own corporate attorney doesn't 
have a concern with regard to linking technologies, 
he advices that GPL is quite vague and if we were to 
use it, we should publicly exclaim our interpretation.

To this regard, Larry Rosen's comment [4] is refreshing,
matches my expectations, and is broadly helpful: 
 
 If GPL advocates insist upon distinguishing 
  among types of functional linking, then talented 
  software engineers will avoid disputes by 
  building shims, APIs, or use dynamic linking to 
  accomplish their functional goals.

Unfortunately, this doesn't give me enough guidance on
the applicability of copyleft; specifically with my
3-work scenario where someone uses a shim/adapter to
include proprietary functionality via a WebAPI.  I keep
asking this in this public forum since it matters quite
a bit to the effectiveness of the GPL.  If this sort of
work around is acceptable by the community, then other
than nuance value, there really is no point in copyleft, 
and one should use Apache or keep the work proprietary.

Assuming a shim/adapter creates a derived work under 
copyright law so that its distribution could be limited
based on conditions of the license agreement, does the
GPLv3 actually prevent the distribution of a derived work 
when its operation requires an independent, proprietary 
component that has no free software substitute?  

In particular, does the relation vis-a-via copyright law 
between the adapter/shim to the independent proprietary 
work matter if it's clear enough that the adapter/shim 
cannot operate without the proprietary work? 

Best,

Clark

[1]
http://stackoverflow.com/questions/4351119/if-i-use-gnu-gpl-code-with-my-own-server-side-code-do-i-need-to-open-my-server/
[2] http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins
[3] http://www.gnu.org/licenses/gpl-faq.html#MereAggregation
[4]
http://projects.opensource.org/pipermail/license-discuss/2011-December/91.html
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-25 Thread Clark C. Evans
On Thu, Dec 22, 2011, at 01:34 PM, Rick Moen wrote:
 You know, Clark:  Speaking for myself, I have no interest 
 in advising querents about how closely they can lawfully 
 skirt the requirements of copyleft licences, or how they 
 can creatively circumvent those requirements entirely, in 
 order to use copylefted properties in proprietary works.
 
 You keep asking basically the same question, but are seeing 
 scant interest in helping you.  Might be that my view is common.

Your characterization is wholly inaccurate, although
I could see how you might arrive at this conclusion.

My objective by asking this question is to determine if 
the GPL is an appropriate license for our consulting 
organization to release suite of tools and programs
that are currently bundled with our services.  I have 
some doubts since there seems to be a general consensus 
that you can easily use WebAPIs to evade the GPLv2. 

Our general application would be similar to Chris 
Travers' accounting application, and the case I'm 
concerned about would be very similar to what I posted 
in my follow-up.  That is, could a competitor submit a 
set of hooks/menus as a derived work and effectively 
shield proprietary functionality via a WebAPI?  I later 
found Chris Kleisath's blog post that implies that 
Sybase uses a similar technique.

I'm asking, openly, what people's public opinion on this
matter is.  I'm not asking for advice about how I could
incorporate GPL licensed material into a proprietary work.

Best,

Clark

___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-25 Thread Clark C. Evans
Rick,

My question is rather straight-forward.  Does the GPLv3
permit the distribution of derived works that require
an independent and non-free work for its operation [1].
I was under the impression that the Corresponding Source
(all the source code needed to... run the object code)
and 5c (the whole of the work, and all its parts, 
regardless of how they are packaged) would effectively
prevent this sort of distribution.  However, this seems
not to be the case.

If so, and this seems to be the consensus I'm hearing, 
then I think the GPLv3 is ineffective; more of a nuance 
than effectively protecting the free commons.  Since, 
if I wish to distribute an extension of GPL'd work, 
all I have to do is factor out the critical parts of 
the my work and make them available as an independent 
and proprietary web service. 



On Fri, Dec 23, 2011, at 03:52 AM, Rick Moen wrote:
 I doubt very much that the recent queries here qualify as 
 that variety of public service.  

You are being unnecessarily argumentative.  I'm 
trying to find an appropriate licensing strategy 
for our company, and I'm expressly trying to prevent
and understand the sort of shims that seem to be 
standard industry practice.  If our work can't be 
protected from these creative circumventions by 
the GPL, then we probably won't use this license.

It's my position that if you wish to create a derived
work that incorporates proprietary functionality, 
you should also provide an equivalent implementation
under a compatible license.  The style of linking 
and the question if the combined work is also derived 
from the proprietary work are largely irrelevant in
my estimation.  Yet, these two considerations keep 
emerging as if they are limitations of the GPL. 

Part of this problem is legal, but the other part 
is what the community accepts as being acceptable 
and that depends upon the public opinion of legal
and technical professionals on this list.  

Best,

Clark

[1] For purposes of this question, you can consider the
dependency to be declared as part of the derived work,
but resolved at runtime via sockets or WebAPI; also 
assume that the derived work is *not* a modification 
or transformation of the independent, non-free work.
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-23 Thread Chris Travers
On Thu, Dec 22, 2011 at 2:00 PM, Lawrence Rosen lro...@rosenlaw.com wrote:
 Rick Moen wrote:
 You know, Clark:  Speaking for myself, I have no interest in advising
 querents about how closely they can lawfully skirt the requirements of
 copyleft licences, or how they can creatively circumvent those
 requirements entirely, in order to use copylefted properties in
 proprietary works.

 You keep asking basically the same question, but are seeing scant
 interest in helping you.  Might be that my view is common.

 Might be, but it is not unanimous. Indeed, I'm glad to advise companies how
 to circumvent the *purported* and *frequently misunderstood* requirements of
 the GPL.

Good for you (I mean that).  As I say in the LedgerSMB project we hold
API's (however invoked) to be freely usable with the minor exception
that inheritance probably crosses the line into derivative works land
(because once inheritance is much more expressively intimate than mere
linking).

 My opinion of the GPL licenses is that they do not prohibit the use of
 so-called creative circumventions to avoid having to disclose
 non-derivative works, despite the desire of some to call it morally evil.
 Linking GPL software to proprietary software is legal as long as one doesn't
 create a derivative work. If GPL advocates insist upon distinguishing among
 types of functional linking, then talented software engineers will avoid
 disputes by building shims, APIs, or use dynamic linking to accomplish their
 functional goals. More power to them!

The only caution I would give here is what I clearly stated in my
first reply.  The GPL is not only a legal document but also to some
extent a social contract as well.  In general what is legal under the
license and what is beneficial in skirting that edge may be separate,
and taking on the wrath of the community is not so good however a
court might rule.  The social costs of violating accepted norms may be
significant even if the action is technically legal.  Similarly even
if technically infringing (i.e. some interpretations of the BSD
licenses are incompatible with some interpretations of the GPL v3),
staying within accepted norms will never give you trouble.

Thus in general I think one is generally better off talking with
upstream projects and trying to get them on board.

Best Wishes,
Chris Travers
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-23 Thread Rick Moen
Quoting Chris Travers (ch...@metatrontech.com):

 Good for you (I mean that).  As I say in the LedgerSMB project we hold
 API's (however invoked) to be freely usable with the minor exception
 that inheritance probably crosses the line into derivative works land
 (because once inheritance is much more expressively intimate than mere
 linking).

I just wanted to add that I am a great admirer of Larry Rosen's work 
in advising about the _purported_ and _frequently misunderstood_
requirements of GNU GPL (and others), and have been known to assist with
that myself, in various small ways (and not even as consulting
opportunities).  

For example, in bygone days the sales staff at MySQL AB are reputed to
have spread some quite doubtful information about licensing requirements
for software used with MySQL, and I've tried to do my part to debunk
those claims.

I doubt very much that the recent queries here qualify as that variety
of public service.  

-- 
Rick MoenSo, this SEO copywriter walks into a bar, grill, 
r...@linuxmafia.com  pub, public house, Irish bar, bartender, drinks, 
McQ!  (4x80) beer, wine, liquor.  -- Michael Karlsson  
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-23 Thread Chad Perrin
On Fri, Dec 23, 2011 at 03:38:04AM -0800, Chris Travers wrote:
 
 Thus in general I think one is generally better off talking with
 upstream projects and trying to get them on board.

Take the most restrictive reasonable interpretation of both if you want
to play it safe.  After all, a change in the upstream project's
maintainership could get you in a lot of trouble if you rely entirely on
the legally non-binding word of a project maintainer.

-- 
Chad Perrin
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-23 Thread Lawrence Rosen
Chad Perrin wrote:
 Take the most restrictive reasonable interpretation of both if you want
 to play it safe.

That's true as far as it goes but leaves out the fun part of the analysis.
The evaluation of risk -- particularly legal risk -- involves the analysis
of many factors. Sometimes the most restrictive reasonable interpretation
is way beyond what actual risks exists: Who will have standing to sue? What
are potential damages? Is an injunction likely? Can I easily design-around
or re-implement? What is the timeframe of the risk? And with regard to this
irrational fear of the reach of the GPL regarding functional linking that is
but one minor factor in a complex derivative work analysis, what is the risk
that some court will force me to disclose my *copyright-independent* crown
jewel proprietary stuff or give away my patents?

/Larry


 -Original Message-
 From: license-discuss-boun...@opensource.org [mailto:license-discuss-
 boun...@opensource.org] On Behalf Of Chad Perrin
 Sent: Friday, December 23, 2011 9:49 AM
 To: license-discuss@opensource.org
 Subject: Re: [License-discuss] GPL and proprietary WebAPIs
 
 On Fri, Dec 23, 2011 at 03:38:04AM -0800, Chris Travers wrote:
 
  Thus in general I think one is generally better off talking with
  upstream projects and trying to get them on board.
 
 Take the most restrictive reasonable interpretation of both if you want
 to play it safe.  After all, a change in the upstream project's
 maintainership could get you in a lot of trouble if you rely entirely
 on
 the legally non-binding word of a project maintainer.
 
 --
 Chad Perrin
 ___
 License-discuss mailing list
 License-discuss@opensource.org
 http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-23 Thread John Cowan
Lawrence Rosen scripsit:

 And with regard to this irrational fear of the reach of the GPL
 regarding functional linking that is but one minor factor in a complex
 derivative work analysis, what is the risk that some court will force
 me to disclose my *copyright-independent* crown jewel proprietary
 stuff or give away my patents?

That, at least, seems like FUD to me.  An injunction against further
distribution of the part-GPL proprietary product, sure.  Disgorgement of
ill-gotten gains, possibly.  Damages for copyright violation, conceivably.
But that kind of specific performance?  I can't see any common-law
jurisdiction ordering it.

IANAL, TIN{LA,UPL}.

-- 
My corporate data's a mess! John Cowan
It's all semi-structured, no less.  http://www.ccil.org/~cowan
But I'll be carefreeco...@ccil.org
Using XSLT
On an XML DBMS.
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-22 Thread Chris Travers
On Wed, Dec 21, 2011 at 10:26 AM, John Cowan co...@mercury.ccil.org wrote:
 Chris Travers scripsit:

 Now, if linking implies derivation, then isn't the software (and by
 extension *all* Windows software) derivative of Windows?  If that's the
 case then doesn't every developer of Windows software need Microsoft's
 permission to distribute such software?  I don't think so.

 I do think so, but in fact such permission is forthcoming.  Microsoft
 grants explicit permission to use its SDKs to construct software that
 is intended to run on Windows.  If it happens to run on non-Windows
 systems such as ReactOS or Wine, that is not the developer's fault.
 In this case of NDISwrapper, the Windows drivers that it wraps are
 licensed to run on the hardware they are being used on, since almost
 every PC is licensed to run Windows whether it actually does so or not.


But wait..  We didn't say licensed to run Windows.  We are talking
about Microsoft's legal right to prevent distributions of derivative
works.  The fact that hte hardware may have Windows licenses is
irrelevant as to whether a derivative work of Windows can be
distributed in the first place, or am I missing something?

In fact, if we go that route, why couldn't Microsoft have just revoked
Netscape's license to distribute Windows software and killed the
competition that way?

Best Wishes,
Chris Travers
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-22 Thread Clark C. Evans
On Wed, Dec 21, 2011, at 03:01 AM, Chris Travers wrote:
|  Let's suppose that I've working on a Ledger++ program
|  which is a proprietary version of your Ledger SMB that
|  adds awesome multi-state Payroll and Asset Depreciation
|  features.  Only rather than including these features
|  in your code-base, I include only stubs that package
|  up the data each feature needs, calls a proprietary
|  web service, and returns the data.
| 
| Ok.  So far so good.
| 
|  So, about 5% of my code is a bunch of hooks, while 95% of
|  my Ledger+ code remains proprietary.  I release the stubs
|  under the GPL license... but effectively, the features
|  I've added are completely useless and non-operational
|  unless you've paid for my web service subscription.
| 
| Well, technically you'd probably release under the LGPL or BSD
| license, sort of like nVidia does with their stubs for their Linux
| video drivers.  Again this isn't a new thing.  You see a surprising
| amount of it in Linux (ndiswrapper, the nVidia drivers that RMS hates,
| etc).

I don't understand why it'd matter how the stubs are licensed,
if the GPL doesn't have any ability to jump over a network.

|  My reading of the GPLv3 is that it uses copyright law
|  to determine when you've made a modification, but, the
|  condition to distribute your modification goes far beyond
|  this limitation, including the whole of the work, and all
|  its parts, regardless of how they are packaged.
| 
| That's not my reading.  My reading is that the license tries to get
| away from the derivative works definition (maybe it's not strict
| enough for Stallman?) through refining definitions.  Of course the GPL
| is not a EULA and it only requires acceptance when you distribute the
| work or derivative works, but that only covers some cases.

The GPLv3 defines a modified work as strictly matching any
adaptation that requires copyright permission.  So, I don't
think there is a re-definition there.  What the GPLv3 does do
is set very broad terms (far beyond the 'modifications') in
exchange for the right to publicly distribute these
modifications:

In Section 1, it requires the Corresponding Source to include
*all* the source code needed to generate, install, and (for an
executable work) run the object code and to modify the work --
excepting system libraries or general purpose tools or
generally available free programs.

So, for my example, I believe the Corresponding Source would
absolutely include the Multi-State Payroll and Asset Depreciation 
code that I'm trying to hide behind a web service.  Since
without this code, I'm not able to run the logic in the hooks
(screen buttons let's say).

In Section 5, the GPLv3 clarifies this intent even more, by
requiring that I license the whole of the work, and all its
parts, regardless how they are packaged.

In my example, I'm attempting to circumvent the GPL via
packaging.  However, it's pretty clear that the whole work
includes the Payroll and Depreciation logic since my hooks
are pretty useless without this complementary logic.

Hence, while the *modifications* to your code are simply hooks,
the conditions for distributing those modifications would go
far beyond what copyright law might consider.  Deservedly, the
GPLv3 uses my hooks (the part covered by copyright law) to
require the release of the exact same source code I am
attempting to shield  pretend aren't part of the derived work.

| Let's try a thought experiment.  Let's say LedgerSMB depended on
| Windows and was essentially using Windows-only API's (and thus linking
| with Windows base libraries).  Now, I recognize that the GPL
| specifically exempts linking to system libraries, but I see no reason
| why system libraries are different from a copyright perspective (i.e.
| this distinction exists solely because RMS wrote it into the license).
| Now, if linking implies derivation, then isn't the software (and by
| extension *all* Windows software) derivative of Windows?  If that's
| the case then doesn't every developer of Windows software need
| Microsoft's permission to distribute such software?  I don't think so.

That's not how the GPLv3 works.  The GPLv3 isn't claiming
your work is a derivation of the base works, it is adding
additional conditions in exchange for the right to 
distribute your modifications.  There is a difference.

Let's pretend that Win32 calls aren't System Libraries.
In this case, let's say I'm making a derived work that
ports your software to work on Windows.  So, while I 
cannot do this directly, I can do it indirectly by
ensuring that Wine supports the Win32 calls I use and
getting my program to work under Wine.  In this case, 
I will have met the conditions in sections 1 and 5 of
the GPL using the code found in Wine.

There is nothing saying that my derived work (that is
generated on Linux under Wine) couldn't be distributed
and executed on the Windows platform.

|  Would you have a problem with the scenario above, perhaps
|  assuming I'm 

Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-22 Thread Clark C. Evans
I found a tangible example of what I'm referring to, complete with
wonderful visuals.  Chris Kleisath at Sybase describes how they
circumvent the GPL license by using intermediate APIs to link
proprietary functionality with GPL licensed works.  Is Chris correct? 
For GPLv2?  For GPLv3?

http://iablog.sybase.com/kleisath/index.php/2009/02/how-to-interface-proprietary-code-with-gpl-code/



___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-22 Thread John Cowan
Chris Travers scripsit:

 In fact, if we go that route, why couldn't Microsoft have just revoked
 Netscape's license to distribute Windows software and killed the
 competition that way?

IANAL, but that strikes me as something that would set them up for a
lawsuit by Netscape, being unambiguous evidence of discrimination.
It's not against the law to be a monopolist, and it's not against the
law to treat your customers in a non-uniform way: it's the combination
that is poison.

-- 
First known example of political correctness:   John Cowan
After Nurhachi had united all the other http://www.ccil.org/~cowan
Jurchen tribes under the leadership of the  co...@ccil.org
Manchus, his successor Abahai (1592-1643)
issued an order that the name Jurchen should   --S. Robert Ramsey,
be banned, and from then on, they were all   The Languages of China
to be called Manchus.
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-22 Thread Rick Moen
Quoting Clark C. Evans (c...@clarkevans.com):

 I found a tangible example of what I'm referring to, complete with
 wonderful visuals.  Chris Kleisath at Sybase describes how they
 circumvent the GPL license by using intermediate APIs to link
 proprietary functionality with GPL licensed works.  Is Chris correct? 
 For GPLv2?  For GPLv3?
 
 http://iablog.sybase.com/kleisath/index.php/2009/02/how-to-interface-proprietary-code-with-gpl-code/

You know, Clark:  Speaking for myself, I have no interest in advising
querents about how closely they can lawfully skirt the requirements of
copyleft licences, or how they can creatively circumvent those
requirements entirely, in order to use copylefted properties in
proprietary works.

You keep asking basically the same question, but are seeing scant
interest in helping you.  Might be that my view is common.

___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-22 Thread Lawrence Rosen
Rick Moen wrote:
 You know, Clark:  Speaking for myself, I have no interest in advising
 querents about how closely they can lawfully skirt the requirements of
 copyleft licences, or how they can creatively circumvent those
 requirements entirely, in order to use copylefted properties in
 proprietary works.
 
 You keep asking basically the same question, but are seeing scant
 interest in helping you.  Might be that my view is common.

Might be, but it is not unanimous. Indeed, I'm glad to advise companies how
to circumvent the *purported* and *frequently misunderstood* requirements of
the GPL.

My opinion of the GPL licenses is that they do not prohibit the use of
so-called creative circumventions to avoid having to disclose
non-derivative works, despite the desire of some to call it morally evil.
Linking GPL software to proprietary software is legal as long as one doesn't
create a derivative work. If GPL advocates insist upon distinguishing among
types of functional linking, then talented software engineers will avoid
disputes by building shims, APIs, or use dynamic linking to accomplish their
functional goals. More power to them!

/Larry


Lawrence Rosen
Rosenlaw  Einschlag, a technology law firm (www.rosenlaw.com) 
3001 King Ranch Road, Ukiah, CA 95482
Cell: 707-478-8932
Apache Software Foundation, board member (www.apache.org) 
Open Web Foundation, board member (www.openwebfoundation.org) 
Stanford University, Instructor in Law
Author, Open Source Licensing: Software Freedom and Intellectual Property
Law (Prentice Hall 2004)


 -Original Message-
 From: license-discuss-boun...@opensource.org [mailto:license-discuss-
 boun...@opensource.org] On Behalf Of Rick Moen
 Sent: Thursday, December 22, 2011 1:35 PM
 To: license-discuss@opensource.org
 Subject: Re: [License-discuss] GPL and proprietary WebAPIs
 
 Quoting Clark C. Evans (c...@clarkevans.com):
 
  I found a tangible example of what I'm referring to, complete with
  wonderful visuals.  Chris Kleisath at Sybase describes how they
  circumvent the GPL license by using intermediate APIs to link
  proprietary functionality with GPL licensed works.  Is Chris correct?
  For GPLv2?  For GPLv3?
 
  http://iablog.sybase.com/kleisath/index.php/2009/02/how-to-interface-
 proprietary-code-with-gpl-code/
 
 You know, Clark:  Speaking for myself, I have no interest in advising
 querents about how closely they can lawfully skirt the requirements of
 copyleft licences, or how they can creatively circumvent those
 requirements entirely, in order to use copylefted properties in
 proprietary works.
 
 You keep asking basically the same question, but are seeing scant
 interest in helping you.  Might be that my view is common.
 
 ___
 License-discuss mailing list
 License-discuss@opensource.org
 http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-22 Thread Rick Moen
Quoting Lawrence Rosen (lro...@rosenlaw.com):

 Might be, but it is not unanimous. Indeed, I'm glad to advise companies how
 to circumvent the *purported* and *frequently misunderstood* requirements of
 the GPL.

Two-hour minimum at professional rates, I hope.

I'm certainly not calling anything whatsoever 'evil'.  I just have no
unpaid time available to assist some categories of querents.

Indeed, what some label 'evil', I might see as a valuable and billable
consulting opportunity (being careful of UPL statutes).

-- 
Cheers,I'd say it's latke-esque.  Sort of like 
Rick Moen   Kafka-esque, only less depressing.  
r...@linuxmafia.com -- Deirdre Saoirse Moen
McQ!  (4x80)
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-21 Thread Chris Travers
On Tue, Dec 20, 2011 at 6:35 PM, Clark C. Evans c...@clarkevans.com wrote:
 On Tue, Dec 20, 2011, at 03:30 PM, Chris Travers wrote:
 In general, good will from the projects at issue is a factor that
 should not be underestimated and being a good citizen means ideally
 making sure they are ok with it.

 Absolutely.  If people consider you to be behaving fairly,
 they are more likely to support your cause.

Also bad feelings can come back to hurt you later, legal actions or not.

 I can tell you how the LedgerSMB core team approaches this.  We draw a
 hard line between using our code (requires adhering to the GPL) and
 using our API (does not).  In practice this means if you use our code
 as a basis for your code whether through object inheritance, literal
 copying, or paraphrasing, we expect you to adhere to the GPL v2.

 Let's suppose that I've working on a Ledger++ program
 which is a proprietary version of your Ledger SMB that
 adds awesome multi-state Payroll and Asset Depreciation
 features.  Only rather than including these features
 in your code-base, I include only stubs that package
 up the data each feature needs, calls a proprietary
 web service, and returns the data.

Ok.  So far so good.

 So, about 5% of my code is a bunch of hooks, while 95% of
 my Ledger+ code remains proprietary.  I release the stubs
 under the GPL license... but effectively, the features
 I've added are completely useless and non-operational
 unless you've paid for my web service subscription.

Well, technically you'd probably release under the LGPL or BSD
license, sort of like nVidia does with their stubs for their Linux
video drivers.  Again this isn't a new thing.  You see a surprising
amount of it in Linux (ndiswrapper, the nVidia drivers that RMS hates,
etc).

 This is intended on our part to keep the based on
 language in the GPL v2 to be close to the derivative
 works definition in copyright law and recognizing that
 nobody needs copyright licenses from Microsoft to write,
 say, Internet Explorer plugins.

 My reading of the GPLv3 is that it uses copyright law
 to determine when you've made a modification, but, the
 condition to distribute your modification goes far beyond
 this limitation, including the whole of the work, and all
 its parts, regardless of how they are packaged.

That's not my reading.  My reading is that the license tries to get
away from the derivative works definition (maybe it's not strict
enough for Stallman?) through refining definitions.  Of course the GPL
is not a EULA and it only requires acceptance when you distribute the
work or derivative works, but that only covers some cases.

Let's try a thought experiment.  Let's say LedgerSMB depended on
Windows and was essentially using Windows-only API's (and thus linking
with Windows base libraries).  Now, I recognize that the GPL
specifically exempts linking to system libraries, but I see no reason
why system libraries are different from a copyright perspective (i.e.
this distinction exists solely because RMS wrote it into the license).
 Now, if linking implies derivation, then isn't the software (and by
extension *all* Windows software) derivative of Windows?  If that's
the case then doesn't every developer of Windows software need
Microsoft's permission to distribute such software?  I don't think so.

So if it isn't a derivative work and you aren't distributing
LedgerSMB, I am hard pressed to see how legal action could be
successful in court, but IANAL.  OTOH, it could be very successful
both in terms of expenses involved and bad press to get you to do what
I want.  Really, this is what the FSF did to Apple over the Objective
C add-ons to the GCC.  Sooner or later though someone will fight
through and win and this will lose its effectiveness.

 In this view, there is no problem. There wouldn't even be a problem,
 in this view, if the libraries were linked provided that the code
 connections are not so intimate as to create a derivative work (for
 example, I would argue that class inheritance in fact does this).

 Would you have a problem with the scenario above, perhaps
 assuming I'm implementing a business feature that you consider
 to be core to the mission of Ledger SMB and you would have
 hoped would be contributed back to the project?

Would I personally have a problem with that?  Not as such, though I
might think you were doing something unwise.  You are obviously
building a market for us and helping define how payroll should work
and how we should enhance our asset depreciation features.  However,
as we develop these, you are faced with a problem in that refusal to
contribute back would increase your own maintenance efforts for
diminishing returns.  You can't just take our code and close it all
off because of the GPL, and then fork and go on your way as a
proprietary product, so you are kinda trapped.  So in other words this
technique doesn't work around copyleft so much as it limits the
applicability of copyleft to code as code.


Re: [License-discuss] GPL and proprietary WebAPIs

2011-12-21 Thread John Cowan
Chris Travers scripsit:

 Now, if linking implies derivation, then isn't the software (and by
 extension *all* Windows software) derivative of Windows?  If that's the
 case then doesn't every developer of Windows software need Microsoft's
 permission to distribute such software?  I don't think so.

I do think so, but in fact such permission is forthcoming.  Microsoft
grants explicit permission to use its SDKs to construct software that
is intended to run on Windows.  If it happens to run on non-Windows
systems such as ReactOS or Wine, that is not the developer's fault.
In this case of NDISwrapper, the Windows drivers that it wraps are
licensed to run on the hardware they are being used on, since almost
every PC is licensed to run Windows whether it actually does so or not.

IANAL, TINLA.

-- 
John Cowanhttp://www.ccil.org/~cowan co...@ccil.org
if if = then then then = else else else = if;
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss


[License-discuss] GPL and proprietary WebAPIs

2011-12-20 Thread Clark C. Evans
I have a broad question about various interpretations
of the GPL with regard to WebAPIs.  Let me start with
an example scenario.

1. Suppose that Super Visual is a clever GPL
licensed data visualization program (released by
Vendor A).

2. Now suppose that there is a closed-source, but
free to redistribute, data processing library,
called Correlate (by Vendor B), which takes a data
set and a parameters and does a clever and very
proprietary data transformation.

3. Now suppose that I modify Super Visual to
incorporate the functionality of Correlate.  It
works wonderfully and I wish to share my Visual
Correlate with my friend.

Is this permitted by the GPL?

a. Suppose my modifications involve static libraries, 
   the resulting Visual Correlate is a single 
   compiled executable.

b. Suppose Super Visual has a plugin mechanism, and 
   I use this internal API to load Correlate as a
   dynamic link library.  Let's assume I also ensure
   that the program still works but lacks the
   correlate functionality if the dynamic library
   isn't there.  I don't ship correlate.dll, but
   tell my friend about the easter egg.

c. Suppose that Super Visual doesn't have a plugin
   system, but I release a GPL licensed Super Visual
   /w Plugins that does.  Now can I release Visual
   Correlate using this plugin mechanism? 

d. Suppose that I make a SuperVisual+ (GPL licensed) 
   with generic, if complex way, to invoke separate 
   executables for external processing using standard 
   input, output, and command line arguments.  
   Suppose also I get permission from vendor B to 
   create and freely distribute a closed source 
   Correlate command line executable that takes the 
   specially formatted inputs to return outputs that 
   the SuperVisual+ needs.  I'm all clear now?

e. Suppose that I instead wrap Correlate in a
   WebAPI (let's say I get permission of Vendor B to
   do this).  Then, my modification to SuperVisual
   creates a runtime dependency on the web service;
   it degrades nicely without Correlate functionality
   if you lack a network connection or haven't paid
   to access my web service.  Can I release this
   Visual Correlate under the GPL?

f. Suppose that SuperVisual is a web application,
   and I wrap it with a web service running on a
   different server (without modifying one line of
   code), parsing the output stream to add additional
   functionality provided by Correlate.  The final
   result is that my users experience a single
   integrated application that mixes both Correlate
   and Super Visual functionality.

My interpretation of the GPL is that in every case,
I'd be producing a modified version.  Even in the
latter case, my wrapper would be using very specific
(and hence intimate) information about how the
application works and therefore would qualify as a
new program based on the earlier work.

Hence, since my Visual Correlate must comply with the
GPL; and since I don't have the right to also release
Correlate under the GPL, I can't share my work (as
cool as it may be) with my friend -- even if he
already has a copy of the Correlate program.

I say this for a few reasons.  First, in section #1
of the GPL, Corresponding Source it says that the
corresponding source must include all source code
needed to run the object code.  Hence, I must also
include Correlate under the GPL.

Secondly, under section #5c, it requires that I
license the whole of the work, and all its parts,
regardless how they are packaged.  Hence, my
attempts to work around the intent of the license are
foiled... packaging the Correlate function as a
WebAPI doesn't make it any less of the whole work.

Is this a correct assessment?  If not, where has my
logic gone astray?  I've talked to a few attorneys
lately about this situation, and I've gotten wildly
different answers.

While the specific example is completely hypothetical, 
the general situation isn't.  I'd remark that it's 
widely held that wrapping up proprietary functionality 
in a Web API is a valid way to evade the GPL's copyleft.  

http://stackoverflow.com/questions/4351119/if-i-use-gnu-gpl-code-with-my-own-server-side-code-do-i-need-to-open-my-server/

Best,

Clark
___
License-discuss mailing list
License-discuss@opensource.org
http://projects.opensource.org/cgi-bin/mailman/listinfo/license-discuss