ls: handle -i through option_mask32
[oweals/busybox.git] / miscutils / raidautorun.c
index c95b00aaeeda0048d281aff65c94eb65bb10bae2..c6d8e6235478c3264bcde71d452b7d795b63f8d3 100644 (file)
@@ -2,26 +2,39 @@
 /*
  * raidautorun implementation for busybox
  *
- * Copyright (C) 2006 Bernhard Fischer
+ * Copyright (C) 2006 Bernhard Reutner-Fischer
  *
- * Licensed under the GPL v2 or later, see the file LICENSE in this tarball.
+ * Licensed under GPLv2 or later, see file LICENSE in this source tree.
  *
  */
+//config:config RAIDAUTORUN
+//config:      bool "raidautorun"
+//config:      default y
+//config:      select PLATFORM_LINUX
+//config:      help
+//config:        raidautorun tells the kernel md driver to
+//config:        search and start RAID arrays.
 
-#include "busybox.h"
+//applet:IF_RAIDAUTORUN(APPLET(raidautorun, BB_DIR_SBIN, BB_SUID_DROP))
+
+//kbuild:lib-$(CONFIG_RAIDAUTORUN) += raidautorun.o
+
+//usage:#define raidautorun_trivial_usage
+//usage:       "DEVICE"
+//usage:#define raidautorun_full_usage "\n\n"
+//usage:       "Tell the kernel to automatically search and start RAID arrays"
+//usage:
+//usage:#define raidautorun_example_usage
+//usage:       "$ raidautorun /dev/md0"
+
+#include "libbb.h"
 
 #include <linux/major.h>
 #include <linux/raid/md_u.h>
 
-int raidautorun_main(int argc, char **argv);
-int raidautorun_main(int argc, char **argv)
+int raidautorun_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
+int raidautorun_main(int argc UNUSED_PARAM, char **argv)
 {
-       if (argc != 2)
-               bb_show_usage();
-
-       if (ioctl(xopen(argv[1], O_RDONLY), RAID_AUTORUN, NULL) != 0) {
-               bb_perror_msg_and_die("ioctl");
-       }
-
+       xioctl(xopen(single_argv(argv), O_RDONLY), RAID_AUTORUN, NULL);
        return EXIT_SUCCESS;
 }