Fixed option parsing. Grep would continue grepping, even when given a bad /
[oweals/busybox.git] / mknod.c
diff --git a/mknod.c b/mknod.c
index b51c8f3e3f66b4a511a8de2e7f99f405113703a6..b4d4b82a109cba977bffc206c16da96359f0c8a7 100644 (file)
--- a/mknod.c
+++ b/mknod.c
  *
  */
 
-#include "internal.h"
 #include <stdio.h>
 #include <errno.h>
-#include <sys/types.h>
-#include <sys/stat.h>
 #include <fcntl.h>
 #include <unistd.h>
+#include <string.h>
+#include <stdlib.h>
+#include <sys/types.h>
+#include "busybox.h"
 
 int mknod_main(int argc, char **argv)
 {
@@ -52,13 +53,13 @@ int mknod_main(int argc, char **argv)
                        umask(0);
                        break;
                default:
-                       usage(mknod_usage);
+                       show_usage();
                }
                argc--;
                argv++;
        }
        if (argc != 4 && argc != 2) {
-               usage(mknod_usage);
+               show_usage();
        }
        switch (argv[1][0]) {
        case 'c':
@@ -71,11 +72,11 @@ int mknod_main(int argc, char **argv)
        case 'p':
                mode = S_IFIFO;
                if (argc!=2) {
-                       usage(mknod_usage);
+                       show_usage();
                }
                break;
        default:
-               usage(mknod_usage);
+               show_usage();
        }
 
        if (mode == S_IFCHR || mode == S_IFBLK) {
@@ -85,7 +86,7 @@ int mknod_main(int argc, char **argv)
        mode |= perm;
 
        if (mknod(argv[0], mode, dev) != 0)
-               fatalError("%s: %s\n", argv[0], strerror(errno));
-       return (TRUE);
+               perror_msg_and_die("%s", argv[0]);
+       return EXIT_SUCCESS;
 }