xref: /csrg-svn/lib/libc/gen/alarm.c (revision 16215)
1*16215Sralph /*	alarm.c	4.2	84/03/22	*/
212973Ssam 
312973Ssam /*
412973Ssam  * Backwards compatible alarm.
512973Ssam  */
612973Ssam #include <sys/time.h>
712973Ssam 
812973Ssam alarm(secs)
912973Ssam 	int secs;
1012973Ssam {
1112973Ssam 	struct itimerval it, oitv;
1212973Ssam 	register struct itimerval *itp = &it;
1312973Ssam 
1412973Ssam 	timerclear(&itp->it_interval);
1512973Ssam 	itp->it_value.tv_sec = secs;
1612973Ssam 	itp->it_value.tv_usec = 0;
1712973Ssam 	if (setitimer(ITIMER_REAL, itp, &oitv) < 0)
1812973Ssam 		return (-1);
19*16215Sralph 	if (oitv.it_value.tv_usec)
20*16215Sralph 		oitv.it_value.tv_sec++;
2112973Ssam 	return (oitv.it_value.tv_sec);
2212973Ssam }
23