Lines Matching refs:ro
615 cache_route(uint32_t fibnum, const struct sockaddr_in6 *dst, struct route_in6 *ro, in cache_route() argument
624 if (ro->ro_nh != NULL && ( in cache_route()
625 !NH_IS_VALID(ro->ro_nh) || ro->ro_dst.sin6_family != AF_INET6 || in cache_route()
626 !IN6_ARE_ADDR_EQUAL(&ro->ro_dst.sin6_addr, &dst->sin6_addr))) in cache_route()
627 RO_NHFREE(ro); in cache_route()
629 if (ro->ro_nh == NULL) { in cache_route()
630 ro->ro_dst = *dst; in cache_route()
640 ro->ro_nh = fib6_lookup(fibnum, paddr, scopeid, NHR_REF, flowid); in cache_route()
642 return (ro->ro_nh); in cache_route()
646 lookup_route(uint32_t fibnum, struct sockaddr_in6 *dst, struct route_in6 *ro, in lookup_route() argument
667 } else if (ro != NULL) { in lookup_route()
668 nh = cache_route(fibnum, dst, ro, flowid); in lookup_route()
693 struct ip6_moptions *mopts, struct route_in6 *ro, in selectroute() argument
737 struct nhop_object *nh = lookup_route(fibnum, dstsock, ro, opts, flowid); in selectroute()
826 struct ip6_moptions *mopts, struct route_in6 *ro, in in6_selectroute() argument
832 return (selectroute(dstsock, opts, mopts, ro, retifp, in in6_selectroute()