diff options
author | Karel Zak | 2016-12-19 13:13:34 +0100 |
---|---|---|
committer | Karel Zak | 2016-12-19 13:13:34 +0100 |
commit | 677ec86cef983a106c6e5d175f44b125858c3016 (patch) | |
tree | b993641faa65700acd62768da189a103da4c40ec /sys-utils | |
parent | include/c.h: add errtryhelp() (diff) | |
download | kernel-qcow2-util-linux-677ec86cef983a106c6e5d175f44b125858c3016.tar.gz kernel-qcow2-util-linux-677ec86cef983a106c6e5d175f44b125858c3016.tar.xz kernel-qcow2-util-linux-677ec86cef983a106c6e5d175f44b125858c3016.zip |
Use --help suggestion on invalid option
The current default is to print all usage() output. This is overkill
in many case.
Addresses: https://github.com/karelzak/util-linux/issues/338
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'sys-utils')
35 files changed, 40 insertions, 58 deletions
diff --git a/sys-utils/blkdiscard.c b/sys-utils/blkdiscard.c index c83e12f20..2bfa7f856 100644 --- a/sys-utils/blkdiscard.c +++ b/sys-utils/blkdiscard.c @@ -163,8 +163,7 @@ int main(int argc, char **argv) act = ACT_ZEROOUT; break; default: - usage(stderr); - break; + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/chcpu.c b/sys-utils/chcpu.c index 50b834c0a..92019a912 100644 --- a/sys-utils/chcpu.c +++ b/sys-utils/chcpu.c @@ -333,7 +333,7 @@ int main(int argc, char *argv[]) printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/chmem.c b/sys-utils/chmem.c index 14f5aa48d..ad394ac4c 100644 --- a/sys-utils/chmem.c +++ b/sys-utils/chmem.c @@ -308,6 +308,8 @@ int main(int argc, char **argv) case 'V': printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; + default: + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/ctrlaltdel.c b/sys-utils/ctrlaltdel.c index 4a6958485..840945082 100644 --- a/sys-utils/ctrlaltdel.c +++ b/sys-utils/ctrlaltdel.c @@ -100,7 +100,7 @@ int main(int argc, char **argv) case 'h': usage(stdout); default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } if (argc < 2) diff --git a/sys-utils/dmesg.c b/sys-utils/dmesg.c index a06c6820d..a608cf574 100644 --- a/sys-utils/dmesg.c +++ b/sys-utils/dmesg.c @@ -1380,9 +1380,8 @@ int main(int argc, char *argv[]) case OPT_TIME_FORMAT: ctl.time_fmt = which_time_format(optarg); break; - case '?': default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } argc -= optind; diff --git a/sys-utils/eject.c b/sys-utils/eject.c index 008b4fe4e..7bc68555a 100644 --- a/sys-utils/eject.c +++ b/sys-utils/eject.c @@ -268,8 +268,7 @@ static void parse_args(struct eject_control *ctl, int argc, char **argv) exit(EXIT_SUCCESS); break; default: - case '?': - usage(stderr); + errtryhelp(EXIT_FAILURE); break; } } diff --git a/sys-utils/fallocate.c b/sys-utils/fallocate.c index 1663a8e7e..eb37b3838 100644 --- a/sys-utils/fallocate.c +++ b/sys-utils/fallocate.c @@ -347,8 +347,7 @@ int main(int argc, char **argv) printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: - usage(stderr); - break; + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/flock.c b/sys-utils/flock.c index dcd0f5e40..08e313e69 100644 --- a/sys-utils/flock.c +++ b/sys-utils/flock.c @@ -214,12 +214,10 @@ int main(int argc, char *argv[]) case 'V': printf(UTIL_LINUX_VERSION); exit(EX_OK); + case 'h': + usage(0); default: - /* optopt will be set if this was an unrecognized - * option, i.e. *not* 'h' or '? - */ - usage(optopt ? EX_USAGE : 0); - break; + errtryhelp(EX_USAGE); } } diff --git a/sys-utils/fsfreeze.c b/sys-utils/fsfreeze.c index d4d5bd3df..727319a66 100644 --- a/sys-utils/fsfreeze.c +++ b/sys-utils/fsfreeze.c @@ -107,8 +107,7 @@ int main(int argc, char **argv) printf(UTIL_LINUX_VERSION); exit(EXIT_SUCCESS); default: - usage(stderr); - break; + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/fstrim.c b/sys-utils/fstrim.c index b764b0b33..e92a822f0 100644 --- a/sys-utils/fstrim.c +++ b/sys-utils/fstrim.c @@ -331,7 +331,7 @@ int main(int argc, char **argv) verbose = 1; break; default: - usage(stderr); + errtryhelp(EXIT_FAILURE); break; } } diff --git a/sys-utils/hwclock.c b/sys-utils/hwclock.c index d36c9c9b8..10d9e37e9 100644 --- a/sys-utils/hwclock.c +++ b/sys-utils/hwclock.c @@ -1850,9 +1850,9 @@ int main(int argc, char **argv) out_version(); return 0; case 'h': /* --help */ - case '?': - default: usage(NULL); + default: + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/ipcmk.c b/sys-utils/ipcmk.c index d79071c8d..f18baf00d 100644 --- a/sys-utils/ipcmk.c +++ b/sys-utils/ipcmk.c @@ -127,8 +127,7 @@ int main(int argc, char **argv) printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: - ask_shm = ask_msg = ask_sem = 0; - break; + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/ipcrm.c b/sys-utils/ipcrm.c index 06bbd446b..0432b224f 100644 --- a/sys-utils/ipcrm.c +++ b/sys-utils/ipcrm.c @@ -403,7 +403,7 @@ int main(int argc, char **argv) printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } @@ -413,7 +413,7 @@ int main(int argc, char **argv) /* print usage if we still have some arguments left over */ if (optind < argc) { warnx(_("unknown argument: %s"), argv[optind]); - usage(stderr); + errtryhelp(EXIT_FAILURE); } return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE; diff --git a/sys-utils/ipcs.c b/sys-utils/ipcs.c index 10ce23883..6fab5b810 100644 --- a/sys-utils/ipcs.c +++ b/sys-utils/ipcs.c @@ -155,7 +155,7 @@ int main (int argc, char **argv) printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/ldattach.c b/sys-utils/ldattach.c index 8961739db..5d6dc0ba0 100644 --- a/sys-utils/ldattach.c +++ b/sys-utils/ldattach.c @@ -356,8 +356,7 @@ int main(int argc, char **argv) case 'h': usage(EXIT_SUCCESS); default: - warnx(_("invalid option")); - usage(EXIT_FAILURE); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/losetup.c b/sys-utils/losetup.c index 215ab9c86..ad508109d 100644 --- a/sys-utils/losetup.c +++ b/sys-utils/losetup.c @@ -698,7 +698,7 @@ int main(int argc, char **argv) flags |= LOOPDEV_FL_SIZELIMIT; break; default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/lscpu.c b/sys-utils/lscpu.c index e3e6ff65c..df561ac7f 100644 --- a/sys-utils/lscpu.c +++ b/sys-utils/lscpu.c @@ -2051,7 +2051,7 @@ int main(int argc, char *argv[]) printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/lsmem.c b/sys-utils/lsmem.c index e0de829b4..69733d871 100644 --- a/sys-utils/lsmem.c +++ b/sys-utils/lsmem.c @@ -491,7 +491,7 @@ int main(int argc, char **argv) lsmem->want_table = 0; break; default: - lsmem_usage(stderr); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/lsns.c b/sys-utils/lsns.c index 809737cfa..0c4ff449d 100644 --- a/sys-utils/lsns.c +++ b/sys-utils/lsns.c @@ -718,9 +718,8 @@ int main(int argc, char *argv[]) ls.fltr_ntypes++; break; } - case '?': default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/mount.c b/sys-utils/mount.c index 92526cf78..b45de78ed 100644 --- a/sys-utils/mount.c +++ b/sys-utils/mount.c @@ -1017,8 +1017,7 @@ int main(int argc, char **argv) mnt_context_set_source(cxt, optarg); break; default: - usage(stderr); - break; + errtryhelp(MOUNT_EX_USAGE); } } diff --git a/sys-utils/mountpoint.c b/sys-utils/mountpoint.c index 070d02478..f5302937b 100644 --- a/sys-utils/mountpoint.c +++ b/sys-utils/mountpoint.c @@ -173,8 +173,7 @@ int main(int argc, char **argv) printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: - usage(stderr); - break; + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/nsenter.c b/sys-utils/nsenter.c index fc301d9f3..6dc7b225c 100644 --- a/sys-utils/nsenter.c +++ b/sys-utils/nsenter.c @@ -338,7 +338,7 @@ int main(int argc, char *argv[]) break; #endif default: - usage(EXIT_FAILURE); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/pivot_root.c b/sys-utils/pivot_root.c index a7b28bf09..acc105621 100644 --- a/sys-utils/pivot_root.c +++ b/sys-utils/pivot_root.c @@ -65,7 +65,7 @@ int main(int argc, char **argv) case 'h': usage(stdout); default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } if (argc != 3) diff --git a/sys-utils/prlimit.c b/sys-utils/prlimit.c index b244ddb88..b4ad739ed 100644 --- a/sys-utils/prlimit.c +++ b/sys-utils/prlimit.c @@ -607,9 +607,8 @@ int main(int argc, char **argv) case RAW_OPTION: raw = 1; break; - default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } if (argc > optind && pid) diff --git a/sys-utils/readprofile.c b/sys-utils/readprofile.c index 39a24deda..0170a7240 100644 --- a/sys-utils/readprofile.c +++ b/sys-utils/readprofile.c @@ -213,7 +213,7 @@ int main(int argc, char **argv) case 'h': usage(stdout); default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/setarch.c b/sys-utils/setarch.c index d3d52c2ec..eb9cf21a0 100644 --- a/sys-utils/setarch.c +++ b/sys-utils/setarch.c @@ -379,7 +379,7 @@ int main(int argc, char *argv[]) warnx(_("unrecognized option '--list'")); /* fallthrough */ default: - show_usage(NULL); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/setpriv.c b/sys-utils/setpriv.c index 977ccd14a..897be3fd0 100644 --- a/sys-utils/setpriv.c +++ b/sys-utils/setpriv.c @@ -750,10 +750,8 @@ int main(int argc, char **argv) case 'V': printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; - case '?': - usage(stderr); default: - errx(EXIT_FAILURE, _("unrecognized option '%c'"), c); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/setsid.c b/sys-utils/setsid.c index bae97ff9b..ecc32ef41 100644 --- a/sys-utils/setsid.c +++ b/sys-utils/setsid.c @@ -80,7 +80,7 @@ int main(int argc, char **argv) case 'h': usage(stdout); default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } if (argc - optind < 1) diff --git a/sys-utils/swapoff.c b/sys-utils/swapoff.c index dd3bf05fc..e20c502bd 100644 --- a/sys-utils/swapoff.c +++ b/sys-utils/swapoff.c @@ -221,9 +221,8 @@ int main(int argc, char *argv[]) case 'U': add_uuid(optarg); break; - case '?': default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } argv += optind; diff --git a/sys-utils/swapon.c b/sys-utils/swapon.c index 0ee5caf44..0bf95a5cc 100644 --- a/sys-utils/swapon.c +++ b/sys-utils/swapon.c @@ -960,9 +960,8 @@ int main(int argc, char *argv[]) return EXIT_SUCCESS; case 0: break; - case '?': default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } argv += optind; diff --git a/sys-utils/tunelp.c b/sys-utils/tunelp.c index 8ea5c0238..7b38255d6 100644 --- a/sys-utils/tunelp.c +++ b/sys-utils/tunelp.c @@ -238,7 +238,7 @@ int main(int argc, char **argv) printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: - print_usage(stderr); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/umount.c b/sys-utils/umount.c index 0c81970c7..950a18c59 100644 --- a/sys-utils/umount.c +++ b/sys-utils/umount.c @@ -610,8 +610,7 @@ int main(int argc, char **argv) print_version(); break; default: - usage(stderr); - break; + errtryhelp(MOUNT_EX_USAGE); } } diff --git a/sys-utils/unshare.c b/sys-utils/unshare.c index 234c7501f..edd9bbe69 100644 --- a/sys-utils/unshare.c +++ b/sys-utils/unshare.c @@ -375,7 +375,7 @@ int main(int argc, char *argv[]) propagation = parse_propagation(optarg); break; default: - usage(EXIT_FAILURE); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/wdctl.c b/sys-utils/wdctl.c index 761142f2c..49711f0cf 100644 --- a/sys-utils/wdctl.c +++ b/sys-utils/wdctl.c @@ -553,10 +553,8 @@ int main(int argc, char *argv[]) noident = 1; notimeouts = 1; break; - - case '?': default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } diff --git a/sys-utils/zramctl.c b/sys-utils/zramctl.c index 853401caf..29bdb8518 100644 --- a/sys-utils/zramctl.c +++ b/sys-utils/zramctl.c @@ -640,7 +640,7 @@ int main(int argc, char **argv) case 'h': usage(stdout); default: - usage(stderr); + errtryhelp(EXIT_FAILURE); } } |