Home | History | Annotate | Download | only in netinet

Lines Matching refs:rt

417 	struct rtentry *rt;
643 rt = NULL;
645 NULL, RTF_GATEWAY | RTF_HOST, sintosa(&icmpgw), &rt);
647 if (rt != NULL && icmp_redirtimeout != 0) {
648 i = rt_timer_add(rt, icmp_redirect_timeout,
659 if (rt != NULL)
660 rt_unref(rt);
1147 struct rtentry *rt;
1151 rt = rtalloc1(dst, 1);
1152 if (rt == NULL)
1156 if ((rt->rt_flags & RTF_HOST) == 0) {
1159 error = rtrequest(RTM_ADD, dst, rt->rt_gateway, NULL,
1162 rt_unref(rt);
1165 nrt->rt_rmx = rt->rt_rmx;
1167 rt_unref(rt);
1168 rt = nrt;
1172 error = rt_timer_add(rt, icmp_mtudisc_timeout, ip_mtudisc_timeout_q);
1175 rt_unref(rt);
1184 if (mtu > rt->rt_rmx.rmx_mtu && rt->rt_rmx.rmx_mtu != 0)
1189 mtu = rt->rt_rmx.rmx_mtu;
1193 mtu = rt->rt_ifp->if_mtu;
1212 if ((rt->rt_rmx.rmx_locks & RTV_MTU) == 0) {
1213 if (mtu < 296 || mtu > rt->rt_ifp->if_mtu)
1214 rt->rt_rmx.rmx_locks |= RTV_MTU;
1215 else if (rt->rt_rmx.rmx_mtu > mtu ||
1216 rt->rt_rmx.rmx_mtu == 0) {
1218 rt->rt_rmx.rmx_mtu = mtu;
1222 if (rt != NULL)
1223 rt);
1269 icmp_mtudisc_timeout(struct rtentry *rt, struct rttimer *r)
1273 KASSERT(rt != NULL);
1274 rt_assert_referenced(rt);
1276 if ((rt->rt_flags & (RTF_DYNAMIC | RTF_HOST)) ==
1278 rtrequest(RTM_DELETE, rt_getkey(rt),
1279 rt->rt_gateway, rt_mask(rt), rt->rt_flags, &retrt);
1281 rt_unref(rt);
1284 if ((rt->rt_rmx.rmx_locks & RTV_MTU) == 0) {
1285 rt->rt_rmx.rmx_mtu = 0;
1291 icmp_redirect_timeout(struct rtentry *rt, struct rttimer *r)
1295 KASSERT(rt != NULL);
1296 rt_assert_referenced(rt);
1298 if ((rt->rt_flags & (RTF_DYNAMIC | RTF_HOST)) ==
1300 rtrequest(RTM_DELETE, rt_getkey(rt),
1301 rt->rt_gateway, rt_mask(rt), rt->rt_flags, &retrt);
1303 rt_unref(rt);