}
#endif
+ /* We have already checked that at least one address must be
+ * present after the rtm structure. */
+ /* coverity[ptr_arith] */
if (get_addrs(rtm->rtm_addrs, rtm + 1,
rtm->rtm_msglen - sizeof(*rtm), rti_info) == -1)
return -1;
errno = EINVAL;
return -1;
}
-
+ if (~ifam->ifam_addrs & RTA_IFA)
+ return 0;
if ((ifp = if_findindex(ctx->ifaces, ifam->ifam_index)) == NULL)
return 0;
+
+ /* We have already checked that at least one address must be
+ * present after the ifam structure. */
+ /* coverity[ptr_arith] */
if (get_addrs(ifam->ifam_addrs, ifam + 1,
ifam->ifam_msglen - sizeof(*ifam), rti_info) == -1)
return -1;
- if (rti_info[RTAX_IFA] == NULL)
- return 0;
#ifdef HAVE_IFAM_PID
pid = ifam->ifam_pid;
return dhcpcd_linkoverflow(ctx);
#endif
}
+
+ return 0;
}
int