--- src/sys/netinet6/icmp6.c 2005/01/06 09:14:13 1.15 +++ src/sys/netinet6/icmp6.c 2005/01/06 17:59:32 1.16 @@ -1140,7 +1140,7 @@ icmp6_mtudisc_update(struct ip6ctlparam htons(m->m_pkthdr.rcvif->if_index); } /* sin6.sin6_scope_id = XXX: should be set if DST is a scoped addr */ - rt = rtlookup((struct sockaddr *)&sin6, 0, RTF_CLONING | RTF_PRCLONING); + rt = rtpurelookup((struct sockaddr *)&sin6); if (rt != NULL && (rt->rt_flags & RTF_HOST) && !(rt->rt_rmx.rmx_locks & RTV_MTU)) { @@ -2254,7 +2254,7 @@ icmp6_redirect_input(struct mbuf *m, int sin6.sin6_family = AF_INET6; sin6.sin6_len = sizeof(struct sockaddr_in6); bcopy(&reddst6, &sin6.sin6_addr, sizeof reddst6); - rt = rtlookup((struct sockaddr *)&sin6, 0, 0UL); + rt = rtpurelookup((struct sockaddr *)&sin6); if (rt != NULL) { if (rt->rt_gateway == NULL || rt->rt_gateway->sa_family != AF_INET6) {