Lines Matching defs:ifa

347 	struct ifaddr *ifa;
353 if ((ifa = info->rti_ifa) != NULL)
354 arpannounce1(ifa);
493 ifa = &ia->ia_ifa;
494 if (ifa != rt->rt_ifa)
496 rt_replace_ifa(rt, ifa);
571 arpannounce(struct ifnet *ifp, struct ifaddr *ifa, const uint8_t *enaddr)
573 struct in_ifaddr *ia = ifatoia(ifa);
574 struct in_addr *ip = &IA_SIN(ifa)->sin_addr;
584 arpannounce1(struct ifaddr *ifa)
587 arpannounce(ifa->ifa_ifp, ifa, CLLADDR(ifa->ifa_ifp->if_sadl));
1277 arp_ifinit(struct ifnet *ifp, struct ifaddr *ifa)
1279 struct in_ifaddr *ia = (struct in_ifaddr *)ifa;
1281 ifa->ifa_rtrequest = arp_rtrequest;
1282 ifa->ifa_flags |= RTF_CONNECTED;
1285 if (in_nullhost(IA_SIN(ifa)->sin_addr)) {
1287 ia->ia_dad_stop(ifa);
1297 arpannounce1(ifa);
1499 arp_dad_find(struct ifaddr *ifa)
1506 if (dp->dad_ifa == ifa)
1542 arp_dad_output(struct dadq *dp, struct ifaddr *ifa)
1544 struct in_ifaddr *ia = (struct in_ifaddr *)ifa;
1545 struct ifnet *ifp = ifa->ifa_ifp;
1558 arprequest(ifa->ifa_ifp, &sip, &ia->ia_addr.sin_addr,
1559 CLLADDR(ifa->ifa_ifp->if_sadl), NULL);
1566 arp_dad_start(struct ifaddr *ifa)
1568 struct in_ifaddr *ia = (struct in_ifaddr *)ifa;
1580 ifa->ifa_ifp ? if_name(ifa->ifa_ifp) : "???");
1585 rt_addrmsg(RTM_NEWADDR, ifa);
1586 arpannounce1(ifa);
1589 KASSERT(ifa->ifa_ifp != NULL);
1590 if (!(ifa->ifa_ifp->if_flags & IFF_UP))
1596 if (arp_dad_find(ifa) != NULL) {
1608 ifa->ifa_ifp ? if_name(ifa->ifa_ifp) : "???");
1617 dp->dad_ifa = ifa;
1618 ifaref(ifa); /* just for safety */
1624 ARPLOG(LOG_DEBUG, "%s: starting DAD for %s\n", if_name(ifa->ifa_ifp),
1636 arp_dad_stop(struct ifaddr *ifa)
1641 dp = arp_dad_find(ifa);
1653 ifafree(ifa);
1659 struct ifaddr *ifa;
1667 ifa = dp->dad_ifa;
1668 if (ifa == NULL) {
1673 ia = (struct in_ifaddr *)ifa;
1677 ifa->ifa_ifp ? if_name(ifa->ifa_ifp) : "???");
1684 ifa->ifa_ifp ? if_name(ifa->ifa_ifp) : "???");
1691 if_name(ifa->ifa_ifp));
1705 arp_dad_output(dp, ifa);
1720 rt_addrmsg(RTM_NEWADDR, ifa);
1723 if_name(ifa->ifa_ifp), ARPLOGADDR(&ia->ia_addr.sin_addr));
1731 arpannounce1(ifa);
1739 if_name(ifa->ifa_ifp), ARPLOGADDR(&ia->ia_addr.sin_addr));
1749 KASSERT(ifa != NULL);
1750 ifafree(ifa);
1757 arp_dad_duplicated(struct ifaddr *ifa, const struct sockaddr_dl *from)
1759 struct in_ifaddr *ia = ifatoia(ifa);
1760 struct ifnet *ifp = ifa->ifa_ifp;
1778 arpannounce1(ifa);
1796 arp_dad_stop(ifa);
1802 rt_addrmsg_src(RTM_NEWADDR, ifa, (const struct sockaddr *)from);