btrfs-progs: btrfs-crc: print usage on receiving invalid arguments
authorSatoru Takeuchi <takeuchi_satoru@jp.fujitsu.com>
Thu, 2 Jun 2016 08:11:51 +0000 (17:11 +0900)
committerDavid Sterba <dsterba@suse.com>
Fri, 3 Jun 2016 12:49:42 +0000 (14:49 +0200)
Usage is only printed if -h option is set. However it's nice to
do it when wrong option is set or the number of argument is wrong.

Signed-off-by: Satoru Takeuchi <takeuchi_satoru@jp.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
btrfs-crc.c

index e689ed4..9e2a01f 100644 (file)
@@ -22,7 +22,7 @@
 #include "crc32c.h"
 #include "utils.h"
 
-void print_usage(void)
+void print_usage(int status)
 {
        printf("usage: btrfs-crc filename\n");
        printf("    print out the btrfs crc for \"filename\"\n");
@@ -30,7 +30,7 @@ void print_usage(void)
        printf("    brute force search for file names with the given crc\n");
        printf("      -s seed    the random seed (default: random)\n");
        printf("      -l length  the length of the file names (default: 10)\n");
-       exit(1);
+       exit(status);
 }
 
 int main(int argc, char **argv)
@@ -57,9 +57,9 @@ int main(int argc, char **argv)
                        seed = atoll(optarg);
                        break;
                case 'h':
-                       print_usage();
+                       print_usage(1);
                case '?':
-                       return 255;
+                       print_usage(255);
                }
        }
 
@@ -68,7 +68,7 @@ int main(int argc, char **argv)
 
        if (!loop) {
                if (check_argc_min(argc - optind, 1))
-                       return 255;
+                       print_usage(255);
 
                printf("%12u - %s\n", crc32c(~1, str, strlen(str)), str);
                return 0;