Cisco Cisco IPICS Release 2.1 Licensing Information

Page of 20889
             Open Source Used In  Cisco Instant Connect 4.10(1)                                                                                                                                   
2324
I personally consider anything a "derived work" that needs special hooks
in the kernel to function with Linux (ie it is _not_ acceptable to make a
small piece of GPL-code as a hook for the larger piece), as that obviously
implies that the bigger module needs "help" from the main kernel.
 
Similarly, I consider anything that has intimate knowledge about kernel
internals to be a derived work.
 
What is left in the gray area tends to be clearly separate modules: code
that had a life outside Linux from the beginning, and that do something
self-containted that doesn't really have any impact on the rest of the
kernel. A device driver that was originally written for something else,
and that doesn't need any but the standard UNIX read/write kind of
interfaces, for example.
 
> Issue #2
> ========
> I've found statements attributed to you that you think only 10% of
> the code in the current kernel was written by you.  By not being the
> sole copyright holder of the Linux kernel, a stated exception to
> the GPL seems invalid unless all kernel copyright holders agreed on
> this exception.  How does the exception cover GPL'd kernel code not
> written by you?  Has everyone contributing to the kernel forfeited
> their copyright to you or agreed with the exception?
 
Well, see above about the lack of exception, and about the fundamental
gray area in _any_ copyright issue. The "derived work" issue is obviously
a gray area, and I know lawyers don't like them. Crazy people (even
judges) have, as we know, claimed that even obvious spoofs of a work that
contain nothing of the original work itself, can be ruled to be "derived".
 
I don't hold views that extreme, but at the same time I do consider a
module written for Linux and using kernel infrastructures to get its work
done, even if not actually copying any existing Linux code, to be a
derived work by default. You'd have to have a strong case to _not_
consider your code a derived work..
 
> Issue #3
> ========
> This issue is related to issue #1.  Exactly what is covered by the
> exception?  For example, all code shipped with the Linux kernel
> archive and typically installed under /usr/src/linux, all code under
> /usr/src/linux except /usr/src/linux/drivers, or just the code in
> the /usr/src/linux/kernel directory?
 
See above, and I think you'll see my point.
 
The "user program" exception is not an exception at all, for example, it's