Lines Matching +full:route +full:- +full:up
1 /*-
48 #include <net/route.h>
49 #include <net/route/route_ctl.h>
50 #include <net/route/route_var.h>
51 #include <net/route/fib_algo.h>
52 #include <net/route/nhop.h>
62 /* Verify struct route compatibility */
63 /* Assert 'struct route_in' is compatible with 'struct route' */
104 * Looks up path in fib @fibnum specified by @dst.
119 nh = dp->f(dp->arg, key, scopeid); in fib4_lookup()
122 /* Ensure route & ifp is UP */ in fib4_lookup()
123 if (RT_LINK_IS_UP(nh->nh_ifp)) { in fib4_lookup()
156 rn = rh->rnh_matchaddr((void *)&sin4, &rh->head); in fib4_lookup()
157 if (rn != NULL && ((rn->rn_flags & RNF_ROOT) == 0)) { in fib4_lookup()
158 nh = nhop_select((RNTORT(rn))->rt_nhop, flowid); in fib4_lookup()
159 /* Ensure route & ifp is UP */ in fib4_lookup()
160 if (RT_LINK_IS_UP(nh->nh_ifp)) { in fib4_lookup()
179 if (src_if != NULL && nh->nh_aifp == src_if) { in check_urpf_nhop()
185 else if ((nh->nh_flags & NHF_DEFAULT) == 0) in check_urpf_nhop()
233 rn = rh->rnh_matchaddr((void *)&sin4, &rh->head); in lookup_nhop()
234 if (rn != NULL && ((rn->rn_flags & RNF_ROOT) == 0)) in lookup_nhop()
235 nh = RNTORT(rn)->rt_nhop; in lookup_nhop()
244 * If @src_if is non-zero, verifies that at least 1 path goes via
246 * If @src_if is zero, verifies that route exist.
247 * if @flags contains NHR_NOTDEFAULT, do not consider default route.
249 * Returns 1 if route matching conditions is found, 0 otherwise.
260 nh = dp->f(dp->arg, key, scopeid); in fib4_check_urpf()
303 rn = rh->rnh_matchaddr((void *)&sin4, &rh->head); in fib4_lookup_rt()
304 if (rn != NULL && ((rn->rn_flags & RNF_ROOT) == 0)) { in fib4_lookup_rt()
306 rnd->rnd_nhop = rt->rt_nhop; in fib4_lookup_rt()
307 rnd->rnd_weight = rt->rt_weight; in fib4_lookup_rt()
325 /* Ensure route & ifp is UP */ in fib4_lookup_debugnet()
326 if (RT_LINK_IS_UP(nh->nh_ifp)) in fib4_lookup_debugnet()