udhcpc: fix a problem with binary-encoded options #2
[oweals/busybox.git] / modutils / insmod.c
index c4fb9279d735aacd01bc9accd4fc1a7118e5fc16..887d9f2a37afffaf83abe7897bdf5f0259f5d977 100644 (file)
@@ -4,12 +4,37 @@
  *
  * Copyright (C) 2008 Timo Teras <timo.teras@iki.fi>
  *
- * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
+ * Licensed under GPLv2 or later, see file LICENSE in this source tree.
  */
 
+//applet:IF_INSMOD(APPLET(insmod, BB_DIR_SBIN, BB_SUID_DROP))
+
 #include "libbb.h"
 #include "modutils.h"
 
+/* 2.6 style insmod has no options and required filename
+ * (not module name - .ko can't be omitted) */
+
+//usage:#if !ENABLE_MODPROBE_SMALL
+//usage:#define insmod_trivial_usage
+//usage:       IF_FEATURE_2_4_MODULES("[OPTIONS] MODULE ")
+//usage:       IF_NOT_FEATURE_2_4_MODULES("FILE ")
+//usage:       "[SYMBOL=VALUE]..."
+//usage:#define insmod_full_usage "\n\n"
+//usage:       "Load the specified kernel modules into the kernel"
+//usage:       IF_FEATURE_2_4_MODULES( "\n"
+//usage:     "\n       -f      Force module to load into the wrong kernel version"
+//usage:     "\n       -k      Make module autoclean-able"
+//usage:     "\n       -v      Verbose"
+//usage:     "\n       -q      Quiet"
+//usage:     "\n       -L      Lock: prevent simultaneous loads"
+//usage:       IF_FEATURE_INSMOD_LOAD_MAP(
+//usage:     "\n       -m      Output load map to stdout"
+//usage:       )
+//usage:     "\n       -x      Don't export externs"
+//usage:       )
+//usage:#endif
+
 int insmod_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 int insmod_main(int argc UNUSED_PARAM, char **argv)
 {
@@ -33,7 +58,7 @@ int insmod_main(int argc UNUSED_PARAM, char **argv)
        if (!filename)
                bb_show_usage();
 
-       rc = bb_init_module(filename, parse_cmdline_module_options(argv));
+       rc = bb_init_module(filename, parse_cmdline_module_options(argv, /*quote_spaces:*/ 0));
        if (rc)
                bb_error_msg("can't insert '%s': %s", filename, moderror(rc));