ifupdown: save some 100+ bytes of code in addstr()
[oweals/busybox.git] / util-linux / losetup.c
index 6b9a810f283bc338b1f70178db36c9a34b41ca6d..c7eb85a918b1b1bd34dab04f4612052c950e9719 100644 (file)
 
 int losetup_main(int argc, char **argv)
 {
-       unsigned long opt;
+       unsigned opt;
        char *opt_o;
-       int offset = 0;
+       unsigned long long offset = 0;
 
-       opt = bb_getopt_ulflags(argc, argv, "do:", &opt_o);
+       opt = getopt32(argc, argv, "do:", &opt_o);
        argc -= optind;
        argv += optind;
 
@@ -35,7 +35,7 @@ int losetup_main(int argc, char **argv)
        }
 
        if (opt == 0x2) // -o
-               offset = bb_xparse_number(opt_o, NULL);
+               offset = xatoull(opt_o);
 
        /* -o or no option */
 
@@ -48,11 +48,11 @@ int losetup_main(int argc, char **argv)
                printf("%s: %s\n", argv[0], s);
                if (ENABLE_FEATURE_CLEAN_UP) free(s);
        } else {
-               char dev[11] = "/dev/loop0";
+               char dev[sizeof(LOOP_NAME"0")] = LOOP_NAME"0";
                char c;
                for (c = '0'; c <= '9'; ++c) {
                        char *s;
-                       dev[9] = c;
+                       dev[sizeof(LOOP_NAME"0")-2] = c;
                        s = query_loop(dev);
                        if (s) {
                                printf("%s: %s\n", dev, s);