Lines Matching refs:ifa
2478 struct ifaddr *ifa = NULL;
2496 ifa = TAILQ_FIRST(&ifp->if_addrhead);
2509 * Allocate a new ifa if we don't have one
2512 if (ifa == NULL || socksize > ifa->ifa_addr->sa_len) {
2513 if (ifa)
2514 if_detach_ifa(ifp, ifa);
2515 ifa = (struct ifaddr*)_MALLOC(ifasize, M_IFADDR, M_WAITOK);
2518 if (ifa) {
2519 struct sockaddr_dl *sdl = (struct sockaddr_dl *)(ifa + 1);
2520 ifnet_addrs[ifp->if_index - 1] = ifa;
2521 bzero(ifa, ifasize);
2534 ifa->ifa_ifp = ifp;
2535 ifa->ifa_rtrequest = link_rtrequest;
2536 ifa->ifa_addr = (struct sockaddr*)sdl;
2538 ifa->ifa_netmask = (struct sockaddr*)sdl;
2545 ifa = ifnet_addrs[ifp->if_index - 1];
2547 if (ifa) {
2552 ifaref(ifa);
2553 ifa->ifa_debug |= IFA_ATTACHED;
2554 TAILQ_INSERT_HEAD(&ifp->if_addrhead, ifa, ifa_link);