Re: Question regarding a LGPL program and closed-source plugin
On 2 May 2003, Henning Makholm wrote:
> Scripsit Yong Li <firstname.lastname@example.org>
> > Upon running the chosen plugin(s) will be loaded into the
> > server's space through dlopen. Then the server will get pointers of
> > functions from the plugin and call them as certain events occur.
> > One of the plugins, arguably the only one that most people will be
> > interested, is binary only.
> This will prevent the server itself from being in main - but it can be
> in contrib.
There are a couple of LGPLed plugins to go with the server, albeit less
useful. So perhaps the server and those 2 plugins could be put in main and
the binary only plugin be put in non-free?
> I think that it is a Work That Uses the Library. It is clearly
> designed to work with the library by being linked with it. The
> direction of the linking makes no difference IMO.
But it is not designed to work with the library by being *linked* with it.
As a plugin, it is actually designed to work with the library by being
*loaded* into the library. That's what makes me uncertain.
It seems to be GNU's official position that how the plugin is designed to
work with the main program determines what kind license it must be under.
According to GPL FAQ, under the topic of "If a program released under the
GPL uses plug-ins, what are the requirements for the licenses of a
plug-in", it says:
If the program dynamically links plug-ins, and they make function
calls to each other and share data structures, we believe they form a
single program, so plug-ins must be treated as extensions to the main
program. This means they must be released under the GPL ...
I believe this is how most of the plugin work, this one included. So I
take that means: even if a plugin, in isolation, is not covered by GPL,
but is designed to work with the main program together, instead of
being fork-ed and exec-ed, then the plugin must be considered an
extension of the main program and thus subject to GPL. And I think in
this regard GPL and LGPL are same. Do I miss anything?