From: Philippe De Swert <[email protected]>

The -f switch is accepted by insmod, but silently ignored. This
causes the user to wonder why things don't work. As insmod is
most often used with "evil" modules, -f is almost default and
thus needs to work.

Signed-off-by: Philippe De Swert <[email protected]>
---
 tools/insmod.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/tools/insmod.c b/tools/insmod.c
index 8e72e11..045fd2c 100644
--- a/tools/insmod.c
+++ b/tools/insmod.c
@@ -71,6 +71,7 @@ static int do_insmod(int argc, char *argv[])
        size_t optslen = 0;
        int i, err;
        const char *null_config = NULL;
+       unsigned int flags = 0;
 
        for (;;) {
                int c, idx = 0;
@@ -81,7 +82,8 @@ static int do_insmod(int argc, char *argv[])
                case 'p':
                case 's':
                case 'f':
-                       /* ignored, for compatibility only */
+                       flags |= KMOD_PROBE_FORCE_MODVERSION;
+                       flags |= KMOD_PROBE_FORCE_VERMAGIC;
                        break;
                case 'h':
                        help();
@@ -142,7 +144,7 @@ static int do_insmod(int argc, char *argv[])
                goto end;
        }
 
-       err = kmod_module_insert_module(mod, 0, opts);
+       err = kmod_module_insert_module(mod, flags, opts);
        if (err < 0) {
                ERR("could not insert module %s: %s\n", filename,
                    mod_strerror(-err));
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-modules" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to