RTAX_DST
#define INFO_DST(I) ((I)->rti_info[RTAX_DST])
info.rti_info[RTAX_DST] = ia;
rn = rnh->rnh_lookup(rtinfo->rti_info[RTAX_DST],
case RTAX_DST:
rtinfo.rti_info[RTAX_DST] = dst;
rtinfo.rti_info[RTAX_DST] = dst;
rtinfo.rti_info[RTAX_DST] = dst;
struct sockaddr *dst = rtinfo->rti_info[RTAX_DST];
rtinfo.rti_info[RTAX_DST] = dst;
rtinfo.rti_info[RTAX_DST] = dst;
struct sockaddr *dst = rtinfo->rti_info[RTAX_DST];
rn = rnh->rnh_deladdr(rtinfo->rti_info[RTAX_DST],
#define rti_dst rti_info[RTAX_DST]
struct sockaddr *dst = rtinfo->rti_info[RTAX_DST];
addrs.rti_info[RTAX_DST] = dst;
CTASSERT(RTAX_DST == 0);
rtinfo.rti_info[RTAX_DST] = rt_key(rt);
rtinfo.rti_info[RTAX_DST] = (struct sockaddr *)&icmpsrc;
rtinfo.rti_info[RTAX_DST] = ifa->ifa_addr;
info.rti_info[RTAX_DST] = rt_key(rt);
info.rti_info[RTAX_DST] = rt_key(rt);
if (sa[RTAX_DST] && sa[RTAX_GATEWAY]) {
p_sockaddr(arg->prompt, sa[RTAX_DST], sa[RTAX_NETMASK], 20);
sa[RTAX_DST] && sa[RTAX_GATEWAY] &&
(sa[RTAX_DST]->sa_family == AF_INET
|| sa[RTAX_DST]->sa_family == AF_INET6
ncprange_setsa(&range, sa[RTAX_DST], sa[RTAX_NETMASK]);
ncprange_setsa(&range, sa[RTAX_DST], sa[RTAX_NETMASK]);
if (sa[RTAX_DST] && (sa[RTAX_DST]->sa_family == AF_INET
|| sa[RTAX_DST]->sa_family == AF_INET6
ncprange_setsa(&dst, sa[RTAX_DST], sa[RTAX_NETMASK]);
rt_Update(bundle, sa[RTAX_DST], sa[RTAX_GATEWAY], sa[RTAX_NETMASK]);
if (rta[RTAX_DST] == NULL) {
if (rta[RTAX_DST]->sin6_family != AF_INET6) {
if (IN6_IS_ADDR_LINKLOCAL(&rta[RTAX_DST]->sin6_addr)) {
if (IN6_ARE_ADDR_EQUAL(&rta[RTAX_DST]->sin6_addr, &in6addr_loopback)) {
if (IN6_IS_ADDR_MULTICAST(&rta[RTAX_DST]->sin6_addr)) {
if (!rta[RTAX_DST] || !rta[RTAX_GATEWAY]) {
if (rt_del(rta[RTAX_DST], rta[RTAX_GATEWAY],
if ((dst = rti_info[RTAX_DST]) == NULL ||
return (&SIN6(rti_info[RTAX_DST])->sin6_addr);