Scott Cheloha wrote:
> > 1) it isn't documented that + can take a smaller number
> > 2) it will be hard to train people to use +0001
> 
> These are my concerns as well.
> 
> An idea I had a while back was to drop support for +hhmm and just
> support +minutes, like we do with shutdown(8).  The invocation would
> then be:

this adds the check to just the clock time case. leave +mm isn't bad, but it's
a little awkward past 60. leave +180 for three hours? unfortunately that
clashes with existing usage. but my original concern is primarily with hhmm so
let's just address that.


Index: leave.c
===================================================================
RCS file: /home/cvs/src/usr.bin/leave/leave.c,v
retrieving revision 1.19
diff -u -p -r1.19 leave.c
--- leave.c     10 Feb 2018 00:00:47 -0000      1.19
+++ leave.c     22 Jan 2020 04:07:41 -0000
@@ -35,6 +35,7 @@
 #include <err.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
 #include <unistd.h>
 
 static __dead void     usage(void);
@@ -83,6 +84,9 @@ main(int argc, char *argv[])
                plusnow = 1;
                ++cp;
        }
+
+       if (!plusnow && strlen(cp) != 4)
+               usage();
 
        for (hours = 0; (c = *cp) && c != '\n'; ++cp) {
                if (!isdigit((unsigned char)c))

Reply via email to