From 76e27a79eddb6279bbbc0ec840d66b753a9ba0f3 Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Mon, 12 Jun 2017 12:50:54 +0200 Subject: ubi-utils: Return error code if command line option is unknown The tools in question will quit with an exit code 0 if the command line option was not recognized. By returning an error code a calling script has the possibility to distinguish between a real success and an invalid invocation. We need to return -1 instead of EXIT_FAILURE to be consistent with the other exit code places. Signed-off-by: Daniel Wagner Signed-off-by: David Oberhollenzer --- ubi-utils/ubiblock.c | 6 +++++- ubi-utils/ubiformat.c | 6 +++++- ubi-utils/ubimkvol.c | 7 ++++++- ubi-utils/ubirmvol.c | 7 ++++++- ubi-utils/ubirsvol.c | 7 ++++++- ubi-utils/ubiupdatevol.c | 7 ++++++- 6 files changed, 34 insertions(+), 6 deletions(-) (limited to 'ubi-utils') diff --git a/ubi-utils/ubiblock.c b/ubi-utils/ubiblock.c index 1e12be8..8e36678 100644 --- a/ubi-utils/ubiblock.c +++ b/ubi-utils/ubiblock.c @@ -78,11 +78,15 @@ static int parse_opt(int argc, char * const argv[]) args.node = optarg; break; case 'h': - case '?': printf("%s\n\n", doc); printf("%s\n\n", usage); printf("%s\n", optionsstr); exit(EXIT_SUCCESS); + case '?': + printf("%s\n\n", doc); + printf("%s\n\n", usage); + printf("%s\n", optionsstr); + return -1; case 'V': common_print_version(); diff --git a/ubi-utils/ubiformat.c b/ubi-utils/ubiformat.c index 896fe20..ef0378a 100644 --- a/ubi-utils/ubiformat.c +++ b/ubi-utils/ubiformat.c @@ -209,11 +209,15 @@ static int parse_opt(int argc, char * const argv[]) exit(EXIT_SUCCESS); case 'h': - case '?': printf("%s\n\n", doc); printf("%s\n\n", usage); printf("%s\n", optionsstr); exit(EXIT_SUCCESS); + case '?': + printf("%s\n\n", doc); + printf("%s\n\n", usage); + printf("%s\n", optionsstr); + return -1; case ':': return errmsg("parameter is missing"); diff --git a/ubi-utils/ubimkvol.c b/ubi-utils/ubimkvol.c index fdbc67f..b81fc99 100644 --- a/ubi-utils/ubimkvol.c +++ b/ubi-utils/ubimkvol.c @@ -164,12 +164,17 @@ static int parse_opt(int argc, char * const argv[]) break; case 'h': - case '?': printf("%s\n\n", doc); printf("%s\n\n", usage); printf("%s\n", optionsstr); exit(EXIT_SUCCESS); + case '?': + printf("%s\n\n", doc); + printf("%s\n\n", usage); + printf("%s\n", optionsstr); + return -1; + case 'V': common_print_version(); exit(EXIT_SUCCESS); diff --git a/ubi-utils/ubirmvol.c b/ubi-utils/ubirmvol.c index 3370aff..049e70d 100644 --- a/ubi-utils/ubirmvol.c +++ b/ubi-utils/ubirmvol.c @@ -109,12 +109,17 @@ static int parse_opt(int argc, char * const argv[]) break; case 'h': - case '?': printf("%s\n\n", doc); printf("%s\n\n", usage); printf("%s\n", optionsstr); exit(EXIT_SUCCESS); + case '?': + printf("%s\n\n", doc); + printf("%s\n\n", usage); + printf("%s\n", optionsstr); + return -1; + case 'V': common_print_version(); exit(EXIT_SUCCESS); diff --git a/ubi-utils/ubirsvol.c b/ubi-utils/ubirsvol.c index 69a4ea1..0854abc 100644 --- a/ubi-utils/ubirsvol.c +++ b/ubi-utils/ubirsvol.c @@ -137,12 +137,17 @@ static int parse_opt(int argc, char * const argv[]) break; case 'h': - case '?': printf("%s\n\n", doc); printf("%s\n\n", usage); printf("%s\n", optionsstr); exit(EXIT_SUCCESS); + case '?': + printf("%s\n\n", doc); + printf("%s\n\n", usage); + printf("%s\n", optionsstr); + return -1; + case 'V': common_print_version(); exit(EXIT_SUCCESS); diff --git a/ubi-utils/ubiupdatevol.c b/ubi-utils/ubiupdatevol.c index 5096791..bdcc091 100644 --- a/ubi-utils/ubiupdatevol.c +++ b/ubi-utils/ubiupdatevol.c @@ -109,12 +109,17 @@ static int parse_opt(int argc, char * const argv[]) break; case 'h': - case '?': printf("%s\n\n", doc); printf("%s\n\n", usage); printf("%s\n", optionsstr); exit(EXIT_SUCCESS); + case '?': + printf("%s\n\n", doc); + printf("%s\n\n", usage); + printf("%s\n", optionsstr); + return -1; + case 'V': common_print_version(); exit(EXIT_SUCCESS); -- cgit v1.2.3