Annotation of 42BSD/usr.lib/libU77/alarm_.c, revision 1.1.1.1

1.1       root        1: /*
                      2: char id_alarm[] = "@(#)alarm_.c        1.1";
                      3:  *
                      4:  * set an alarm time, arrange for user specified action, and return.
                      5:  *
                      6:  * calling sequence:
                      7:  *     integer flag
                      8:  *     external alfunc
                      9:  *     lastiv = alarm (intval, alfunc)
                     10:  * where:
                     11:  *     intval  = the alarm interval in seconds; 0 turns off the alarm.
                     12:  *     alfunc  = the function to be called after the alarm interval,
                     13:  *
                     14:  *     The returned value will be the time remaining on the last alarm.
                     15:  */
                     16: 
                     17: #include <signal.h>
                     18: 
                     19: long alarm_(sec, proc)
                     20: long   *sec;
                     21: int    (* proc)();
                     22: {
                     23:        register long   lt;
                     24: 
                     25:        lt = alarm(1000);       /* time to maneuver */
                     26: 
                     27:        if (*sec)
                     28:                signal(SIGALRM, proc);
                     29: 
                     30:        alarm(*sec);
                     31:        return(lt);
                     32: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.