mirror of
https://github.com/osmarks/ngircd.git
synced 2025-01-20 20:36:53 +00:00
Enhance handling of command line errors, and "--help" & "--version"
Return with exit code 0 ("no error") when "--help" or "--version" was used (this resulted in exit code 1, "error" before). And exit with code 2 ("command line error") for all invalid command line options, and show the error message on stderr (message was printed to stdout before, and exit code was 1, "generic error"). This new behaviour is more in line with the GNU "coding standards", see <https://www.gnu.org/prep/standards/html_node/_002d_002dhelp.html>.
This commit is contained in:
parent
fb5aa8f652
commit
22cae1b5fc
@ -125,7 +125,7 @@ main(int argc, const char *argv[])
|
||||
if (strcmp(argv[i], "--help") == 0) {
|
||||
Show_Version();
|
||||
puts(""); Show_Help( ); puts( "" );
|
||||
exit(1);
|
||||
exit(0);
|
||||
}
|
||||
if (strcmp(argv[i], "--nodaemon") == 0) {
|
||||
NGIRCd_NoDaemon = true;
|
||||
@ -143,7 +143,7 @@ main(int argc, const char *argv[])
|
||||
#endif
|
||||
if (strcmp(argv[i], "--version") == 0) {
|
||||
Show_Version();
|
||||
exit(1);
|
||||
exit(0);
|
||||
}
|
||||
}
|
||||
else if(argv[i][0] == '-' && argv[i][1] != '-') {
|
||||
@ -200,21 +200,23 @@ main(int argc, const char *argv[])
|
||||
}
|
||||
|
||||
if (!ok) {
|
||||
printf("%s: invalid option \"-%c\"!\n",
|
||||
PACKAGE_NAME, argv[i][n]);
|
||||
printf("Try \"%s --help\" for more information.\n",
|
||||
PACKAGE_NAME);
|
||||
exit(1);
|
||||
fprintf(stderr,
|
||||
"%s: invalid option \"-%c\"!\n",
|
||||
PACKAGE_NAME, argv[i][n]);
|
||||
fprintf(stderr,
|
||||
"Try \"%s --help\" for more information.\n",
|
||||
PACKAGE_NAME);
|
||||
exit(2);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
if (!ok) {
|
||||
printf("%s: invalid option \"%s\"!\n",
|
||||
PACKAGE_NAME, argv[i]);
|
||||
printf("Try \"%s --help\" for more information.\n",
|
||||
PACKAGE_NAME);
|
||||
exit(1);
|
||||
fprintf(stderr, "%s: invalid option \"%s\"!\n",
|
||||
PACKAGE_NAME, argv[i]);
|
||||
fprintf(stderr, "Try \"%s --help\" for more information.\n",
|
||||
PACKAGE_NAME);
|
||||
exit(2);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user