2004-06-28 22:13:51

by ca_tex-kernel

[permalink] [raw]
Subject: GPL question

Hopefully this is not going to start a huge thread war on open source
philosophy and such, but the company I work for has some proprietary code built
as a 2.4 linux kernel module for a product they sell. They are concerned about
releasing the source code. I noticed that what this code does and how it does
it seems pretty clean (at least GPL-wise), but it does modify sys_call_table to
add a system call which is then used to call the module from userland. Can
they avoid releasing this code or is this crossing into a gray area? I used to
think I more or less understood the basics of the GPL, but after talking to
their lawyers I am totally confused. Thanks.


=====
Jarrett L. Redd (K9HMV)


2004-06-29 11:01:59

by David Weinehall

[permalink] [raw]
Subject: Re: GPL question

On Mon, Jun 28, 2004 at 03:13:49PM -0700, [email protected] wrote:
> Hopefully this is not going to start a huge thread war on open source
> philosophy and such, but the company I work for has some proprietary
> code built as a 2.4 linux kernel module for a product they sell. They
> are concerned about releasing the source code. I noticed that what
> this code does and how it does it seems pretty clean (at least
> GPL-wise), but it does modify sys_call_table to add a system call
> which is then used to call the module from userland. Can they avoid
> releasing this code or is this crossing into a gray area? I used to
> think I more or less understood the basics of the GPL, but after
> talking to their lawyers I am totally confused. Thanks.

Philosophical issues aside (I suppose everyone on this list prefers to
see drivers free) the main point that decides if a driver has to be
released with source is whether it can be considered a derived work or
not. to the best of my knowledge, the exception for binary modules in
the kernel was mainly to provide for drivers ported from other operating
systems, rather than to allow for competlely new drivers to be kept
closed source. If the driver can be claimed to be developed without
having access to other things than header-files, it can probably be
considered non-derived, but a drivers that has to modify the
sys_call_table is dangerously close to being a derived work (if not
already past the border-line...)


Regards: David Weinehall
--
/) David Weinehall <[email protected]> /) Northern lights wander (\
// Maintainer of the v2.0 kernel // Dance across the winter sky //
\) http://www.acc.umu.se/~tao/ (/ Full colour fire (/