[PATCH] Fix exit status for plipconfig -h/--help

Aruna Balakrishnaiah aruna at linux.vnet.ibm.com
Fri Jan 6 07:54:53 UTC 2012


Signed-off-by: Aruna Balakrishnaiah <aruna at linux.vnet.ibm.com>

 Parse -h/--help for plipconfig and return successful command execution.
---
 plipconfig.c |   21 +++++++++++++++++----
 1 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/plipconfig.c b/plipconfig.c
index 1f972a7..2fef9d8 100644
--- a/plipconfig.c
+++ b/plipconfig.c
@@ -66,7 +66,6 @@ void usage(void)
     fprintf(stderr, _("Usage: plipconfig [-a] [-i] [-v] interface\n"));
     fprintf(stderr, _("                  [nibble NN] [trigger NN]\n"));
     fprintf(stderr, _("       plipconfig -V | --version\n"));
-    exit(-1);
 }
 
 void print_plip(void)
@@ -99,12 +98,21 @@ int main(int argc, char **argv)
 	    opt_v = 1;
 	if (!strcmp(*argv, "-V") || !strcmp(*argv, "--version"))
 	    version();
+	if (!strcmp(*argv, "-h") || !strcmp(*argv, "--help")) {
+	    usage();
+	    exit(0);
+	} else {
+	    usage();
+	    exit(-1);
+	}
 	argv++;
 	argc--;
     }
 
-    if (argc == 0)
+    if (argc == 0) {
 	usage();
+	exit(-1);
+   }
 
     spp = argv;
     strncpy(ifr.ifr_name, *spp++, IFNAMSIZ);
@@ -122,20 +130,25 @@ int main(int argc, char **argv)
     }
     while (*spp != (char *) NULL) {
 	if (!strcmp(*spp, "nibble")) {
-	    if (*++spp == NULL)
+	    if (*++spp == NULL) {
 		usage();
+		exit(-1);
+	    }
 	    plip->nibble = atoi(*spp);
 	    spp++;
 	    continue;
 	}
 	if (!strcmp(*spp, "trigger")) {
-	    if (*++spp == NULL)
+	    if (*++spp == NULL) {
 		usage();
+		exit(-1);
+	    }
 	    plip->trigger = atoi(*spp);
 	    spp++;
 	    continue;
 	}
 	usage();
+	exit(-1);
     }
 
     plip->pcmd = PLIP_SET_TIMEOUT;




More information about the Pkg-net-tools-maintainers mailing list