Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9b37ccfc authored by Pavel Roskin's avatar Pavel Roskin Committed by Linus Torvalds
Browse files

module: allow ndiswrapper to use GPL-only symbols



A change after 2.6.24 broke ndiswrapper by accidentally removing its
access to GPL-only symbols.  Revert that change and add comments about
the reasons why ndiswrapper and driverloader are treated in a special
way.

Signed-off-by: default avatarPavel Roskin <proski@gnu.org>
Acked-by: default avatarGreg KH <gregkh@suse.de>
Acked-by: default avatarIngo Molnar <mingo@elte.hu>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Jon Masters <jonathan@jonmasters.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 27d0483a
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -1933,8 +1933,15 @@ static struct module *load_module(void __user *umod,
	/* Set up license info based on the info section */
	set_license(mod, get_modinfo(sechdrs, infoindex, "license"));

	/*
	 * 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_module(mod, TAINT_PROPRIETARY_MODULE);
		add_taint(TAINT_PROPRIETARY_MODULE);

	/* driverloader was caught wrongly pretending to be under GPL */
	if (strcmp(mod->name, "driverloader") == 0)
		add_taint_module(mod, TAINT_PROPRIETARY_MODULE);