+ if (strlen(*argv) > BUFSIZ - 1) {
+ error_msg_and_die(name_too_long);
+ }
+ strcpy(buf, *argv);
+ status = stat(buf, &statBuf);
+ if (parentFlag == FALSE && status != -1 && errno != ENOENT) {
+ error_msg_and_die("%s: File exists", buf);
+ }
+ if (parentFlag == TRUE) {
+ strcat(buf, "/");
+ create_path(buf, mode);
+ } else {
+ if (mkdir(buf, mode) != 0 && parentFlag == FALSE) {
+ perror_msg_and_die(buf);
+ }
+ }
+ argc--;
+ argv++;
+ }
+ return EXIT_SUCCESS;
+}