Samba into kernel

Urban Widmark urban at teststation.com
Mon Mar 25 13:05:02 GMT 2002


On Mon, 25 Mar 2002, David Lee wrote:

> I realise that discussions on licensing often generate more heat than
> light.  Also that I am completley inexpert on GPL.  Nevertheless, I
> suspect a mis-understanding.  So at the risk of heat-generation... 

Set your flamers to scorch ... :)

> I had been envisaging making Samba (or parts thereof) something like a
> loadable kernel module.  As far as I can see, this bascially means
> changing from one set of published interfaces: 
>   Solaris man(2) "system calls" (open, close, read, write, etc.) and
>   Solaris man(3) "library routines" (printf, malloc etc.)
> to another:
>   Solaris man(9) "DDI and DKI interfaces" (device driver interfaces etc.)
> 
> >From a licensing perspective, what is the difference betwwen these two
> cases, both using equivalently "published" interfaces?

I don't think how the interface is published matters. What matters is how
things are used or linked. If you haven't already you should read the GPL
FAQ and/or look for a list/newsgroup place where licensing is discussed
(I'm sure there is one).


* http://www.gnu.org/licenses/gpl-faq.html#WritingFSWithNFLibs

It is allowed to make a GPL'ed program use a standard library or make
syscalls to the kernel without requiring those to be GPL.

This is a "special exception" and is not really allowed by the other parts
of the GPL. You couldn't distribute (use/compile?) samba for Solaris
without this exception because the libc would be mapped into the memory
space and added to the program.

The GPL regards the program + the linked libs as one "work".


* http://www.gnu.org/licenses/gpl-faq.html#GPLPluginsInNF

A kernel module is a plugin and it does more than simply use the kernel,
it extends it.

If this was allowed I could create a proprietary program P, add a plugin
interface "PPI" and publish the interface. Then take whatever GPL'ed
program I needed and use it to improve P through PPI.

The LGPL allows this, but not the GPL.


> Now if Sun (or equivalent manufacturer) were to do it, and want to
> maintain their code private, I (though not a lawyer) see how that might
> well (almost certainly?) breach GPL.  But I'm talking about _us_, the
> Samba community, writing onto this alternative interface.

Sun has the same rights as everyone else regarding the GPL, including 
members of the Samba community.

The author can give permission for you to do non-GPL things with the code
or relicense things. Problem might be to get ok from all authors and even
to identify them and know which ones need to say ok.

The kernel parts could also be written from scratch under a different
license and without actually copying from the samba source.
(When is something a derived work? How much looking is allowed?)


Finally, you shouldn't listen to me.

/Urban





More information about the samba-technical mailing list