static char *sccsid
= "@(#)leave.c 4.1 (Berkeley) %G%";
* Reminds you when you have to leave.
* Leave prompts for input and goes away if you hit return.
* It nags you like a mother hen.
char origlogin
[20], thislogin
[20];
long when
, tod
, now
, diff
, hours
, minutes
;
printf("When do you have to leave? ");
buff
[read(0,buff
,sizeof buff
)] = 0;
if (buff
[0] < '0' || buff
[0] > '9') {
printf("usage: %s [hhmm]\n",argv
[0]);
strcpy(origlogin
,getlogin());
if (hours
< 0 || hours
> 12 || minutes
< 0 || minutes
> 59) {
printf("usage: %s [hhmm]\n",argv
[0]);
setexit(); /* refigure time if killed */
if (nv
[2] > 12) nv
[2] -= 12; /* do am/pm bit */
if (diff
> 11*60) printf("That time has already passed!\n");
char *msg1
, *msg2
, *msg3
, *msg4
;
int slp1
, slp2
, slp3
, slp4
;
msg1
= "You have to leave in 5 minutes";
msg2
= "Just one more minute!";
msg4
= "You're going to be late!";
whenleave
= ctime(&daytime
);
printf("Alarm set for %s\n",whenleave
);
* delay is like sleep but does it in 100 sec pieces and
strcpy(thislogin
,getlogin());
if (strcmp(origlogin
, thislogin
))
ufd
= open("/etc/utmp",0);
seek(ufd
, ttyn(0)*sizeof(ubuf
), 0);
read(ufd
, &ubuf
, sizeof(ubuf
));
ubuf
.ut_name
[sizeof(ubuf
.ut_name
)] = 0;