--- src/sys/netinet6/in6_pcb.c 2004/12/28 19:55:16 1.20 +++ src/sys/netinet6/in6_pcb.c 2005/01/06 17:59:32 1.21 @@ -526,8 +526,8 @@ in6_selectsrc(struct sockaddr_in6 *dstso dst6->sin6_len = sizeof(struct sockaddr_in6); dst6->sin6_addr = *dst; if (IN6_IS_ADDR_MULTICAST(dst)) { - ro->ro_rt = rtlookup( - (struct sockaddr *)&ro->ro_dst, 0, 0UL); + ro->ro_rt = + rtpurelookup((struct sockaddr *)&ro->ro_dst); } else { rtalloc((struct route *)ro); }