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))