Lines Matching refs:rt
1151 struct rtentry *rt = NULL;
1182 rt = rtalloc1_scoped((struct sockaddr *)&sin6, 0,
1184 if (rt != NULL) {
1185 RT_LOCK(rt);
1186 if ((rt->rt_flags & RTF_HOST) &&
1187 !(rt->rt_rmx.rmx_locks & RTV_MTU) &&
1188 mtu < IN6_LINKMTU(rt->rt_ifp) &&
1189 rt->rt_rmx.rmx_mtu > mtu) {
1191 rt->rt_rmx.rmx_mtu = mtu;
1193 RT_UNLOCK(rt);
1194 rtfree(rt);
2373 struct rtentry *rt = NULL;
2434 rt = rtalloc1_scoped((struct sockaddr *)&sin6, 0, 0, ifp->if_index);
2435 if (rt) {
2436 RT_LOCK(rt);
2437 if (rt->rt_gateway == NULL ||
2438 rt->rt_gateway->sa_family != AF_INET6) {
2443 RT_UNLOCK(rt);
2444 rtfree(rt);
2449 rt->rt_gateway)->sin6_addr);
2457 RT_UNLOCK(rt);
2458 rtfree(rt);
2468 RT_UNLOCK(rt);
2469 rtfree(rt);
2470 rt = NULL;
2571 icmp6_redirect_output(m0, rt)
2573 struct rtentry *rt;
2591 if (rt != NULL)
2592 RT_LOCK(rt);
2595 if (!m0 || !rt || !(rt->rt_flags & RTF_UP) || !(ifp = rt->rt_ifp))
2618 RT_UNLOCK(rt);
2621 rt = NULL;
2624 RT_LOCK(rt);
2669 if (rt->rt_gateway && (rt->rt_flags & RTF_GATEWAY)) {
2671 sin6 = (struct sockaddr_in6 *)(void *)rt->rt_gateway;
2695 if (rt->rt_flags & RTF_GATEWAY) {
2713 RT_UNLOCK(rt);
2714 rt = NULL;
2875 if (rt != NULL)
2876 RT_UNLOCK(rt);