X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=coreutils%2Fmkdir.c;h=d78f57e2bb4786288d729528189416d62d27ea86;hb=8b7a0d807a3ec8cfcbc4e4cb3067237b438bae14;hp=f6e08cadc076dae316354da7eeedc3bded56d37c;hpb=d537a95fdbc0b4a5f38edea8593b4c085fdd7fcb;p=oweals%2Fbusybox.git diff --git a/coreutils/mkdir.c b/coreutils/mkdir.c index f6e08cadc..d78f57e2b 100644 --- a/coreutils/mkdir.c +++ b/coreutils/mkdir.c @@ -2,7 +2,7 @@ /* * Mini mkdir implementation for busybox * - * Copyright (C) 1999,2000 by Lineo, inc. + * Copyright (C) 1999,2000,2001 by Lineo, inc. * Written by Erik Andersen , * * This program is free software; you can redistribute it and/or modify @@ -21,24 +21,11 @@ * */ -#include "internal.h" -#define bb_need_name_too_long -#define BB_DECLARE_EXTERN -#include "messages.c" - #include #include - -static const char mkdir_usage[] = - "mkdir [OPTION] DIRECTORY...\n" -#ifndef BB_FEATURE_TRIVIAL_HELP - "\nCreate the DIRECTORY(ies), if they do not already exist\n\n" - "Options:\n" - - "\t-m\tset permission mode (as in chmod), not rwxrwxrwx - umask\n" - "\t-p\tno error if existing, make parent directories as needed\n" -#endif - ; +#include +#include +#include "busybox.h" static int parentFlag = FALSE; @@ -58,12 +45,11 @@ extern int mkdir_main(int argc, char **argv) switch (**argv) { case 'm': if (--argc == 0) - usage(mkdir_usage); + show_usage(); /* Find the specified modes */ mode = 0; if (parse_mode(*(++argv), &mode) == FALSE) { - errorMsg("Unknown mode: %s\n", *argv); - exit FALSE; + error_msg_and_die("Unknown mode: %s", *argv); } /* Set the umask for this process so it doesn't * screw up whatever the user just entered. */ @@ -74,7 +60,7 @@ extern int mkdir_main(int argc, char **argv) parentFlag = TRUE; break; default: - usage(mkdir_usage); + show_usage(); } } argc--; @@ -82,7 +68,7 @@ extern int mkdir_main(int argc, char **argv) } if (argc < 1) { - usage(mkdir_usage); + show_usage(); } while (argc > 0) { @@ -91,26 +77,23 @@ extern int mkdir_main(int argc, char **argv) char buf[BUFSIZ + 1]; if (strlen(*argv) > BUFSIZ - 1) { - errorMsg(name_too_long); - exit FALSE; + error_msg_and_die(name_too_long); } strcpy(buf, *argv); status = stat(buf, &statBuf); if (parentFlag == FALSE && status != -1 && errno != ENOENT) { - errorMsg("%s: File exists\n", buf); - exit FALSE; + error_msg_and_die("%s: File exists", buf); } if (parentFlag == TRUE) { strcat(buf, "/"); - createPath(buf, mode); + create_path(buf, mode); } else { if (mkdir(buf, mode) != 0 && parentFlag == FALSE) { - perror(buf); - exit FALSE; + perror_msg_and_die(buf); } } argc--; argv++; } - return( TRUE); + return EXIT_SUCCESS; }