Lines Matching refs:ro
116 ip_findroute(struct route *ro, struct in_addr dest, struct mbuf *m)
124 bzero(ro, sizeof(*ro));
125 dst = (struct sockaddr_in *)&ro->ro_dst;
129 in_rtalloc_ign(ro, 0, M_GETFIB(m));
134 rt = ro->ro_rt;
163 struct route ro;
181 bzero(&ro, sizeof(ro));
420 if ((dst = ip_findroute(&ro, dest, m)) == NULL)
422 ifp = ro.ro_rt->rt_ifp;
429 if ((ro.ro_rt->rt_flags & (RTF_BLACKHOLE|RTF_BROADCAST)) != 0)
469 if (ro.ro_rt)
470 RTFREE(ro.ro_rt);
482 RTFREE(ro.ro_rt);
483 if ((dst = ip_findroute(&ro, dest, m)) == NULL)
485 ifp = ro.ro_rt->rt_ifp;
496 if ((ro.ro_rt->rt_flags & RTF_REJECT) &&
497 (ro.ro_rt->rt_rmx.rmx_expire == 0 ||
498 time_uptime < ro.ro_rt->rt_rmx.rmx_expire)) {
526 if (ro.ro_rt->rt_rmx.rmx_mtu)
527 mtu = min(ro.ro_rt->rt_rmx.rmx_mtu, ifp->if_mtu);
542 (struct sockaddr *)dst, &ro);
575 (struct sockaddr *)dst, &ro);
593 ro.ro_rt->rt_rmx.rmx_pksent++;
598 RTFREE(ro.ro_rt);
603 if (ro.ro_rt)
604 RTFREE(ro.ro_rt);