Add the -d option, its used by old versions of config.guess, change to
authorGlenn L McGrath <bug1@ihug.co.nz>
Sat, 26 Apr 2003 04:56:17 +0000 (04:56 -0000)
committerGlenn L McGrath <bug1@ihug.co.nz>
Sat, 26 Apr 2003 04:56:17 +0000 (04:56 -0000)
use getopt.

debianutils/mktemp.c

index 9d8de21743cd90ffd38677bc579899ff70adb199..ecc985fb2336b3cc2d3675000d2d4d5360f0f0d7 100644 (file)
 
 extern int mktemp_main(int argc, char **argv)
 {
-       if (argc != 2 && (argc != 3 || strcmp(argv[1], "-q")))
+       unsigned char dir_flag = 0;
+       int opt;
+
+       while ((opt = getopt(argc, argv, "qd")) != -1) {
+               if (opt == 'd') {
+                       dir_flag = 1;
+               }
+               else if (opt != 'q') {
+                       bb_show_usage();
+               } 
+       }
+
+       if (optind + 1 != argc) {
                bb_show_usage();
-       if(mkstemp(argv[argc-1]) < 0)
-               return EXIT_FAILURE;
+       }
+
+       if (dir_flag) {
+               if (mkdtemp(argv[argc-1]) == NULL) {
+                       return EXIT_FAILURE;
+               }
+       } else {
+               if (mkstemp(argv[argc-1]) < 0) {
+                       return EXIT_FAILURE;
+               }
+       }
+
        (void) puts(argv[argc-1]);
+
        return EXIT_SUCCESS;
 }