diff options
author | Alan Jenkins <alan-jenkins@tuffmail.co.uk> | 2009-06-11 15:43:48 +0100 |
---|---|---|
committer | Alan Jenkins <alan-jenkins@tuffmail.co.uk> | 2009-06-11 16:28:44 +0100 |
commit | b8c5b894e97aa052ecac1ba6615edadb757a0e82 (patch) | |
tree | 0ffadbab857c03632347e09fc8e8d1d641037793 | |
parent | 6a2e5d58a19c068b2858e553ffbee71e13a0a5ef (diff) | |
download | module-init-tools-b8c5b894e97aa052ecac1ba6615edadb757a0e82.tar.gz |
depmod: simplify option error handling
Backcompat is removed, so we can exit immediately if we don't recognise
an option.
Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
-rw-r--r-- | depmod.c | 16 | ||||
-rwxr-xr-x | tests/test-depmod/10badcommand.sh | 22 |
2 files changed, 14 insertions, 24 deletions
@@ -1175,17 +1175,13 @@ struct module_overrides *overrides = NULL; int main(int argc, char *argv[]) { int opt, all = 0, maybe_all = 0, doing_stdout = 0; - char *basedir = "", *dirname, *version, *badopt = NULL, - *system_map = NULL; + char *basedir = "", *dirname, *version, *system_map = NULL; int i; const char *config = NULL; if (native_endianness() == 0) abort(); - /* Don't print out any errors just yet, we might want to exec - backwards compat version. */ - opterr = 0; while ((opt = getopt_long(argc, argv, "aAb:C:F:euqrvnhVwm", options, NULL)) != -1) { switch (opt) { @@ -1232,7 +1228,8 @@ int main(int argc, char *argv[]) force_map_files = 1; break; default: - badopt = argv[optind-1]; + print_usage(argv[0]); + exit(1); } } @@ -1259,13 +1256,6 @@ int main(int argc, char *argv[]) exit(2); } - if (badopt) { - fprintf(stderr, "%s: malformed/unrecognized option '%s'\n", - argv[0], badopt); - print_usage(argv[0]); - exit(1); - } - /* Depmod -a by default if no names. */ if (optind == argc) all = 1; diff --git a/tests/test-depmod/10badcommand.sh b/tests/test-depmod/10badcommand.sh index 898a4fa..c03fd9a 100755 --- a/tests/test-depmod/10badcommand.sh +++ b/tests/test-depmod/10badcommand.sh @@ -4,22 +4,22 @@ for ENDIAN in -le -be; do for BITNESS in 32 64; do -[ "`depmod --unknown 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] +[ "`depmod --unknown 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] -[ "`depmod -v --unknown 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] -[ "`depmod --unknown -v 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] +[ "`depmod -v --unknown 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] +[ "`depmod --unknown -v 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] -[ "`depmod 2.6.0 --unknown 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] -[ "`depmod --unknown 2.6.0 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] +[ "`depmod 2.6.0 --unknown 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] +[ "`depmod --unknown 2.6.0 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] -[ "`depmod -v 2.6.0 --unknown 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] -[ "`depmod -v --unknown 2.6.0 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] +[ "`depmod -v 2.6.0 --unknown 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] +[ "`depmod -v --unknown 2.6.0 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] -[ "`depmod 2.6.0 -v --unknown 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] -[ "`depmod --unknown -v 2.6.0 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] +[ "`depmod 2.6.0 -v --unknown 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] +[ "`depmod --unknown -v 2.6.0 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] -[ "`depmod 2.6.0 --unknown -v 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] -[ "`depmod --unknown 2.6.0 -v 2>&1 | head -1`" = "depmod: malformed/unrecognized option '--unknown'" ] +[ "`depmod 2.6.0 --unknown -v 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] +[ "`depmod --unknown 2.6.0 -v 2>&1 | head -1`" = "depmod: unrecognized option \`--unknown'" ] done done |