[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#385553: linux-modules-extra-2.6: ndiswrapper requires rules target override



On Mon, Jun 23, 2008 at 12:19:18AM +0200, Bastian Blank wrote:
> ndiswrapper is a module loader. But it does not take the appropriate
> actions while handling non-free modules.

It sure tries.

> |         /*
> |          * ndiswrapper is under GPL by itself, but loads proprietary modules.
> |          * Don't use add_taint_module(), as it would prevent ndiswrapper from
> |          * using GPL-only symbols it needs.
> |          */
> |         if (strcmp(mod->name, "ndiswrapper") == 0)
> |                 add_taint(TAINT_PROPRIETARY_MODULE);
> 
> There is nothing accidentally.

ndiswrapper loader.c:
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,10)
        add_taint(TAINT_PROPRIETARY_MODULE);
        /* older kernels don't seem to have a way to set
         * tainted information */
#endif

Seems it does try to do the taint itself when needed.  That also matches
what I understood from the lkml discussions on the issue.  And nothing
prevents ndiswrapper from changing its name which makes that in kernel
check fail.

Also the comment in the kernel clearly says (as you even included
yourself):
    /*
     * ndiswrapper is under GPL by itself, but loads proprietary modules.
     * Don't use add_taint_module(), as it would prevent ndiswrapper from
     * using GPL-only symbols it needs.
     */

So that seems to indicate the kernel has no problem with ndiswrapper
using GPL-only symbols, so ndiswrapper itself must be GPL and hence
free.

-- 
Len Sorensen


Reply to: