Module Name: src
Committed By: wiz
Date: Sun Apr 7 18:48:24 UTC 2013
Modified Files:
src/usr.sbin/sesd/srcs: sesd.c
Log Message:
Use getopt. Improve usage.
To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/usr.sbin/sesd/srcs/sesd.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/sesd/srcs/sesd.c
diff -u src/usr.sbin/sesd/srcs/sesd.c:1.6 src/usr.sbin/sesd/srcs/sesd.c:1.7
--- src/usr.sbin/sesd/srcs/sesd.c:1.6 Tue Jan 4 10:10:39 2011
+++ src/usr.sbin/sesd/srcs/sesd.c Sun Apr 7 18:48:24 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: sesd.c,v 1.6 2011/01/04 10:10:39 wiz Exp $ */
+/* $NetBSD: sesd.c,v 1.7 2013/04/07 18:48:24 wiz Exp $ */
/* $FreeBSD: $ */
/* $OpenBSD: $ */
/*
@@ -57,8 +57,8 @@ main(a, v)
char **v;
{
static const char usage[] =
- "usage: %s [ -d ] [ -t pollinterval ] device [ device ]\n";
- int fd, polltime, dev, devbase, nodaemon;
+ "usage: %s [-d] [-t pollinterval] device [...]\n";
+ int c, fd, polltime, dev, nodaemon;
ses_encstat sestat, *carray;
if (a < 2) {
@@ -66,34 +66,34 @@ main(a, v)
return (1);
}
- devbase = 1;
-
- if (strcmp(v[1], "-d") == 0) {
- nodaemon = 1;
- devbase++;
- } else {
- nodaemon = 0;
- }
-
- if (a > 2 && strcmp(v[2], "-t") == 0) {
- devbase += 2;
- polltime = atoi(v[3]);
- } else {
- polltime = 30;
- }
+ nodaemon = 0;
+ polltime = 30;
+ while ((c = getopt(a, v, "dt:")) != -1) {
+ switch (c) {
+ case 'd':
+ nodaemon = 1;
+ break;
+ case 't':
+ polltime = atoi(optarg);
+ break;
+ default:
+ fprintf(stderr, usage, *v);
+ return (1);
+ }
+ }
carray = malloc(a);
if (carray == NULL) {
perror("malloc");
return (1);
}
- for (dev = devbase; dev < a; dev++)
+ for (dev = optind; dev < a; dev++)
carray[dev] = (ses_encstat) -1;
/*
* Check to make sure we can open all devices
*/
- for (dev = devbase; dev < a; dev++) {
+ for (dev = optind; dev < a; dev++) {
fd = open(v[dev], O_RDWR);
if (fd < 0) {
perror(v[dev]);
@@ -118,7 +118,7 @@ main(a, v)
}
for (;;) {
- for (dev = devbase; dev < a; dev++) {
+ for (dev = optind; dev < a; dev++) {
fd = open(v[dev], O_RDWR);
if (fd < 0) {
syslog(LOG_ERR, "%s: %m", v[dev]);