Searched refs:fl4 (Results 1 - 25 of 59) sorted by relevance

123

/linux-master/net/ipv4/netfilter/
H A Dnf_dup_ipv4.c28 struct flowi4 fl4; local
30 memset(&fl4, 0, sizeof(fl4));
32 fl4.flowi4_oif = oif;
34 fl4.daddr = gw->s_addr;
35 fl4.flowi4_tos = RT_TOS(iph->tos);
36 fl4.flowi4_scope = RT_SCOPE_UNIVERSE;
37 fl4.flowi4_flags = FLOWI_FLAG_KNOWN_NH;
38 rt = ip_route_output_key(net, &fl4);
H A Dnft_fib_ipv4.c65 struct flowi4 fl4 = { local
88 fl4.flowi4_l3mdev = l3mdev_master_ifindex_rcu(oif);
111 fl4.flowi4_mark = pkt->skb->mark;
113 fl4.flowi4_tos = iph->tos & DSCP_BITS;
116 fl4.daddr = iph->daddr;
117 fl4.saddr = get_saddr(iph->saddr);
121 fl4.flowi4_iif = nft_out(pkt)->ifindex;
123 fl4.daddr = iph->saddr;
124 fl4.saddr = get_saddr(iph->daddr);
129 if (fib_lookup(nft_net(pkt), &fl4,
[all...]
H A Dipt_rpfilter.c32 static bool rpfilter_lookup_reverse(struct net *net, struct flowi4 *fl4, argument
37 if (fib_lookup(net, fl4, &res, FIB_LOOKUP_IGNORE_LINKSTATE))
/linux-master/net/ipv4/
H A Dnetfilter.c24 struct flowi4 fl4 = {}; local
44 fl4.daddr = iph->daddr;
45 fl4.saddr = saddr;
46 fl4.flowi4_tos = RT_TOS(iph->tos);
47 fl4.flowi4_oif = sk ? sk->sk_bound_dev_if : 0;
48 fl4.flowi4_l3mdev = l3mdev_master_ifindex(dev);
49 fl4.flowi4_mark = skb->mark;
50 fl4.flowi4_flags = flags;
51 fib4_rules_early_flow_dissect(net, skb, &fl4, &flkeys);
52 rt = ip_route_output_key(net, &fl4);
[all...]
H A Dxfrm4_policy.c20 static struct dst_entry *__xfrm4_dst_lookup(struct net *net, struct flowi4 *fl4, argument
28 memset(fl4, 0, sizeof(*fl4));
29 fl4->daddr = daddr->a4;
30 fl4->flowi4_tos = tos;
31 fl4->flowi4_l3mdev = l3mdev_master_ifindex_by_index(net, oif);
32 fl4->flowi4_mark = mark;
34 fl4->saddr = saddr->a4;
36 rt = __ip_route_output_key(net, fl4);
48 struct flowi4 fl4; local
58 struct flowi4 fl4; local
73 const struct flowi4 *fl4 = &fl->u.ip4; local
[all...]
H A Dudp_tunnel_core.c216 struct flowi4 fl4; local
226 memset(&fl4, 0, sizeof(fl4));
227 fl4.flowi4_mark = skb->mark;
228 fl4.flowi4_proto = IPPROTO_UDP;
229 fl4.flowi4_oif = oif;
230 fl4.daddr = key->u.ipv4.dst;
231 fl4.saddr = key->u.ipv4.src;
232 fl4.fl4_dport = dport;
233 fl4
[all...]
H A Ddatagram.c23 struct flowi4 *fl4; local
48 fl4 = &inet->cork.fl.u.ip4;
49 rt = ip_route_connect(fl4, usin->sin_addr.s_addr, saddr, oif,
65 inet->inet_saddr = fl4->saddr; /* Update source address */
67 inet->inet_rcv_saddr = fl4->saddr;
71 inet->inet_daddr = fl4->daddr;
106 struct flowi4 fl4; local
119 rt = ip_route_output_ports(sock_net(sk), &fl4, sk, daddr,
H A Droute.c501 static void ip_rt_fix_tos(struct flowi4 *fl4) argument
503 __u8 tos = RT_FL_TOS(fl4);
505 fl4->flowi4_tos = tos & IPTOS_RT_MASK;
507 fl4->flowi4_scope = RT_SCOPE_LINK;
510 static void __build_flow_key(const struct net *net, struct flowi4 *fl4, argument
526 flowi4_init_output(fl4, oif, mark, tos & IPTOS_RT_MASK, scope,
531 static void build_skb_flow_key(struct flowi4 *fl4, const struct sk_buff *skb, argument
541 __build_flow_key(net, fl4, sk, iph, oif, tos, prot, mark, 0);
544 static void build_sk_flow_key(struct flowi4 *fl4, const struct sock *sk) argument
554 flowi4_init_output(fl4, s
564 ip_rt_build_flow_key(struct flowi4 *fl4, const struct sock *sk, const struct sk_buff *skb) argument
738 __ip_do_redirect(struct rtable *rt, struct sk_buff *skb, struct flowi4 *fl4, bool kill_route) argument
826 struct flowi4 fl4; local
1019 __ip_rt_update_pmtu(struct rtable *rt, struct flowi4 *fl4, u32 mtu) argument
1060 struct flowi4 fl4; local
1075 struct flowi4 fl4; local
1092 struct flowi4 fl4; local
1095 __build_flow_key(sock_net(sk), &fl4, sk, iph, 0, 0, 0, 0, 0); local
1110 struct flowi4 fl4; local
1165 struct flowi4 fl4; local
1180 struct flowi4 fl4; local
1281 struct flowi4 fl4 = { local
2011 fib_multipath_custom_hash_fl4(const struct net *net, const struct flowi4 *fl4) argument
2037 fib_multipath_hash(const struct net *net, const struct flowi4 *fl4, const struct sk_buff *skb, struct flow_keys *flkeys) argument
2233 struct flowi4 fl4; local
2501 __mkroute_output(const struct fib_result *res, const struct flowi4 *fl4, int orig_oif, struct net_device *dev_out, unsigned int flags) argument
2627 ip_route_output_key_hash(struct net *net, struct flowi4 *fl4, const struct sk_buff *skb) argument
2649 ip_route_output_key_hash_rcu(struct net *net, struct flowi4 *fl4, struct fib_result *res, const struct sk_buff *skb) argument
2887 rt_fill_info(struct net *net, __be32 dst, __be32 src, struct rtable *rt, u32 table_id, struct flowi4 *fl4, struct sk_buff *skb, u32 portid, u32 seq, unsigned int flags) argument
3241 struct flowi4 fl4 = {}; local
[all...]
H A Dicmp.c309 struct flowi4 *fl4, int type, int code)
324 peer = inet_getpeer_v4(net->ipv4.peers, fl4->daddr, vif, 1);
366 struct flowi4 *fl4,
371 if (ip_append_data(sk, fl4, icmp_glue_bits, icmp_param,
390 ip_push_pending_frames(sk, fl4);
403 struct flowi4 fl4;
439 memset(&fl4, 0, sizeof(fl4));
440 fl4.daddr = daddr;
441 fl4
307 icmpv4_xrlim_allow(struct net *net, struct rtable *rt, struct flowi4 *fl4, int type, int code) argument
363 icmp_push_reply(struct sock *sk, struct icmp_bxm *icmp_param, struct flowi4 *fl4, struct ipcm_cookie *ipc, struct rtable **rt) argument
402 struct flowi4 fl4; local
476 icmp_route_lookup(struct net *net, struct flowi4 *fl4, struct sk_buff *skb_in, const struct iphdr *iph, __be32 saddr, u8 tos, u32 mark, int type, int code, struct icmp_bxm *param) argument
595 struct flowi4 fl4; local
[all...]
H A Draw.c326 static int raw_send_hdrinc(struct sock *sk, struct flowi4 *fl4, argument
341 ip_local_error(sk, EMSGSIZE, fl4->daddr, inet->inet_dport,
398 iph->saddr = fl4->saddr;
431 static int raw_probe_proto_opt(struct raw_frag_vec *rfv, struct flowi4 *fl4) argument
435 if (fl4->flowi4_proto != IPPROTO_ICMP)
445 fl4->fl4_icmp_type = rfv->hdr.icmph.type;
446 fl4->fl4_icmp_code = rfv->hdr.icmph.code;
488 struct flowi4 fl4; local
609 flowi4_init_output(&fl4, ipc.oif, ipc.sockc.mark, tos, scope,
619 err = raw_probe_proto_opt(&rfv, &fl4);
[all...]
H A Dip_output.c443 * iph->saddr = fl4->saddr;
444 * iph->daddr = fl4->daddr;
446 static void ip_copy_addrs(struct iphdr *iph, const struct flowi4 *fl4) argument
448 BUILD_BUG_ON(offsetof(typeof(*fl4), daddr) !=
449 offsetof(typeof(*fl4), saddr) + sizeof(fl4->saddr));
451 iph->saddr = fl4->saddr;
452 iph->daddr = fl4->daddr;
462 struct flowi4 *fl4; local
472 fl4
951 __ip_append_data(struct sock *sk, struct flowi4 *fl4, struct sk_buff_head *queue, struct inet_cork *cork, struct page_frag *pfrag, int getfrag(void *from, char *to, int offset, int len, int odd, struct sk_buff *skb), void *from, int length, int transhdrlen, unsigned int flags) argument
1344 ip_append_data(struct sock *sk, struct flowi4 *fl4, int getfrag(void *from, char *to, int offset, int len, int odd, struct sk_buff *skb), void *from, int length, int transhdrlen, struct ipcm_cookie *ipc, struct rtable **rtp, unsigned int flags) argument
1383 __ip_make_skb(struct sock *sk, struct flowi4 *fl4, struct sk_buff_head *queue, struct inet_cork *cork) argument
1503 ip_push_pending_frames(struct sock *sk, struct flowi4 *fl4) argument
1535 ip_make_skb(struct sock *sk, struct flowi4 *fl4, int getfrag(void *from, char *to, int offset, int len, int odd, struct sk_buff *skb), void *from, int length, int transhdrlen, struct ipcm_cookie *ipc, struct rtable **rtp, struct inet_cork *cork, unsigned int flags) argument
1594 struct flowi4 fl4; local
[all...]
H A Dfib_rules.c181 struct flowi4 *fl4 = &fl->u.ip4; local
182 __be32 daddr = fl4->daddr;
183 __be32 saddr = fl4->saddr;
189 if (r->dscp && r->dscp != inet_dsfield_to_dscp(fl4->flowi4_tos))
192 if (rule->ip_proto && (rule->ip_proto != fl4->flowi4_proto))
196 !fib_rule_port_inrange(&rule->sport_range, fl4->fl4_sport))
200 !fib_rule_port_inrange(&rule->dport_range, fl4->fl4_dport))
H A Dfib_frontend.c210 struct flowi4 fl4 = { .daddr = addr }; local
225 if (!fib_table_lookup(table, &fl4, &res, FIB_LOOKUP_NOREF)) {
292 struct flowi4 fl4 = { local
300 if (!fib_lookup(net, &fl4, &res, 0))
352 struct flowi4 fl4; local
355 fl4.flowi4_oif = 0;
356 fl4.flowi4_l3mdev = l3mdev_master_ifindex_rcu(dev);
357 fl4.flowi4_iif = oif ? : LOOPBACK_IFINDEX;
358 fl4.daddr = src;
359 fl4
1348 struct flowi4 fl4 = { local
[all...]
H A Dip_tunnel.c291 struct flowi4 fl4; local
294 ip_tunnel_init_flow(&fl4, iph->protocol, iph->daddr,
298 rt = ip_route_output_key(tunnel->net, &fl4);
592 struct flowi4 fl4; local
611 ip_tunnel_init_flow(&fl4, proto, key->u.ipv4.dst, key->u.ipv4.src,
619 if (ip_tunnel_encap(skb, &tun_info->encap, &proto, &fl4) < 0)
624 rt = dst_cache_get_ip4(&tun_info->dst_cache, &fl4.saddr);
626 rt = ip_route_output_key(tunnel->net, &fl4);
633 fl4.saddr);
668 iptunnel_xmit(NULL, rt, skb, fl4
691 struct flowi4 fl4; local
[all...]
H A Dsyncookies.c407 struct flowi4 fl4; local
452 flowi4_init_output(&fl4, ireq->ir_iif, ireq->ir_mark,
457 security_req_classify_flow(req, flowi4_to_flowi_common(&fl4));
458 rt = ip_route_output_key(net, &fl4);
492 inet_sk(ret)->cork.fl.u.ip4 = fl4;
/linux-master/include/net/
H A Dflow.h93 static inline void flowi4_init_output(struct flowi4 *fl4, int oif, argument
100 fl4->flowi4_oif = oif;
101 fl4->flowi4_iif = LOOPBACK_IFINDEX;
102 fl4->flowi4_l3mdev = 0;
103 fl4->flowi4_mark = mark;
104 fl4->flowi4_tos = tos;
105 fl4->flowi4_scope = scope;
106 fl4->flowi4_proto = proto;
107 fl4->flowi4_flags = flags;
108 fl4
119 flowi4_update_output(struct flowi4 *fl4, int oif, __be32 daddr, __be32 saddr) argument
173 flowi4_to_flowi(struct flowi4 *fl4) argument
178 flowi4_to_flowi_common(struct flowi4 *fl4) argument
[all...]
H A Droute.h147 struct flowi4 fl4 = { local
153 return ip_route_output_key(net, &fl4);
156 static inline struct rtable *ip_route_output_ports(struct net *net, struct flowi4 *fl4, argument
162 flowi4_init_output(fl4, oif, sk ? READ_ONCE(sk->sk_mark) : 0, tos,
167 security_sk_classify_flow(sk, flowi4_to_flowi_common(fl4));
168 return ip_route_output_flow(net, fl4, sk);
171 static inline struct rtable *ip_route_output_gre(struct net *net, struct flowi4 *fl4, argument
175 memset(fl4, 0, sizeof(*fl4));
176 fl4
285 ip_route_connect_init(struct flowi4 *fl4, __be32 dst, __be32 src, int oif, u8 protocol, __be16 sport, __be16 dport, const struct sock *sk) argument
300 ip_route_connect(struct flowi4 *fl4, __be32 dst, __be32 src, int oif, u8 protocol, __be16 sport, __be16 dport, const struct sock *sk) argument
321 ip_route_newports(struct flowi4 *fl4, struct rtable *rt, __be16 orig_sport, __be16 orig_dport, __be16 sport, __be16 dport, const struct sock *sk) argument
[all...]
H A Dip_tunnels.h252 static inline void ip_tunnel_init_flow(struct flowi4 *fl4, argument
260 memset(fl4, 0, sizeof(*fl4));
263 fl4->flowi4_l3mdev = l3mdev_master_upper_ifindex_by_index_rcu(net, oif);
265 fl4->flowi4_oif = fl4->flowi4_l3mdev ? 0 : oif;
268 fl4->daddr = daddr;
269 fl4->saddr = saddr;
270 fl4->flowi4_tos = tos;
271 fl4
417 ip_tunnel_encap(struct sk_buff *skb, struct ip_tunnel_encap *e, u8 *protocol, struct flowi4 *fl4) argument
[all...]
/linux-master/drivers/net/
H A Dgtp.c238 static struct rtable *ip4_route_output_gtp(struct flowi4 *fl4, argument
242 memset(fl4, 0, sizeof(*fl4));
243 fl4->flowi4_oif = sk->sk_bound_dev_if;
244 fl4->daddr = daddr;
245 fl4->saddr = saddr;
246 fl4->flowi4_tos = ip_sock_rt_tos(sk);
247 fl4->flowi4_scope = ip_sock_rt_scope(sk);
248 fl4->flowi4_proto = sk->sk_protocol;
250 return ip_route_output_key(sock_net(sk), fl4);
300 struct flowi4 fl4; local
480 struct flowi4 fl4; local
764 struct flowi4 fl4; member in struct:gtp_pktinfo
785 gtp_set_pktinfo_ipv4(struct gtp_pktinfo *pktinfo, struct sock *sk, struct iphdr *iph, struct pdp_ctx *pctx, struct rtable *rt, struct flowi4 *fl4, struct net_device *dev) argument
805 struct flowi4 fl4; local
1720 struct flowi4 fl4; local
[all...]
/linux-master/drivers/net/ethernet/mellanox/mlx5/core/en/
H A Dtc_tun.c21 struct flowi4 fl4; member in union:mlx5e_tc_tun_route_attr::__anon34
124 attr->fl.fl4.flowi4_oif = uplink_dev->ifindex;
129 attr->fl.fl4.flowi4_oif = tunnel->get_remote_ifindex(dev);
132 rt = ip_route_output_key(dev_net(dev), &attr->fl.fl4);
156 n = dst_neigh_lookup(&rt->dst, &attr->fl.fl4.daddr);
239 attr.fl.fl4.flowi4_tos = tun_key->tos & ~INET_ECN_MASK;
240 attr.fl.fl4.daddr = tun_key->u.ipv4.dst;
241 attr.fl.fl4.saddr = tun_key->u.ipv4.src;
294 ip->daddr = attr.fl.fl4.daddr;
295 ip->saddr = attr.fl.fl4
[all...]
/linux-master/net/core/
H A Dlwt_bpf.c201 struct flowi4 fl4 = {}; local
204 fl4.flowi4_oif = oif;
205 fl4.flowi4_mark = skb->mark;
206 fl4.flowi4_uid = sock_net_uid(net, sk);
207 fl4.flowi4_tos = RT_TOS(iph->tos);
208 fl4.flowi4_flags = FLOWI_FLAG_ANYSRC;
209 fl4.flowi4_proto = iph->protocol;
210 fl4.daddr = iph->daddr;
211 fl4.saddr = iph->saddr;
213 rt = ip_route_output_key(net, &fl4);
[all...]
/linux-master/drivers/net/ppp/
H A Dpptp.c133 struct flowi4 *fl4)
139 flowi4_init_output(fl4, sk->sk_bound_dev_if, sk->sk_mark, 0,
144 security_sk_classify_flow(sk, flowi4_to_flowi_common(fl4));
146 return ip_route_output_flow(net, fl4, sk);
157 struct flowi4 fl4; local
172 rt = pptp_route_output(po, &fl4);
247 iph->daddr = fl4.daddr;
248 iph->saddr = fl4.saddr;
422 struct flowi4 fl4; local
455 rt = pptp_route_output(po, &fl4);
132 pptp_route_output(const struct pppox_sock *po, struct flowi4 *fl4) argument
[all...]
/linux-master/net/sctp/
H A Dprotocol.c287 static void sctp_v4_dst_saddr(union sctp_addr *saddr, struct flowi4 *fl4, argument
292 saddr->v4.sin_addr.s_addr = fl4->saddr;
423 struct flowi4 *fl4 = &_fl.u.ip4; local
434 fl4->daddr = daddr->v4.sin_addr.s_addr;
435 fl4->fl4_dport = daddr->v4.sin_port;
436 fl4->flowi4_proto = IPPROTO_SCTP;
438 fl4->flowi4_tos = RT_TOS(tos);
439 fl4->flowi4_scope = ip_sock_rt_scope(asoc->base.sk);
440 fl4->flowi4_oif = asoc->base.sk->sk_bound_dev_if;
441 fl4
1057 struct flowi4 *fl4 = &t->fl.u.ip4; local
[all...]
/linux-master/drivers/net/ethernet/chelsio/libcxgb/
H A Dlibcxgb_cm.c98 struct flowi4 fl4; local
101 rt = ip_route_output_ports(&init_net, &fl4, NULL, peer_ip, local_ip,
/linux-master/net/netfilter/
H A Dxt_TCPMSS.c52 struct flowi4 *fl4 = &fl.u.ip4; local
53 memset(fl4, 0, sizeof(*fl4));
54 fl4->daddr = ip_hdr(skb)->saddr;

Completed in 304 milliseconds

123