> It's the same case as Windows NDIS drivers loading on linux. They were > created in a different environment, and would exist as they are even if > linux did not exist. Provided GPL'd glue code, you can load them in the > linux kernel, and they are _not_ derivative works.
The idea that "glue code" makes it ok to combine GPL-covered code with non-free code has no basis in the GPL. The GPL applies to the entire combination of code that is combined into a larger program. If a.o is under the GPL and talks to b.o which talks to c.o, the GPL covers all three files, if all three are combined as one program. Linus has implicitly and sometimes explicitly given permission for some kinds of non-free dynamically loaded modules; perhaps the concept of "glue code" is relevant in terms of the permission he has given. I'm not the one to ask about that kind of issue.