Lines Matching refs:ro_rt
325 if (ro != NULL && ro->ro_rt != NULL && in in6_selectsrc_core()
326 (ro->ro_rt->rt_flags & RTF_GATEWAY) && in in6_selectsrc_core()
327 ro->ro_rt->rt_gateway != NULL) { in in6_selectsrc_core()
328 struct rtentry *rt = ro->ro_rt; in in6_selectsrc_core()
1075 if (ro->ro_rt->rt_ifp->if_flags & IFF_LOOPBACK) { in selectroute()
1090 if (ifscope != IFSCOPE_NONE || (ro != NULL && ro->ro_rt != NULL)) { in selectroute()
1094 rt_ifp = (ro->ro_rt != NULL) ? ro->ro_rt->rt_ifp : NULL; in selectroute()
1132 if (ro->ro_rt != NULL) { 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()
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()
1222 if (ron->ro_rt == NULL) { in selectroute()
1224 if (ron->ro_rt != NULL) { in selectroute()
1225 RT_LOCK(ron->ro_rt); 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()
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()
1267 if (ro->ro_rt != NULL) { in selectroute()
1268 RT_LOCK_SPIN(ro->ro_rt); in selectroute()
1270 if (ROUTE_UNUSABLE(ro) || (ro->ro_rt != NULL && in selectroute()
1272 …!in6_are_addr_equal_scoped(&satosin6(&ro->ro_dst)->sin6_addr, dst, ro->ro_rt->rt_ifp->if_index, ds… in selectroute()
1274 (ifa->ifa_ifp != ro->ro_rt->rt_ifp && !proxied_ifa)))))) { in selectroute()
1275 if (ro->ro_rt != NULL) { in selectroute()
1276 RT_UNLOCK(ro->ro_rt); in selectroute()
1281 if (ro->ro_rt == NULL) { in selectroute()
1291 ro->ro_rt = rtalloc1_scoped( in selectroute()
1296 if (ro->ro_rt != NULL) { in selectroute()
1297 RT_LOCK_SPIN(ro->ro_rt); in selectroute()
1306 if (ro->ro_rt != NULL) { in selectroute()
1307 RT_UNLOCK(ro->ro_rt); in selectroute()
1312 if (ro->ro_rt != NULL) { in selectroute()
1313 RT_LOCK_ASSERT_HELD(ro->ro_rt); in selectroute()
1314 ifp = ifp0 = ro->ro_rt->rt_ifp; in selectroute()
1322 boolean_t has_route = (route != NULL && route->ro_rt != NULL); in selectroute()
1326 RT_LOCK_ASSERT_HELD(route->ro_rt); in selectroute()
1336 !(route->ro_rt->rt_flags & RTF_UP))) { in selectroute()
1344 (route->ro_rt->rt_flags & (RTF_UP | RTF_PROXY)) == in selectroute()
1365 RT_UNLOCK(route->ro_rt); in selectroute()
1381 RT_CONVERT_LOCK(route->ro_rt); in selectroute()
1390 RT_GENID_SYNC(route->ro_rt); in selectroute()
1392 RT_UNLOCK(route->ro_rt); in selectroute()
1395 if (ro->ro_rt != NULL) { in selectroute()
1396 RT_UNLOCK(ro->ro_rt); in selectroute()
1436 (route && route->ro_rt && in selectroute()
1437 CHECK_RESTRICTIONS(ip6oa, route->ro_rt->rt_ifp)))) { in selectroute()
1438 if (route != NULL && route->ro_rt != NULL) { in selectroute()
1456 if (ifp == NULL && (route == NULL || route->ro_rt == NULL)) { in selectroute()
1489 *retrt = route->ro_rt; /* ro_rt may be NULL */ in selectroute()
1572 VERIFY(rt == NULL || rt == ro->ro_rt); in in6_selectif()