Searched refs:oif (Results 1 - 32 of 32) sorted by relevance

/linux-4.1.27/include/uapi/linux/netfilter/
H A Dxt_TEE.h6 char oif[16]; member in struct:xt_tee_tginfo
/linux-4.1.27/net/netfilter/
H A Dxt_TEE.c36 int oif; member in struct:xt_tee_priv
66 if (info->priv->oif == -1) tee_tg_route4()
68 fl4.flowi4_oif = info->priv->oif; tee_tg_route4()
148 if (info->priv->oif == -1) tee_tg_route6()
150 fl6.flowi6_oif = info->priv->oif; tee_tg_route6()
209 if (!strcmp(dev->name, priv->tginfo->oif)) tee_netdev_event()
210 priv->oif = dev->ifindex; tee_netdev_event()
213 if (dev->ifindex == priv->oif) tee_netdev_event()
214 priv->oif = -1; tee_netdev_event()
217 if (!strcmp(dev->name, priv->tginfo->oif)) tee_netdev_event()
218 priv->oif = dev->ifindex; tee_netdev_event()
219 else if (dev->ifindex == priv->oif) tee_netdev_event()
220 priv->oif = -1; tee_netdev_event()
237 if (info->oif[0]) { tee_tg_check()
238 if (info->oif[sizeof(info->oif)-1] != '\0') tee_tg_check()
246 priv->oif = -1; tee_tg_check()
H A Dnf_nat_core.c109 /* Change in oif may mean change in hh_len. */ nf_xfrm_me_harder()
/linux-4.1.27/net/ipv4/
H A Ddatagram.c30 int oif; __ip4_datagram_connect() local
42 oif = sk->sk_bound_dev_if; __ip4_datagram_connect()
45 if (!oif) __ip4_datagram_connect()
46 oif = inet->mc_index; __ip4_datagram_connect()
52 RT_CONN_FLAGS(sk), oif, __ip4_datagram_connect()
H A Dxfrm4_policy.c107 int oif = 0; _decode_session4() local
110 oif = skb_dst(skb)->dev->ifindex; _decode_session4()
114 fl4->flowi4_oif = reverse ? skb->skb_iif : oif; _decode_session4()
H A Dfib_frontend.c292 /* Given (packet source, input interface) and optional (dst, oif, tos):
301 u8 tos, int oif, struct net_device *dev, __fib_validate_source()
311 fl4.flowi4_iif = oif ? : LOOPBACK_IFINDEX; __fib_validate_source()
328 (dev->ifindex != oif || !IN_DEV_TX_REDIRECTS(idev))) __fib_validate_source()
377 u8 tos, int oif, struct net_device *dev, fib_validate_source()
384 (dev->ifindex != oif || !IN_DEV_TX_REDIRECTS(idev))) { fib_validate_source()
388 return __fib_validate_source(skb, src, dst, tos, oif, dev, r, idev, itag); fib_validate_source()
300 __fib_validate_source(struct sk_buff *skb, __be32 src, __be32 dst, u8 tos, int oif, struct net_device *dev, int rpf, struct in_device *idev, u32 *itag) __fib_validate_source() argument
376 fib_validate_source(struct sk_buff *skb, __be32 src, __be32 dst, u8 tos, int oif, struct net_device *dev, struct in_device *idev, u32 *itag) fib_validate_source() argument
H A Dnetfilter.c69 /* Change in oif may mean change in hh_len. */ ip_route_me_harder()
H A Dping.c739 ipc.oif = sk->sk_bound_dev_if; ping_v4_sendmsg()
784 if (!ipc.oif) ping_v4_sendmsg()
785 ipc.oif = inet->mc_index; ping_v4_sendmsg()
788 } else if (!ipc.oif) ping_v4_sendmsg()
789 ipc.oif = inet->uc_index; ping_v4_sendmsg()
791 flowi4_init_output(&fl4, ipc.oif, sk->sk_mark, tos, ping_v4_sendmsg()
H A Draw.c542 ipc.oif = sk->sk_bound_dev_if; raw_sendmsg()
588 if (!ipc.oif) raw_sendmsg()
589 ipc.oif = inet->mc_index; raw_sendmsg()
592 } else if (!ipc.oif) raw_sendmsg()
593 ipc.oif = inet->uc_index; raw_sendmsg()
595 flowi4_init_output(&fl4, ipc.oif, sk->sk_mark, tos, raw_sendmsg()
H A Droute.c504 int oif, u8 tos, __build_flow_key()
510 oif = sk->sk_bound_dev_if; __build_flow_key()
515 flowi4_init_output(fl4, oif, mark, tos, __build_flow_key()
525 int oif = skb->dev->ifindex; build_skb_flow_key() local
530 __build_flow_key(fl4, sk, iph, oif, tos, prot, mark, 0); build_skb_flow_key()
788 int oif = skb->dev->ifindex; ip_do_redirect() local
795 __build_flow_key(&fl4, sk, iph, oif, tos, prot, mark, 0); ip_do_redirect()
1001 int oif, u32 mark, u8 protocol, int flow_flags) ipv4_update_pmtu()
1010 __build_flow_key(&fl4, NULL, iph, oif, ipv4_update_pmtu()
1092 int oif, u32 mark, u8 protocol, int flow_flags) ipv4_redirect()
1098 __build_flow_key(&fl4, NULL, iph, oif, ipv4_redirect()
2095 /* I removed check for oif == dev_out->oif here. __ip_route_output_key()
2187 addresses. When oif is specified, routing __ip_route_output_key()
2195 We could make it even if oif is unknown, __ip_route_output_key()
502 __build_flow_key(struct flowi4 *fl4, const struct sock *sk, const struct iphdr *iph, int oif, u8 tos, u8 prot, u32 mark, int flow_flags) __build_flow_key() argument
1000 ipv4_update_pmtu(struct sk_buff *skb, struct net *net, u32 mtu, int oif, u32 mark, u8 protocol, int flow_flags) ipv4_update_pmtu() argument
1091 ipv4_redirect(struct sk_buff *skb, struct net *net, int oif, u32 mark, u8 protocol, int flow_flags) ipv4_redirect() argument
H A Dfib_semantics.c567 * Every prefix refers to a set of "nexthop"s (gw, oif),
579 * {universe prefix} -> (gw, oif) [scope link]
581 * |-> {link prefix} -> (gw, oif) [scope local]
H A Dudp.c959 ipc.oif = sk->sk_bound_dev_if; udp_sendmsg()
1005 if (!ipc.oif) udp_sendmsg()
1006 ipc.oif = inet->mc_index; udp_sendmsg()
1010 } else if (!ipc.oif) udp_sendmsg()
1011 ipc.oif = inet->uc_index; udp_sendmsg()
1020 flowi4_init_output(fl4, ipc.oif, sk->sk_mark, tos, udp_sendmsg()
H A Dip_sockglue.c242 ipc->oif = src_info->ipi6_ifindex; for_each_cmsghdr()
265 ipc->oif = info->ipi_ifindex; for_each_cmsghdr()
H A Dip_tunnel.c344 __be32 key, __u8 tos, int oif) init_tunnel_flow()
347 fl4->flowi4_oif = oif; init_tunnel_flow()
341 init_tunnel_flow(struct flowi4 *fl4, int proto, __be32 daddr, __be32 saddr, __be32 key, __u8 tos, int oif) init_tunnel_flow() argument
H A Dipmr.c844 /* Look for a (*,*,oif) entry */ ipmr_cache_find_any_parent()
1851 * to wrong oif. In any case, it is not a good ip_mr_forward()
1861 * so that we cannot check that packet arrived on an oif. ip_mr_forward()
H A Dtcp_ipv4.c710 u32 win, u32 tsval, u32 tsecr, int oif, tcp_v4_send_ack()
769 if (oif) tcp_v4_send_ack()
770 arg.bound_dev_if = oif; tcp_v4_send_ack()
708 tcp_v4_send_ack(struct net *net, struct sk_buff *skb, u32 seq, u32 ack, u32 win, u32 tsval, u32 tsecr, int oif, struct tcp_md5sig_key *key, int reply_flags, u8 tos) tcp_v4_send_ack() argument
/linux-4.1.27/include/net/
H A Droute.h125 __be32 saddr, u8 tos, int oif) ip_route_output()
128 .flowi4_oif = oif, ip_route_output()
140 __u8 proto, __u8 tos, int oif) ip_route_output_ports()
142 flowi4_init_output(fl4, oif, sk ? sk->sk_mark : 0, tos, ip_route_output_ports()
153 __be32 gre_key, __u8 tos, int oif) ip_route_output_gre()
156 fl4->flowi4_oif = oif; ip_route_output_gre()
182 void ipv4_update_pmtu(struct sk_buff *skb, struct net *net, u32 mtu, int oif,
185 void ipv4_redirect(struct sk_buff *skb, struct net *net, int oif, u32 mark,
244 u32 tos, int oif, u8 protocol, ip_route_connect_init()
253 flowi4_init_output(fl4, oif, sk->sk_mark, tos, RT_SCOPE_UNIVERSE, ip_route_connect_init()
259 int oif, u8 protocol, ip_route_connect()
266 ip_route_connect_init(fl4, dst, src, tos, oif, protocol, ip_route_connect()
274 flowi4_update_output(fl4, oif, tos, fl4->daddr, fl4->saddr); ip_route_connect()
124 ip_route_output(struct net *net, __be32 daddr, __be32 saddr, u8 tos, int oif) ip_route_output() argument
136 ip_route_output_ports(struct net *net, struct flowi4 *fl4, struct sock *sk, __be32 daddr, __be32 saddr, __be16 dport, __be16 sport, __u8 proto, __u8 tos, int oif) ip_route_output_ports() argument
151 ip_route_output_gre(struct net *net, struct flowi4 *fl4, __be32 daddr, __be32 saddr, __be32 gre_key, __u8 tos, int oif) ip_route_output_gre() argument
243 ip_route_connect_init(struct flowi4 *fl4, __be32 dst, __be32 src, u32 tos, int oif, u8 protocol, __be16 sport, __be16 dport, struct sock *sk) ip_route_connect_init() argument
257 ip_route_connect(struct flowi4 *fl4, __be32 dst, __be32 src, u32 tos, int oif, u8 protocol, __be16 sport, __be16 dport, struct sock *sk) ip_route_connect() argument
H A Dip6_route.h94 const struct in6_addr *saddr, int oif, int flags);
118 void ip6_update_pmtu(struct sk_buff *skb, struct net *net, __be32 mtu, int oif,
121 void ip6_redirect(struct sk_buff *skb, struct net *net, int oif, u32 mark);
122 void ip6_redirect_no_header(struct sk_buff *skb, struct net *net, int oif,
H A Dflow.h84 static inline void flowi4_init_output(struct flowi4 *fl4, int oif, flowi4_init_output() argument
90 fl4->flowi4_oif = oif; flowi4_init_output()
105 static inline void flowi4_update_output(struct flowi4 *fl4, int oif, __u8 tos, flowi4_update_output() argument
108 fl4->flowi4_oif = oif; flowi4_update_output()
H A Dip_fib.h290 u8 tos, int oif, struct net_device *dev,
H A Dip.h59 int oif; member in struct:ipcm_cookie
/linux-4.1.27/include/linux/
H A Dicmpv6.h44 int oif);
/linux-4.1.27/net/ipv6/
H A Droute.c95 static int rt6_score_route(struct rt6_info *rt, int oif, int strict);
409 struct flowi6 *fl6, int oif, rt6_multipath_select()
424 if (rt6_score_route(sibling, oif, strict) < 0) rt6_multipath_select()
440 int oif, rt6_device_match()
446 if (!oif && ipv6_addr_any(saddr)) rt6_device_match()
452 if (oif) { rt6_device_match()
453 if (dev->ifindex == oif) rt6_device_match()
457 sprt->rt6i_idev->dev->ifindex != oif) { rt6_device_match()
458 if (flags & RT6_LOOKUP_F_IFACE && oif) rt6_device_match()
460 if (local && (!oif || rt6_device_match()
461 local->rt6i_idev->dev->ifindex == oif)) rt6_device_match()
473 if (oif) { rt6_device_match()
558 static inline int rt6_check_dev(struct rt6_info *rt, int oif) rt6_check_dev() argument
561 if (!oif || dev->ifindex == oif) rt6_check_dev()
564 rt->rt6i_idev && rt->rt6i_idev->dev->ifindex == oif) rt6_check_dev()
600 static int rt6_score_route(struct rt6_info *rt, int oif, rt6_score_route() argument
605 m = rt6_check_dev(rt, oif); rt6_score_route()
619 static struct rt6_info *find_match(struct rt6_info *rt, int oif, int strict, find_match() argument
629 m = rt6_score_route(rt, oif, strict); find_match()
652 u32 metric, int oif, int strict, find_rr_leaf()
661 match = find_match(rt, oif, strict, &mpri, match, do_rr); find_rr_leaf()
664 match = find_match(rt, oif, strict, &mpri, match, do_rr); find_rr_leaf()
669 static struct rt6_info *rt6_select(struct fib6_node *fn, int oif, int strict) rt6_select() argument
679 match = find_rr_leaf(fn, rt0, rt0->rt6i_metric, oif, strict, rt6_select()
823 const struct in6_addr *saddr, int oif, int strict) rt6_lookup()
826 .flowi6_oif = oif, rt6_lookup()
915 static struct rt6_info *ip6_pol_route(struct net *net, struct fib6_table *table, int oif, ip6_pol_route() argument
935 rt = rt6_select(fn, oif, strict); ip6_pol_route()
937 rt = rt6_multipath_select(rt, fl6, oif, strict); ip6_pol_route()
1168 int oif, u32 mark) ip6_update_pmtu()
1175 fl6.flowi6_oif = oif; ip6_update_pmtu()
1272 void ip6_redirect(struct sk_buff *skb, struct net *net, int oif, u32 mark) ip6_redirect() argument
1280 fl6.flowi6_oif = oif; ip6_redirect()
1292 void ip6_redirect_no_header(struct sk_buff *skb, struct net *net, int oif, ip6_redirect_no_header() argument
1302 fl6.flowi6_oif = oif; ip6_redirect_no_header()
2926 int err, iif = 0, oif = 0; inet6_rtm_getroute() local
2953 oif = nla_get_u32(tb[RTA_OIF]); inet6_rtm_getroute()
2976 fl6.flowi6_oif = oif; inet6_rtm_getroute()
408 rt6_multipath_select(struct rt6_info *match, struct flowi6 *fl6, int oif, int strict) rt6_multipath_select() argument
437 rt6_device_match(struct net *net, struct rt6_info *rt, const struct in6_addr *saddr, int oif, int flags) rt6_device_match() argument
650 find_rr_leaf(struct fib6_node *fn, struct rt6_info *rr_head, u32 metric, int oif, int strict, bool *do_rr) find_rr_leaf() argument
822 rt6_lookup(struct net *net, const struct in6_addr *daddr, const struct in6_addr *saddr, int oif, int strict) rt6_lookup() argument
1167 ip6_update_pmtu(struct sk_buff *skb, struct net *net, __be32 mtu, int oif, u32 mark) ip6_update_pmtu() argument
H A Dxfrm6_policy.c136 int oif = 0; _decode_session6() local
145 oif = skb_dst(skb)->dev->ifindex; _decode_session6()
149 fl6->flowi6_oif = reverse ? skb->skb_iif : oif; _decode_session6()
H A Dnetfilter.c60 /* Change in oif may mean change in hh_len. */ ip6_route_me_harder()
H A Dtcp_ipv6.c735 int oif, struct tcp_md5sig_key *key, int rst, tcp_v6_send_response()
806 if (rt6_need_strict(&fl6.daddr) && !oif) tcp_v6_send_response()
809 fl6.flowi6_oif = oif; tcp_v6_send_response()
844 int oif; tcp_v6_send_reset() local
891 oif = sk ? sk->sk_bound_dev_if : 0; tcp_v6_send_reset()
892 tcp_v6_send_response(sk, skb, seq, ack_seq, 0, 0, 0, oif, key, 1, 0, 0); tcp_v6_send_reset()
904 u32 ack, u32 win, u32 tsval, u32 tsecr, int oif, tcp_v6_send_ack()
908 tcp_v6_send_response(sk, skb, seq, ack, win, tsval, tsecr, oif, key, 0, tcp_v6_send_ack()
733 tcp_v6_send_response(struct sock *sk, struct sk_buff *skb, u32 seq, u32 ack, u32 win, u32 tsval, u32 tsecr, int oif, struct tcp_md5sig_key *key, int rst, u8 tclass, u32 label) tcp_v6_send_response() argument
903 tcp_v6_send_ack(struct sock *sk, struct sk_buff *skb, u32 seq, u32 ack, u32 win, u32 tsval, u32 tsecr, int oif, struct tcp_md5sig_key *key, u8 tclass, u32 label) tcp_v6_send_ack() argument
H A Dicmp.c817 int oif) icmpv6_flow_init()
825 fl6->flowi6_oif = oif; icmpv6_flow_init()
813 icmpv6_flow_init(struct sock *sk, struct flowi6 *fl6, u8 type, const struct in6_addr *saddr, const struct in6_addr *daddr, int oif) icmpv6_flow_init() argument
H A Dip6mr.c1030 /* Look for a (*,*,oif) entry */ ip6mr_cache_find_any_parent()
2119 so that we cannot check that packet arrived on an oif. ip6_mr_forward()
H A Dip6_output.c867 * 2. oif also should be the same. ip6_sk_dst_check()
/linux-4.1.27/fs/ocfs2/
H A Dioctl.c242 struct ocfs2_info_fs_features oif; ocfs2_info_handle_fs_features() local
245 if (o2info_from_user(oif, req)) ocfs2_info_handle_fs_features()
248 oif.if_compat_features = osb->s_feature_compat; ocfs2_info_handle_fs_features()
249 oif.if_incompat_features = osb->s_feature_incompat; ocfs2_info_handle_fs_features()
250 oif.if_ro_compat_features = osb->s_feature_ro_compat; ocfs2_info_handle_fs_features()
252 o2info_set_request_filled(&oif.if_req); ocfs2_info_handle_fs_features()
254 if (o2info_to_user(oif, req)) ocfs2_info_handle_fs_features()
/linux-4.1.27/net/decnet/
H A Ddn_fib.c572 u32 oif; fib_magic() member in struct:__anon14108
574 .oif = ifa->ifa_dev->dev->ifindex, fib_magic()
H A Ddn_route.c986 " iif=%d oif=%d\n", le16_to_cpu(oldflp->daddr), dn_route_output_slow()
1059 " dst=%04x src=%04x oif=%d try_hard=%d\n", dn_route_output_slow()

Completed in 780 milliseconds