Lines Matching refs:oif
252 int oif,
258 if (oif) {
261 if (dev->ifindex == oif)
265 sprt->rt6i_idev->dev->ifindex != oif) {
266 if (strict && oif)
268 if (local && (!oif ||
269 local->rt6i_idev->dev->ifindex == oif))
324 static inline int rt6_check_dev(struct rt6_info *rt, int oif)
327 if (!oif || dev->ifindex == oif)
330 rt->rt6i_idev && rt->rt6i_idev->dev->ifindex == oif)
353 static int rt6_score_route(struct rt6_info *rt, int oif,
358 m = rt6_check_dev(rt, oif);
370 static struct rt6_info *find_match(struct rt6_info *rt, int oif, int strict,
378 m = rt6_score_route(rt, oif, strict);
397 u32 metric, int oif, int strict)
405 match = find_match(rt, oif, strict, &mpri, match);
408 match = find_match(rt, oif, strict, &mpri, match);
413 static struct rt6_info *rt6_select(struct fib6_node *fn, int oif, int strict)
417 RT6_TRACE("%s(fn->leaf=%p, oif=%d)\n",
418 __FUNCTION__, fn->leaf, oif);
424 match = find_rr_leaf(fn, rt0, rt0->rt6i_metric, oif, strict);
550 rt = rt6_device_match(rt, fl->oif, flags);
564 int oif, int strict)
567 .oif = oif,
782 rt = rt6_select(fn, fl->oif, strict | reachable);
1414 if (fl->oif != rt->rt6i_dev->ifindex)
1440 .oif = dev->ifindex,
2255 fl.oif = nla_get_u32(tb[RTA_OIF]);