Index: busybox-1.1.0/modutils/rmmod.c =================================================================== --- busybox-1.1.0.orig/modutils/rmmod.c 2006-01-11 06:43:56.000000000 +0100 +++ busybox-1.1.0/modutils/rmmod.c 2006-03-14 16:42:14.000000000 +0100 @@ -29,6 +29,7 @@ #include #include #include +#include #include "busybox.h" #ifdef CONFIG_FEATURE_2_6_MODULES @@ -64,6 +65,16 @@ but must get */ size_t bufsize = sizeof(bb_common_bufsiz1); #endif +#ifdef CONFIG_FEATURE_2_6_MODULES + int k_version = 0; + struct utsname myuname; + + if (uname(&myuname) == 0) { + if (myuname.release[0] == '2') { + k_version = myuname.release[2] - '0'; + } + } +#endif /* Parse command line. */ n = bb_getopt_ulflags(argc, argv, "wfa"); @@ -109,6 +120,10 @@ afterslash++; module_name = alloca(strlen(afterslash) + 1); filename2modname(module_name, afterslash); + if (k_version != 4) + filename2modname(module_name, afterslash); + else + strcpy(module_name, afterslash); #else #define module_name argv[n] #endif