chiark / gitweb /
Fix reading of timeouts
authormdw <mdw>
Fri, 7 Jul 2000 18:33:16 +0000 (18:33 +0000)
committermdw <mdw>
Fri, 7 Jul 2000 18:33:16 +0000 (18:33 +0000)
pixie.c

diff --git a/pixie.c b/pixie.c
index 97f5de2..c06219c 100644 (file)
--- a/pixie.c
+++ b/pixie.c
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
 /* -*-c-*-
  *
- * $Id: pixie.c,v 1.1 1999/10/23 10:58:49 mdw Exp $
+ * $Id: pixie.c,v 1.2 2000/07/07 18:33:16 mdw Exp $
  *
  * New, improved PGP pixie for auto-pgp
  *
  *
  * New, improved PGP pixie for auto-pgp
  *
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: pixie.c,v $
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: pixie.c,v $
- * Revision 1.1  1999/10/23 10:58:49  mdw
- * Initial revision
+ * Revision 1.2  2000/07/07 18:33:16  mdw
+ * Fix reading of timeouts
+ *
+ * Revision 1.1.1.1  1999/10/23 10:58:49  mdw
+ * New import.
  *
  */
 
  *
  */
 
@@ -516,12 +519,9 @@ int main(int argc, char *argv[])
   /* --- Memory-map a page from somewhere --- */
 
 #  ifdef MAP_ANON
   /* --- Memory-map a page from somewhere --- */
 
 #  ifdef MAP_ANON
-
   pass = mmap(0, PIXIE_BUFSZ, PROT_READ | PROT_WRITE,
              MAP_PRIVATE | MAP_ANON, -1, 0);
   pass = mmap(0, PIXIE_BUFSZ, PROT_READ | PROT_WRITE,
              MAP_PRIVATE | MAP_ANON, -1, 0);
-
 #  else
 #  else
-
   if ((fd = open("/dev/zero", O_RDWR)) < 0) {
     emsg = "couldn't open `/dev/zero': %s";
     elock = errno;
   if ((fd = open("/dev/zero", O_RDWR)) < 0) {
     emsg = "couldn't open `/dev/zero': %s";
     elock = errno;
@@ -530,7 +530,6 @@ int main(int argc, char *argv[])
                MAP_PRIVATE, fd, 0);
     close(fd);
   }
                MAP_PRIVATE, fd, 0);
     close(fd);
   }
-
 #  endif
 
   /* --- Lock the page in memory --- *
 #  endif
 
   /* --- Lock the page in memory --- *
@@ -621,11 +620,12 @@ int main(int argc, char *argv[])
          case 'd': timeout *= 24;
          case 'h': timeout *= 60;
          case 'm': timeout *= 60;
          case 'd': timeout *= 24;
          case 'h': timeout *= 60;
          case 'm': timeout *= 60;
-         case 's': case 0: break;
-         default:
-           die(1, "unrecognized suffix character `%c'", *p);
-           break;
+         case 's': if (p[1] != 0)
+         default:    timeout = 0;
+         case 0:   break;
        }
        }
+       if (!timeout)
+         die(1, "bad time specification `%s'", optarg);
       } break;
 #ifdef PATH_XGETLINE
       case 'x':
       } break;
 #ifdef PATH_XGETLINE
       case 'x':