Licensing ambiguities with GPL and LGPL - was Re: Can Samba co-operate?

Simo Sorce idra at samba.org
Sat Dec 22 01:46:03 GMT 2001


Sorry Jeremy, I will correct some minor issues.

On Fri, Dec 21, 2001 at 02:44:10PM -0800, Jeremy Allison wrote:
> On Fri, Dec 21, 2001 at 04:45:24PM -0600, John Malmberg wrote:
> > Thank you for taking the time to respond.  It is an issue that
> > affects any one who works for a company that supplies a
> > commercial operating system and SAMBA.

And for you John I will urge you to use the term proprietary software to
refer to closed source software, not the term commercial, as any GPLed software can be sold and be use to proveide services and all, so that it is also commercial.

> > 
> > I am trying to determine if it is a violation of the GPL for me
> > to produce a LIBSMBCLIENT shared image.
> 
> Sorry for being ratty about it. Chris just told me off for being
> an *sshole over how I'm explaining the licensing :-).
> 
> > Here is the crux, the plug-in may not explicitly require libsmbclient, 
> > it just may be able to use it if it is present.

So long you do not need libsmbclient to run and you do not distribute it you are not held responsible of nothing. (Or anyone would be able to make a GPL library that link with such a software and claim you to release the whole software under GPL terms even on the most proprietary system of the world).

> > 
> > The plug-in may not have even been designed with libsmbclient in mind, as it
> > could be written in PERL, PYTHON, or TCL/TK.  All of which programs can
> > directly call libsmbclient.  PERL is not covered under the GPL, it is
> > covered under the Perl Artistic License.
> >
> > And there are many other programs that have the same abilities to
> > use any shared image on the system to extend themselves.
> > 
> > The issue does need clarification.
> 
> As an example, I can point at the GNU dbm library, gdbm. This is
> also GPL and RedHat do not ship it on their version of Linux, due
> to this exact reason.
> 
> > It is one of the few GPL products that is a shared image, but not 
> > extensively a part of the operating system.

Yes it is, and by will I may add.

> 
> gdbm is the same. I would look at who is distributing this and
> what they do about it. I know RedHat don't ship it, not because
> they can't - but because they know that if people build proprietary
> software on RedHat that depended upon it, then the proprietary
> software company would be violating the GPL.
> 
> They wish people to be able to build proprietary software on RedHat
> and not be covered by the GPL, hense their decision not to ship
> libgdbm.so.
> 
> > As of now, I am employed by that company.  If I produce a build of 
> > LIBSMBCLIENT as a shared image, there are many products that run on that 
> > platform that can immediately take advantage of it.

But you cannot distribute it with your software.

> > 
> > This includes any product that is based on the default editor, or uses 
> > any of the popular cross platform scripting languages, some covered by
> > GPL, and some that are not.
> > 
> > I have no control over that, so would I be held responsible?

No, so long you do not ship any GPLed library with your software and your software do not require them to run and perform normal operations.

> 
> I am not a lawyer, but just creating the library is not a crime
> as far as I know. The issue comes with creating non-GPL programs
> that use GPL libraries.
> 
> > But from what you say, if anyone uses libsmbclient to extend a program 
> > like my normaly used editor that is not GPLed, that is a violation of 
> > the GPL?
> 
> Technically, yes. I believe so. If someone does this on their own system
> I'm not sure...

No, doing that on your own system is not a violation.
GPL applies to redistribuition and modification of software, not to the use
of that software.
You are prohibited to redistribute a software as is or modified without giving others the same rights you had (eg. GPL License), GPL do not cover at all the use of the library.

> 
> > Interestingly, if the editor spawns a shell that issues the SMBCLIENT 
> > commands, and returns the results back to the editor, that is expressly 
> > permitted under RMS's interpretation of the GPL.
> 
> Yes.

Yes because GPL do not restirct the use of the program, but only redistribution.
Abd this is the reson why kernel syscal can be use by nonGPL programs, because the USE of the kernel is made by calling syscalls.

> 
> > This is also an issue for any employee of a firm that produces a 
> > commercial Operating System, as there are many non-GPLed programs that 
> > can directly call libsmbclient on them.  This is with out being directly 
> > linked against libsmbclient.
> > 
> > So is a build of libsmbclient for a commercial platform now prohibited, 
> > because a non-GPLed program can directly use it?

no, as linux is also a commercial platform and it is perfectly legal to build the library, however I understand that probably you mean proprietary, and the answer is again, no problem. The limitation will be that you cannot distribute proprietary software that link against libsmbclient directly and that libsmbclient is is fundamental to have the program do anything useful.


> 
> No. I don't think so. But people building non-GPL software on that
> platform must be aware not to link with it. I refer you back to
> the RedHat example above.
> 
> > And then what is the story on SMBMOUNT and it's friends.  Are they only
> > licensed for use on GPL'ed operating systems?
> 
> Yes, again - as they are GPL this is the case.

No, Jeremy, you are wrong here.
smbmount and friends use kernel syscalls, and are run alone, so you can use them on any system without problem. GPL is _NOT_ viral as someone thinks, you can even build GPL programs that uses proprietary libraries that you do not own, without beeing required to have them converted to GPL (the author(s) just need to write a copyright notice that expressely permit your GPL software to be linked with that proprietary library). And the same is for operating systems (and you do not even require the notice as you use syscalls, not a common library).

Hope this helps to clarify, anyway it is better you read the faq on FSF site:
http://www.fsf.org/licenses/gpl-faq.html


-- 
Simo Sorce       idra at samba.org
-------------------------------
Samba Team http://www.samba.org




More information about the samba-technical mailing list