X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=coreutils%2Fmkdir.c;h=902da7c9982e852d44643718da01fa7f8d76b112;hb=eba8ed71f08f334bc94ac8eeedcd998fcdd05897;hp=f6e08cadc076dae316354da7eeedc3bded56d37c;hpb=d537a95fdbc0b4a5f38edea8593b4c085fdd7fcb;p=oweals%2Fbusybox.git diff --git a/coreutils/mkdir.c b/coreutils/mkdir.c index f6e08cadc..902da7c99 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,25 +21,15 @@ * */ -#include "internal.h" +#include +#include +#include +#include +#include "busybox.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 - ; - static int parentFlag = FALSE; static mode_t mode = 0777; @@ -58,12 +48,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 +63,7 @@ extern int mkdir_main(int argc, char **argv) parentFlag = TRUE; break; default: - usage(mkdir_usage); + show_usage(); } } argc--; @@ -82,7 +71,7 @@ extern int mkdir_main(int argc, char **argv) } if (argc < 1) { - usage(mkdir_usage); + show_usage(); } while (argc > 0) { @@ -91,26 +80,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; }