Репозиторий ALT Linux backports/2.4
Последнее обновление: 9 июля 2008 | Пакетов: 497 | Посещений: 1495348
 поиск   регистрация   авторизация 
 
Группа :: Система/Ядро и оборудование
Пакет: modutils

 Главная   Изменения   Спек   Патчи   Загрузить   Bugs and FR 

Патч: modutils-2.4.27-alt-insmod-GPL.patch


diff -upk.orig modutils-2.4.27.orig/insmod/insmod.c modutils-2.4.27/insmod/insmod.c
--- modutils-2.4.27.orig/insmod/insmod.c	2005-10-26 15:07:58 +0000
+++ modutils-2.4.27/insmod/insmod.c	2005-10-26 15:11:53 +0000
@@ -1674,7 +1674,7 @@ int INSMOD_MAIN(int argc, char **argv)
 	int force_kallsyms = 0;
 	int persist_parms = 0;	/* does module have persistent parms? */
 	int i;
-	int gpl;
+	int gpl_status, gpl;
 
 	error_file = "insmod";
 
@@ -1881,7 +1881,8 @@ int INSMOD_MAIN(int argc, char **argv)
 		obj_set_symbol_compare(f, ncv_strcmp, ncv_symbol_hash);
 
 	/* Let the module know about the kernel symbols.  */
-	gpl = obj_gpl_license(f, NULL) == 0;
+	gpl_status = obj_gpl_license(f, NULL);
+	gpl = (gpl_status == 0);
 	add_kernel_symbols(f, gpl);
 
 #ifdef	ARCH_ppc64
@@ -1908,7 +1909,7 @@ int INSMOD_MAIN(int argc, char **argv)
 
 	arch_create_got(f);     /* DEPMOD */
 	if (!obj_check_undefineds(f, quiet)) {	/* DEPMOD, obj_clear_undefineds */
-		if (!gpl && !quiet) {
+		if ( !quiet && gpl_status >= 2 ) {
 			if (gplonly_seen)
 				error("\n"
 				      "Hint: You are trying to load a module without a GPL compatible license\n"
 
design & coding: Vladimir Lettiev aka crux © 2004-2005