Lines Matching refs:ron
1191 struct route_in6 *ron; in selectroute() local
1205 ron = &opts->ip6po_nextroute; in selectroute()
1206 if (ron->ro_rt != NULL) { in selectroute()
1207 RT_LOCK(ron->ro_rt); in selectroute()
1209 if (ROUTE_UNUSABLE(ron) || (ron->ro_rt != NULL && in selectroute()
1210 (!(ron->ro_rt->rt_flags & RTF_LLINFO) || in selectroute()
1212 (ifa->ifa_ifp != ron->ro_rt->rt_ifp && !proxied_ifa))))) || in selectroute()
1213 !in6_are_addr_equal_scoped(&satosin6(&ron->ro_dst)->sin6_addr, in selectroute()
1214 &sin6_next->sin6_addr, ron->ro_rt->rt_ifp->if_index, sin6_next->sin6_scope_id)) { in selectroute()
1215 if (ron->ro_rt != NULL) { in selectroute()
1216 RT_UNLOCK(ron->ro_rt); in selectroute()
1219 ROUTE_RELEASE(ron); in selectroute()
1220 *satosin6(&ron->ro_dst) = *sin6_next; in selectroute()
1222 if (ron->ro_rt == NULL) { in selectroute()
1223 rtalloc_scoped((struct route *)ron, ifscope); in selectroute()
1224 if (ron->ro_rt != NULL) { in selectroute()
1225 RT_LOCK(ron->ro_rt); in selectroute()
1227 if (ROUTE_UNUSABLE(ron) || in selectroute()
1228 !(ron->ro_rt->rt_flags & RTF_LLINFO) || in selectroute()
1229 !in6_are_addr_equal_scoped(&satosin6(rt_key(ron->ro_rt))-> in selectroute()
1230 sin6_addr, &sin6_next->sin6_addr, ron->ro_rt->rt_ifp->if_index, sin6_next->sin6_scope_id)) { in selectroute()
1231 if (ron->ro_rt != NULL) { in selectroute()
1232 RT_UNLOCK(ron->ro_rt); in selectroute()
1235 ROUTE_RELEASE(ron); in selectroute()
1240 route = ron; in selectroute()
1241 ifp = ifp0 = ron->ro_rt->rt_ifp; in selectroute()
1253 RT_UNLOCK(ron->ro_rt); in selectroute()
1256 RT_UNLOCK(ron->ro_rt); in selectroute()