Module Name:    src
Committed By:   rillig
Date:           Sat Mar 22 06:09:48 UTC 2025

Modified Files:
        src/usr.sbin/umcpmioctl: printumcpmio.c putflash.c umcpmioctl.c

Log Message:
umcpmioctl: exit 1 on usage error, except for -h

While here, combine the calls to 'usage' and 'exit'.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/usr.sbin/umcpmioctl/printumcpmio.c \
    src/usr.sbin/umcpmioctl/putflash.c
cvs rdiff -u -r1.3 -r1.4 src/usr.sbin/umcpmioctl/umcpmioctl.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.sbin/umcpmioctl/printumcpmio.c
diff -u src/usr.sbin/umcpmioctl/printumcpmio.c:1.2 src/usr.sbin/umcpmioctl/printumcpmio.c:1.3
--- src/usr.sbin/umcpmioctl/printumcpmio.c:1.2	Sat Mar 22 05:46:32 2025
+++ src/usr.sbin/umcpmioctl/printumcpmio.c	Sat Mar 22 06:09:48 2025
@@ -1,4 +1,4 @@
-/*	$NetBSD: printumcpmio.c,v 1.2 2025/03/22 05:46:32 rillig Exp $	*/
+/*	$NetBSD: printumcpmio.c,v 1.3 2025/03/22 06:09:48 rillig Exp $	*/
 
 /*
  * Copyright (c) 2024 Brad Spencer <b...@anduin.eldar.org>
@@ -16,8 +16,9 @@
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
+#include <sys/cdefs.h>
 #ifdef __RCSID
-__RCSID("$NetBSD: printumcpmio.c,v 1.2 2025/03/22 05:46:32 rillig Exp $");
+__RCSID("$NetBSD: printumcpmio.c,v 1.3 2025/03/22 06:09:48 rillig Exp $");
 #endif
 
 /* Functions to print stuff */
Index: src/usr.sbin/umcpmioctl/putflash.c
diff -u src/usr.sbin/umcpmioctl/putflash.c:1.2 src/usr.sbin/umcpmioctl/putflash.c:1.3
--- src/usr.sbin/umcpmioctl/putflash.c:1.2	Sat Mar 22 05:46:32 2025
+++ src/usr.sbin/umcpmioctl/putflash.c	Sat Mar 22 06:09:48 2025
@@ -1,4 +1,4 @@
-/*	$NetBSD: putflash.c,v 1.2 2025/03/22 05:46:32 rillig Exp $	*/
+/*	$NetBSD: putflash.c,v 1.3 2025/03/22 06:09:48 rillig Exp $	*/
 
 /*
  * Copyright (c) 2024 Brad Spencer <b...@anduin.eldar.org>
@@ -16,8 +16,9 @@
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
+#include <sys/cdefs.h>
 #ifdef __RCSID
-__RCSID("$NetBSD: putflash.c,v 1.2 2025/03/22 05:46:32 rillig Exp $");
+__RCSID("$NetBSD: putflash.c,v 1.3 2025/03/22 06:09:48 rillig Exp $");
 #endif
 
 /* Functions to parse stuff */

Index: src/usr.sbin/umcpmioctl/umcpmioctl.c
diff -u src/usr.sbin/umcpmioctl/umcpmioctl.c:1.3 src/usr.sbin/umcpmioctl/umcpmioctl.c:1.4
--- src/usr.sbin/umcpmioctl/umcpmioctl.c:1.3	Sat Mar 22 05:46:32 2025
+++ src/usr.sbin/umcpmioctl/umcpmioctl.c	Sat Mar 22 06:09:48 2025
@@ -1,4 +1,4 @@
-/*	$NetBSD: umcpmioctl.c,v 1.3 2025/03/22 05:46:32 rillig Exp $	*/
+/*	$NetBSD: umcpmioctl.c,v 1.4 2025/03/22 06:09:48 rillig Exp $	*/
 
 /*
  * Copyright (c) 2024 Brad Spencer <b...@anduin.eldar.org>
@@ -18,7 +18,7 @@
 
 #include <sys/cdefs.h>
 #ifdef __RCSID
-__RCSID("$NetBSD: umcpmioctl.c,v 1.3 2025/03/22 05:46:32 rillig Exp $");
+__RCSID("$NetBSD: umcpmioctl.c,v 1.4 2025/03/22 06:09:48 rillig Exp $");
 #endif
 
 /* Main userland program that can pull the SRAM and FLASH content from a MCP2221
@@ -44,8 +44,8 @@ __RCSID("$NetBSD: umcpmioctl.c,v 1.3 202
 #include "printumcpmio.h"
 #include "putflash.h"
 
-static void
-usage(void)
+__dead static void
+usage(int status)
 {
 	const char *p = getprogname();
 
@@ -81,6 +81,7 @@ usage(void)
 	fprintf(stderr, "usbprod - USB Product Descriptor\n");
 	fprintf(stderr, "usbsn - USB Serial Number\n");
 	fprintf(stderr, "chipsn - Chip Serial Number\n");
+	exit(status);
 }
 
 static int
@@ -111,9 +112,9 @@ main(int argc, char *argv[])
 			debug = true;
 			break;
 		case 'h':
+			usage(0);
 		default:
-			usage();
-			exit(0);
+			usage(1);
 		}
 	}
 
@@ -126,10 +127,8 @@ main(int argc, char *argv[])
 		    argv[0], argv[1], argv[2], argv[3], argv[4], argv[5]);
 	}
 
-	if (argc <= 1) {
-		usage();
-		exit(0);
-	}
+	if (argc <= 1)
+		usage(0);
 
 	fd = open(argv[0], O_RDWR, 0);
 	if (fd == -1) {
@@ -185,35 +184,29 @@ main(int argc, char *argv[])
 									break;
 								default:
 									fprintf(stderr, "Unhandled subcommand to get flash: %s %d\n\n", argv[3], validsubsub);
-									usage();
-									exit(1);
+									usage(1);
 								}
 								error = ioctl(fd, UMCPMIO_GET_FLASH, &ioctl_get_flash);
 							} else {
 								fprintf(stderr, "Unknown subcommand to get flash: %s %d\n\n", argv[3], validsubsub);
-								usage();
-								exit(1);
+								usage(1);
 							}
 						} else {
 							fprintf(stderr, "Missing arguments to get flash command\n\n");
-							usage();
-							exit(1);
+							usage(1);
 						}
 						break;
 					default:
 						fprintf(stderr, "Unhandled subcommand to get: %s %d\n\n", argv[2], validsub);
-						usage();
-						exit(1);
+						usage(1);
 					}
 				} else {
 					fprintf(stderr, "Unknown subcommand to get: %s\n\n", argv[2]);
-					usage();
-					exit(1);
+					usage(1);
 				}
 			} else {
 				fprintf(stderr, "Missing arguments to get command\n\n");
-				usage();
-				exit(1);
+				usage(1);
 			}
 			break;
 		case UMCPMIO_PUT:
@@ -246,34 +239,28 @@ main(int argc, char *argv[])
 									break;
 								default:
 									fprintf(stderr, "Unhandled subcommand to get flash: %s %d\n\n", argv[3], validsubsub);
-									usage();
-									exit(1);
+									usage(1);
 								};
 							} else {
 								fprintf(stderr, "Unknown subcommand to put flash: %s %d\n\n", argv[3], validsubsub);
-								usage();
-								exit(1);
+								usage(1);
 							}
 						} else {
 							fprintf(stderr, "Missing arguments to put flash command\n\n");
-							usage();
-							exit(1);
+							usage(1);
 						}
 						break;
 					default:
 						fprintf(stderr, "Unhandled subcommand to put: %s %d\n\n", argv[2], validsub);
-						usage();
-						exit(1);
+						usage(1);
 					};
 				} else {
 					fprintf(stderr, "Unknown subcommand to put: %s\n\n", argv[2]);
-					usage();
-					exit(1);
+					usage(1);
 				}
 			} else {
 				fprintf(stderr, "Missing arguments to put command\n\n");
-				usage();
-				exit(1);
+				usage(1);
 			}
 			break;
 		case UMCPMIO_STATUS:
@@ -303,8 +290,7 @@ main(int argc, char *argv[])
 						break;
 					default:
 						fprintf(stderr, "Unhandled subcommand in print for get (debug): %s %d\n\n", argv[2], validsub);
-						usage();
-						exit(1);
+						usage(1);
 					}
 					for (int i = 0; i < MCP2221_RES_BUFFER_SIZE; i++) {
 						printf(" %02x", buf[i]);
@@ -324,8 +310,7 @@ main(int argc, char *argv[])
 					break;
 				default:
 					fprintf(stderr, "Unhandled subcommand in print for get: %s %d\n\n", argv[2], validsub);
-					usage();
-					exit(1);
+					usage(1);
 				}
 
 				break;
@@ -337,8 +322,7 @@ main(int argc, char *argv[])
 						break;
 					default:
 						fprintf(stderr, "Unhandled subcommand in print for put (debug): %s %d\n\n", argv[2], validsub);
-						usage();
-						exit(1);
+						usage(1);
 					}
 					for (int i = 0; i < MCP2221_RES_BUFFER_SIZE; i++) {
 						printf(" %02x", buf[i]);
@@ -361,8 +345,7 @@ main(int argc, char *argv[])
 					}
 				} else {
 					fprintf(stderr, "Unhandled subcommand in print for put: %s %d %s %d\n\n", argv[2], validsub, argv[3], validsubsub);
-					usage();
-					exit(1);
+					usage(1);
 				}
 				break;
 			case UMCPMIO_STATUS:
@@ -385,10 +368,9 @@ main(int argc, char *argv[])
 		}
 	} else {
 		fprintf(stderr, "Unknown command: %s\n\n", argv[1]);
-		usage();
-		exit(1);
+		usage(1);
 	}
 
-	close(fd);
+	(void)close(fd);
 	exit(0);
 }

Reply via email to