/* timer.h */ /* EMACS_MODES: c !fill */ /* This file contains the definitions for the timeout/retry queues. */ struct q_ent { /* timeout/retry queue entry */ struct q_ent *q_next; /* link to next entry */ long q_timeout; /* timeout time for this try */ int q_time; /* timeout time per retry */ int q_retry; /* retry count remaining */ caddr_t q_pkt; /* packet to be retransmitted */ unshort q_size; /* packet size for retransmit */ int q_fd; /* file descriptor for retransmit */ unshort q_uid; /* unique id for this request */ int (*q_comp)(); /* completion routine */ char *q_arg1; /* first completion routine argument */ char *q_arg2; /* second completion routine arg */ }; struct q_head { /* timeout/retry queue header */ struct q_ent *qh_head; /* ptr. to first queue entry */ struct q_ent *qh_tail; /* ptr. to last queue entry */ int qh_count; /* number of queue entries */ };