Lines Matching defs:ifa
180 #define ifa2ia6(ifa) ((struct in6_ifaddr *)(ifa))
190 struct ifaddr *ifa;
194 ifa = &ia->ia_ifa;
201 info.rti_flags = ifa->ifa_flags | RTF_HOST | RTF_STATIC | RTF_PINNED;
202 info.rti_info[RTAX_DST] = ifa->ifa_addr;
204 link_init_sdl(ifa->ifa_ifp, (struct sockaddr *)&gateway, ifa->ifa_ifp->if_type);
1103 * Do link-level ifa job:
1173 * Adds or deletes interface route for p2p ifa.
1180 struct ifaddr *ifa = &ia->ia_ifa;
1187 .sdl_type = ifa->ifa_ifp->if_type,
1188 .sdl_index = ifa->ifa_ifp->if_index,
1198 .rti_ifa = ifa,
1199 .rti_ifp = ifa->ifa_ifp,
1209 error = rib_handle_ifaddr_info(ifa->ifa_ifp->if_fib, cmd, &info);
1375 in6_purgeaddr(struct ifaddr *ifa)
1377 struct ifnet *ifp = ifa->ifa_ifp;
1378 struct in6_ifaddr *ia = (struct in6_ifaddr *) ifa;
1382 if (ifa->ifa_carp)
1383 (*carp_detach_p)(ifa, false);
1398 nd6_dad_stop(ifa);
1512 struct ifaddr *ifa;
1524 CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
1525 if (ifa->ifa_addr->sa_family != AF_INET6)
1599 struct ifaddr *ifa;
1603 CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
1604 if (ifa->ifa_addr->sa_family != AF_INET6)
1606 if (IN6_IS_ADDR_LINKLOCAL(IFA_IN6(ifa))) {
1607 if ((((struct in6_ifaddr *)ifa)->ia6_flags &
1610 ifa_ref(ifa);
1615 return ((struct in6_ifaddr *)ifa);
1651 struct ifaddr *ifa;
1654 CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
1655 if (ifa->ifa_addr->sa_family != AF_INET6)
1657 if (IN6_ARE_ADDR_EQUAL(addr, IFA_IN6(ifa))) {
1658 ifa_ref(ifa);
1664 return ((struct in6_ifaddr *)ifa);
1675 struct ifaddr *ifa;
1680 CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
1681 if (ifa->ifa_addr->sa_family != AF_INET6)
1683 sin6 = (struct sockaddr_in6 *)ifa->ifa_addr;
1691 return ((struct in6_ifaddr *)ifa);
1849 struct ifaddr *ifa;
1859 CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
1860 if (ifa->ifa_addr->sa_family != AF_INET6)
1862 ia6 = (struct in6_ifaddr *)ifa;
1970 struct ifaddr *ifa;
1984 CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
1985 if (ifa->ifa_addr->sa_family != AF_INET6)
1987 if (((struct in6_ifaddr *)ifa)->ia6_flags & IN6_IFF_ANYCAST)
1989 if (((struct in6_ifaddr *)ifa)->ia6_flags & IN6_IFF_NOTREADY)
1991 if (((struct in6_ifaddr *)ifa)->ia6_flags & IN6_IFF_DETACHED)
1993 if (((struct in6_ifaddr *)ifa)->ia6_flags & IN6_IFF_DEPRECATED) {
1995 dep[0] = (struct in6_ifaddr *)ifa;
1999 if (dst_scope == in6_addrscope(IFA_IN6(ifa))) {
2006 tlen = in6_matchlen(IFA_IN6(ifa), dst);
2009 besta = (struct in6_ifaddr *)ifa;
2012 besta = (struct in6_ifaddr *)ifa;
2018 CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
2019 if (ifa->ifa_addr->sa_family != AF_INET6)
2021 if (((struct in6_ifaddr *)ifa)->ia6_flags & IN6_IFF_ANYCAST)
2023 if (((struct in6_ifaddr *)ifa)->ia6_flags & IN6_IFF_NOTREADY)
2025 if (((struct in6_ifaddr *)ifa)->ia6_flags & IN6_IFF_DETACHED)
2027 if (((struct in6_ifaddr *)ifa)->ia6_flags & IN6_IFF_DEPRECATED) {
2029 dep[1] = (struct in6_ifaddr *)ifa;
2033 return (struct in6_ifaddr *)ifa;
2052 struct ifaddr *ifa;
2056 CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
2057 if (ifa->ifa_addr->sa_family != AF_INET6)
2059 ia = (struct in6_ifaddr *)ifa;
2067 nd6_dad_start(ifa,
2301 struct ifaddr *ifa;
2306 ifa = ifaof_ifpforaddr(l3addr, ifp);
2307 if (ifa != NULL) {