RTAX_IFA
if (i == RTAX_IFA) {
if (i == RTAX_IFA) {
case RTAX_IFA:
if ((i == RTAX_DST || i == RTAX_IFA) &&
#define INFO_IFA(I) ((I)->rti_info[RTAX_IFA])
info.rti_info[RTAX_IFA] = sa = ifa->ifa_addr;
const struct sockaddr *ifaaddr = info->rti_info[RTAX_IFA];
if (info->rti_info[RTAX_IFA] == NULL &&
if (info->rti_info[RTAX_IFA] == NULL) {
ifa = ifa_ifwithaddr_psref(info->rti_info[RTAX_IFA],
ifa = ifaof_ifpforaddr_psref(info->rti_info[RTAX_IFA],
if (info->rti_info[RTAX_IFA] != NULL) {
ifa = ifa_ifwithaddr_psref(info->rti_info[RTAX_IFA], psref);
info->rti_info[RTAX_IFA] != NULL) {
info.rti_info[RTAX_IFA] = rt->rt_ifa->ifa_addr;
info.rti_info[RTAX_IFA] = rt->rt_ifa->ifa_addr;
info.rti_info[RTAX_IFA] = rtifa->ifa_addr;
info.rti_info[RTAX_IFA] = ifa->ifa_addr;
info.rti_info[RTAX_IFA] = info.rti_info[RTAX_NETMASK] =
(~((1 << RTAX_IFP) | (1 << RTAX_IFA)))) & (~0U << i)) != 0)
info.rti_info[RTAX_IFA] = sa = ifa->ifa_addr;
info->rti_info[RTAX_IFA] = rtifa->ifa_addr;
if (info->rti_info[RTAX_IFA]->sa_family == AF_INET) {
RT_IN_PRINT(info, ibuf, RTAX_IFA),
info.rti_info[RTAX_IFA] = sin6tosa(&ia->ia_addr);
info.rti_info[RTAX_IFA] = sin6tosa(&ia->ia_addr);
rtax = RTAX_IFA;
if (!rta[RTAX_NETMASK] || !rta[RTAX_IFA]) {
if (!rt_deladdr(ifcp, rta[RTAX_IFA], rta[RTAX_NETMASK]))
if ((ifa = rti_info[RTAX_IFA]) == NULL ||