btrfs-progs: dump-super: switch to getopt_long
authorDavid Sterba <dsterba@suse.com>
Tue, 15 Mar 2016 15:31:58 +0000 (16:31 +0100)
committerDavid Sterba <dsterba@suse.com>
Tue, 15 Mar 2016 15:32:39 +0000 (16:32 +0100)
Signed-off-by: David Sterba <dsterba@suse.com>
cmds-inspect-dump-super.c

index ff7257e..253a68a 100644 (file)
@@ -23,6 +23,7 @@
 #include <ctype.h>
 #include <uuid/uuid.h>
 #include <errno.h>
+#include <getopt.h>
 
 #include "ctree.h"
 #include "disk-io.h"
@@ -453,7 +454,6 @@ const char * const cmd_inspect_dump_super_usage[] = {
 
 int cmd_inspect_dump_super(int argc, char **argv)
 {
-       int opt;
        int all = 0;
        int full = 0;
        int force = 0;
@@ -464,8 +464,17 @@ int cmd_inspect_dump_super(int argc, char **argv)
        u64 arg;
        u64 sb_bytenr = btrfs_sb_offset(0);
 
-       while ((opt = getopt(argc, argv, "fFai:s:")) != -1) {
-               switch (opt) {
+       while (1) {
+               int c;
+               static const struct option long_options[] = {
+                       {NULL, 0, NULL, 0}
+               };
+
+               c = getopt_long(argc, argv, "fFai:s:", long_options, NULL);
+               if (c < 0)
+                       break;
+
+               switch (c) {
                case 'i':
                        arg = arg_strtou64(optarg);
                        if (arg >= BTRFS_SUPER_MIRROR_MAX) {