Interview: Eben Moglen
Posted Aug 18, 2005 11:18 UTC (Thu) by
forthy (guest, #1525)
In reply to:
Interview: Eben Moglen by iabervon
Parent article:
Interview: Eben Moglen
IMHO, and IANAL, my interpretation for the binary module is that:
- Creating and distributing a binary module that directly links into the
kernel is creating a derivative work, and distributing part of it (the
linkable module). The fact that it is a derivative work can be seen
immediately if you change the kernel version - the module won't link.
- Creating a open source wrapper like ndiswrapper or the nVidia kernel
driver and linking it to a binary module (windows driver, nVidia core)
when compiled at the user side is not distributing a derivated
work. The wrapper license however should be both compatible with the GPL
and the linking to a binary module (not tough). You can see that this is
ok, because if you change the kernel and recompile the wrapper, everything
still works.
The obvious thing for radio driver writers is to go the
ndiswrapper/nVidia route, and write their own wrappers, which live on a
borderline license (allowing both mixing with GPL and mixing with binary
modules), and have to be recompiled when installing a new kernel. It is
not allowed to distribute them in any other form as the "mere aggregate",
where the user initiates the compilation and module insertion.
It is obvious that any sort of modular interface can allow the
insertion of proprietary parts without shipping linked or linkable
modules. Remember that the GCC team refused to add a RTL-based
intermediate format for exactly that reason: a proprietary backend (or
frontend) could use this RTL output to generate code, and thereby bypass
the GPL for this part of the compiler (basically using GCC as front-end,
and having a proprietary backend. Having a proprietary front end is far
easier, you can emit C code ;-).
(
Log in to post comments)