Lines Matching refs:rat

111 	struct rtadvd_timer *rat;  in rtadvd_add_timer()  local
119 rat = malloc(sizeof(*rat)); in rtadvd_add_timer()
120 if (rat == NULL) { in rtadvd_add_timer()
125 memset(rat, 0, sizeof(*rat)); in rtadvd_add_timer()
127 rat->rat_expire = timeout; in rtadvd_add_timer()
128 rat->rat_update = update; in rtadvd_add_timer()
129 rat->rat_expire_data = timeodata; in rtadvd_add_timer()
130 rat->rat_update_data = updatedata; in rtadvd_add_timer()
131 rat->rat_tm = tm_max; in rtadvd_add_timer()
134 TAILQ_INSERT_TAIL(&ra_timer, rat, rat_next); in rtadvd_add_timer()
136 return (rat); in rtadvd_add_timer()
140 rtadvd_remove_timer(struct rtadvd_timer *rat) in rtadvd_remove_timer() argument
143 if (rat == NULL) in rtadvd_remove_timer()
146 TAILQ_REMOVE(&ra_timer, rat, rat_next); in rtadvd_remove_timer()
147 free(rat); in rtadvd_remove_timer()
160 struct rtadvd_timer *rat; in rtadvd_check_timer() local
164 TAILQ_FOREACH(rat, &ra_timer, rat_next) { in rtadvd_check_timer()
165 if (TS_CMP(&rat->rat_tm, &now, <=)) { in rtadvd_check_timer()
166 if (((*rat->rat_expire)(rat->rat_expire_data) == NULL)) in rtadvd_check_timer()
168 if (rat->rat_update) in rtadvd_check_timer()
169 (*rat->rat_update)(rat->rat_update_data, &rat->rat_tm); in rtadvd_check_timer()
170 TS_ADD(&rat->rat_tm, &now, &rat->rat_tm); in rtadvd_check_timer()
172 if (TS_CMP(&rat->rat_tm, &tm_max, <)) in rtadvd_check_timer()
173 tm_max = rat->rat_tm; in rtadvd_check_timer()
187 rtadvd_set_timer(struct timespec *tm, struct rtadvd_timer *rat) in rtadvd_set_timer() argument
193 TS_ADD(&now, tm, &rat->rat_tm); in rtadvd_set_timer()
196 if (TS_CMP(&rat->rat_tm, &tm_max, <)) in rtadvd_set_timer()
197 tm_max = rat->rat_tm; in rtadvd_set_timer()