Hello tech@
This patch brings npppd(8)'s option parsing in sync with all the other userland
utils that don't recognize -h for help/usage (except for some games, still).
Also exit(3) at the end of the usage() function and mark it as __dead.
Greetings Ben
Index: npppd/npppd.8
===================================================================
RCS file: /cvs/src/usr.sbin/npppd/npppd/npppd.8,v
retrieving revision 1.5
diff -u -p -r1.5 npppd.8
--- npppd/npppd.8 29 Jan 2013 15:42:20 -0000 1.5
+++ npppd/npppd.8 8 Nov 2015 20:30:35 -0000
@@ -23,7 +23,7 @@
.Nd new Point-to-Point Protocol daemon
.Sh SYNOPSIS
.Nm npppd
-.Op Fl dhn
+.Op Fl dn
.Op Fl f Ar config_file
.Sh DESCRIPTION
.Nm
@@ -38,8 +38,6 @@ will run in the foreground and log to
.Em stderr .
.It Fl f Ar config_file
Specify an alternative configuration file.
-.It Fl h
-Show the usage.
.It Fl n
Configtest mode.
Only check the configuration file for validity.
Index: npppd/npppd.c
===================================================================
RCS file: /cvs/src/usr.sbin/npppd/npppd/npppd.c,v
retrieving revision 1.41
diff -u -p -r1.41 npppd.c
--- npppd/npppd.c 24 Jun 2015 04:57:55 -0000 1.41
+++ npppd/npppd.c 8 Nov 2015 20:54:15 -0000
@@ -145,7 +145,7 @@ main(int argc, char *argv[])
const char *npppd_conf0 = DEFAULT_NPPPD_CONF;
struct passwd *pw;
- while ((ch = getopt(argc, argv, "nf:dh")) != -1) {
+ while ((ch = getopt(argc, argv, "nf:d")) != -1) {
switch (ch) {
case 'n':
nflag = 1;
@@ -157,17 +157,14 @@ main(int argc, char *argv[])
debuglevel++;
runasdaemon = 0;
break;
- case '?':
- case 'h':
+ default:
usage();
- exit(1);
}
}
argc -= optind;
argv += optind;
if (argc != 0) {
usage();
- exit(1);
}
if (nflag) {
debuglevel++;
@@ -225,10 +222,11 @@ main(int argc, char *argv[])
exit((!stop_by_error)? EXIT_SUCCESS : EXIT_FAILURE);
}
-static void
-usage()
+static __dead void
+usage(void)
{
- fprintf(stderr, "usage: npppd [-dhn] [-f config_file]\n");
+ fprintf(stderr, "usage: npppd [-dn] [-f config_file]\n");
+ exit(1);
}
/** Returns the singleton npppd instance */