Lines Matching refs:rt

731 nd6_rtmsg(cmd, rt)
733 struct rtentry *rt;
736 struct ifnet *ifp = rt->rt_ifp;
738 RT_LOCK_ASSERT_HELD(rt);
743 info.rti_info[RTAX_DST] = rt_key(rt);
744 info.rti_info[RTAX_GATEWAY] = rt->rt_gateway;
745 info.rti_info[RTAX_NETMASK] = rt_mask(rt);
751 info.rti_info[RTAX_IFA] = rt->rt_ifa->ifa_addr;
753 rt_missmsg(cmd, &info, rt->rt_flags, 0);
1216 struct rtentry *rt = NULL;
1285 if ((rt = nd6_lookup(&rtaddr, 0, drifp, 0)) != NULL) {
1286 RT_LOCK_ASSERT_HELD(rt);
1287 if ((ln = rt->rt_llinfo) != NULL &&
1297 RT_REMREF_LOCKED(rt);
1298 RT_UNLOCK(rt);
1299 rt = NULL;
1449 rt = nd6_lookup(&installed_dr->rtaddr, 0, installed_dr->ifp, 0);
1450 if (rt) {
1451 RT_LOCK_ASSERT_HELD(rt);
1452 if ((ln = (struct llinfo_nd6 *)rt->rt_llinfo) &&
1461 RT_REMREF_LOCKED(rt);
1462 RT_UNLOCK(rt);
1463 rt = NULL;
2887 struct rtentry *rt;
2898 if ((rt = nd6_lookup(&pfxrtr->router->rtaddr, 0,
2900 RT_LOCK_ASSERT_HELD(rt);
2901 if ((ln = rt->rt_llinfo) != NULL &&
2903 RT_REMREF_LOCKED(rt);
2904 RT_UNLOCK(rt);
2909 RT_REMREF_LOCKED(rt);
2910 RT_UNLOCK(rt);
3383 struct rtentry *rt = NULL;
3469 if ((rt = pr->ndpr_rt) != NULL)
3489 if (rt != NULL) {
3490 rtfree(rt);
3491 rt = NULL;
3495 ifa->ifa_addr, (struct sockaddr *)&mask6, rtflags, &rt,
3503 if (rt != NULL) {
3504 RT_LOCK(rt);
3505 nd6_rtmsg(RTM_ADD, rt);
3506 RT_UNLOCK(rt);
3528 if (rt != NULL || error == EEXIST) {
3539 pr->ndpr_rt = rt; /* keep reference from rtrequest */
3602 struct rtentry *rt = NULL, *ndpr_rt = NULL;
3639 NULL, (struct sockaddr *)&mask6, 0, &rt, ifscope);
3641 if (rt != NULL) {
3643 RT_LOCK(rt);
3644 nd6_rtmsg(RTM_DELETE, rt);
3645 RT_UNLOCK(rt);
3646 rtfree(rt);
4147 struct rtentry *rt = (struct rtentry *)rn;
4152 RT_LOCK(rt);
4153 if (rt->rt_gateway == NULL || rt->rt_gateway->sa_family != AF_INET6) {
4154 RT_UNLOCK(rt);
4158 if (!IN6_ARE_ADDR_EQUAL(gate, &SIN6(rt->rt_gateway)->sin6_addr)) {
4159 RT_UNLOCK(rt);
4167 if ((rt->rt_flags & RTF_STATIC) != 0) {
4168 RT_UNLOCK(rt);
4175 if ((rt->rt_flags & RTF_HOST) == 0) {
4176 RT_UNLOCK(rt);
4185 RT_UNLOCK(rt);
4186 return (rtrequest_locked(RTM_DELETE, rt_key(rt), rt->rt_gateway,
4187 rt_mask(rt), rt->rt_flags, 0));