Lines Matching defs:ifi

151 	struct ifinfo *ifi;
156 TAILQ_FOREACH(ifi, &ifilist, ifi_next) {
159 strcmp(ifi->ifi_ifname, ifname) != 0)
162 if (!ifi->ifi_persist) {
166 ifi->ifi_ifname);
170 if (ifi->ifi_ifindex == 0) {
174 ifi->ifi_ifname);
177 if (getconfig(ifi) == NULL) {
181 ifi->ifi_ifname);
191 struct ifinfo *ifi;
193 ifi = if_indextoifinfo(idx);
194 if (ifi == NULL) {
200 return (rm_ifinfo(ifi));
204 rm_ifinfo(struct ifinfo *ifi)
208 syslog(LOG_DEBUG, "<%s> enter (%s).", __func__, ifi->ifi_ifname);
209 switch (ifi->ifi_state) {
214 ifi->ifi_state = IFI_STATE_UNCONFIGURED;
217 __func__, ifi->ifi_ifname);
222 rtadvd_remove_timer(ifi->ifi_ra_timer);
223 ifi->ifi_ra_timer = NULL;
227 /* clean up ifi */
228 if (!ifi->ifi_persist) {
229 TAILQ_REMOVE(&ifilist, ifi, ifi_next);
231 __func__, ifi->ifi_ifindex);
232 free(ifi);
235 update_persist_ifinfo(&ifilist, ifi->ifi_ifname);
237 __func__, ifi->ifi_ifname);
241 switch (ifi->ifi_state) {
243 if (ifi->ifi_rainfo != NULL) {
244 error = rm_rainfo(ifi->ifi_rainfo);
247 ifi->ifi_rainfo = NULL;
251 if (ifi->ifi_rainfo == ifi->ifi_rainfo_trans) {
252 if (ifi->ifi_rainfo != NULL) {
253 error = rm_rainfo(ifi->ifi_rainfo);
256 ifi->ifi_rainfo = NULL;
257 ifi->ifi_rainfo_trans = NULL;
260 if (ifi->ifi_rainfo != NULL) {
261 error = rm_rainfo(ifi->ifi_rainfo);
264 ifi->ifi_rainfo = NULL;
266 if (ifi->ifi_rainfo_trans != NULL) {
267 error = rm_rainfo(ifi->ifi_rainfo_trans);
270 ifi->ifi_rainfo_trans = NULL;
275 syslog(LOG_DEBUG, "<%s> leave (%s).", __func__, ifi->ifi_ifname);
328 getconfig(struct ifinfo *ifi)
341 if (ifi == NULL) /* if does not exist */
344 if (ifi->ifi_state == IFI_STATE_TRANSITIVE &&
345 ifi->ifi_rainfo == NULL) {
347 __func__, ifi->ifi_ifname);
351 if ((stat = agetent(tbuf, ifi->ifi_ifname)) <= 0) {
357 __func__, ifi->ifi_ifname);
366 rai->rai_ifinfo = ifi;
380 if (ifi->ifi_sdl.sdl_type == 0) {
383 __func__, ifi->ifi_ifname);
396 ifi->ifi_ifname, MIN_MAXINTERVAL, MAX_MAXINTERVAL);
407 __func__, val, ifi->ifi_ifname, MIN_MININTERVAL,
444 __func__, rai->rai_rtpref, ifi->ifi_ifname);
454 __func__, val, ifi->ifi_ifname, rai->rai_maxinterval,
465 __func__, val, ifi->ifi_ifname, MAXREACHABLETIME);
473 __func__, val64, ifi->ifi_ifname);
518 __func__, addr, ifi->ifi_ifname);
525 __func__, addr, ifi->ifi_ifname);
532 __func__, val, addr, ifi->ifi_ifname);
557 addr, pfx->pfx_prefixlen, ifi->ifi_ifname);
578 addr, pfx->pfx_prefixlen, ifi->ifi_ifname);
605 __func__, val64, ifi->ifi_ifname);
614 rai->rai_linkmtu = ifi->ifi_phymtu;
617 rai->rai_linkmtu > ifi->ifi_phymtu) {
621 __func__, rai->rai_linkmtu, ifi->ifi_ifname,
622 IPV6_MMTU, ifi->ifi_phymtu);
637 strncpy(ndi.ifname, ifi->ifi_ifname, sizeof(ndi.ifname));
640 __func__, ifi->ifi_ifname, strerror(errno));
648 __func__, ifi->ifi_ifname, strerror(errno));
691 __func__, addr, ifi->ifi_ifname);
698 __func__, addr, ifi->ifi_ifname);
718 __func__, val, addr, ifi->ifi_ifname);
754 rti->rti_prefixlen, ifi->ifi_ifname);
775 ifi->ifi_ifname);
783 ifi->ifi_ifname);
831 entbuf, val, ifi->ifi_ifname, rai->rai_maxinterval,
880 entbuf, val, ifi->ifi_ifname, rai->rai_maxinterval,
904 switch (ifi->ifi_state) {
908 error = sock_mc_join(&sock, ifi->ifi_ifindex);
912 ifi->ifi_state = IFI_STATE_TRANSITIVE;
913 ifi->ifi_burstcount = MAX_INITIAL_RTR_ADVERTISEMENTS;
914 ifi->ifi_burstinterval = MAX_INITIAL_RTR_ADVERT_INTERVAL;
917 ifi->ifi_rainfo = rai;
918 ifi->ifi_rainfo_trans = rai;
921 if (ifi->ifi_ra_timer == NULL)
922 ifi->ifi_ra_timer = rtadvd_add_timer(ra_timeout,
923 ra_timer_update, ifi, ifi);
924 ra_timer_update(ifi, &ifi->ifi_ra_timer->rat_tm);
925 rtadvd_set_timer(&ifi->ifi_ra_timer->rat_tm,
926 ifi->ifi_ra_timer);
930 __func__, ifi->ifi_ifname);
934 rai_old = ifi->ifi_rainfo;
939 ifi = NULL;
951 ifi->ifi_rainfo_trans = rai_old;
952 ifi->ifi_state = IFI_STATE_TRANSITIVE;
953 ifi->ifi_burstcount = MAX_FINAL_RTR_ADVERTISEMENTS;
954 ifi->ifi_burstinterval = MIN_DELAY_BETWEEN_RAS;
956 ra_timer_update(ifi, &ifi->ifi_ra_timer->rat_tm);
957 rtadvd_set_timer(&ifi->ifi_ra_timer->rat_tm,
958 ifi->ifi_ra_timer);
963 __func__, ifi->ifi_ifname);
965 ifi->ifi_rainfo = rai;
969 if (ifi->ifi_rainfo != NULL) {
970 if (ifi->ifi_rainfo == ifi->ifi_rainfo_trans) {
972 rm_rainfo(ifi->ifi_rainfo);
973 ifi->ifi_rainfo = rai;
974 ifi->ifi_rainfo_trans = rai;
975 ifi->ifi_burstcount =
977 ifi->ifi_burstinterval =
981 rm_rainfo(ifi->ifi_rainfo);
982 ifi->ifi_rainfo = rai;
986 ra_timer_update(ifi, &ifi->ifi_ra_timer->rat_tm);
987 rtadvd_set_timer(&ifi->ifi_ra_timer->rat_tm,
988 ifi->ifi_ra_timer);
993 __func__, ifi->ifi_ifname);
1001 return (ifi);
1014 struct ifinfo *ifi;
1024 ifi = rai->rai_ifinfo;
1029 if (strcmp(ifa->ifa_name, ifi->ifi_ifname) != 0)
1073 __func__, ntopbuf, pfx->pfx_prefixlen, ifi->ifi_ifname);
1114 struct ifinfo *ifi;
1117 ifi = rai->rai_ifinfo;
1133 sizeof(ntopbuf)), ipr->ipr_plen, ifi->ifi_ifname);
1147 struct ifinfo *ifi;
1151 ifi = rai->rai_ifinfo;
1156 sizeof(ntopbuf)), pfx->pfx_prefixlen, ifi->ifi_ifname);
1169 struct ifinfo *ifi;
1173 ifi = rai->rai_ifinfo;
1184 pfx->pfx_prefixlen, ifi->ifi_ifname, (long)prefix_timo);
1211 struct ifinfo *ifi;
1215 ifi = rai->rai_ifinfo;
1225 sizeof(ntopbuf)), pfx->pfx_prefixlen, ifi->ifi_ifname);
1320 struct ifinfo *ifi;
1322 ifi = rai->rai_ifinfo;
1326 if ((lladdroptlen = lladdropt_length(&ifi->ifi_sdl)) == 0) {
1330 __func__, ifi->ifi_ifname);
1403 lladdropt_fill(&ifi->ifi_sdl, (struct nd_opt_hdr *)buf);