Home
last modified time | relevance | path

Searched refs:fl4 (Results 1 – 49 of 49) sorted by relevance

/linux-4.1.27/include/net/
Droute.h127 struct flowi4 fl4 = { in ip_route_output() local
133 return ip_route_output_key(net, &fl4); in ip_route_output()
136 static inline struct rtable *ip_route_output_ports(struct net *net, struct flowi4 *fl4, in ip_route_output_ports() argument
142 flowi4_init_output(fl4, oif, sk ? sk->sk_mark : 0, tos, in ip_route_output_ports()
147 security_sk_classify_flow(sk, flowi4_to_flowi(fl4)); in ip_route_output_ports()
148 return ip_route_output_flow(net, fl4, sk); in ip_route_output_ports()
151 static inline struct rtable *ip_route_output_gre(struct net *net, struct flowi4 *fl4, in ip_route_output_gre() argument
155 memset(fl4, 0, sizeof(*fl4)); in ip_route_output_gre()
156 fl4->flowi4_oif = oif; in ip_route_output_gre()
157 fl4->daddr = daddr; in ip_route_output_gre()
[all …]
Dflow.h84 static inline void flowi4_init_output(struct flowi4 *fl4, int oif, in flowi4_init_output() argument
90 fl4->flowi4_oif = oif; in flowi4_init_output()
91 fl4->flowi4_iif = LOOPBACK_IFINDEX; in flowi4_init_output()
92 fl4->flowi4_mark = mark; in flowi4_init_output()
93 fl4->flowi4_tos = tos; in flowi4_init_output()
94 fl4->flowi4_scope = scope; in flowi4_init_output()
95 fl4->flowi4_proto = proto; in flowi4_init_output()
96 fl4->flowi4_flags = flags; in flowi4_init_output()
97 fl4->flowi4_secid = 0; in flowi4_init_output()
98 fl4->daddr = daddr; in flowi4_init_output()
[all …]
Dfou.h15 u8 *protocol, struct flowi4 *fl4);
17 u8 *protocol, struct flowi4 *fl4);
Dip.h124 int ip_append_data(struct sock *sk, struct flowi4 *fl4,
133 ssize_t ip_append_page(struct sock *sk, struct flowi4 *fl4, struct page *page,
135 struct sk_buff *__ip_make_skb(struct sock *sk, struct flowi4 *fl4,
139 int ip_push_pending_frames(struct sock *sk, struct flowi4 *fl4);
141 struct sk_buff *ip_make_skb(struct sock *sk, struct flowi4 *fl4,
148 static inline struct sk_buff *ip_finish_skb(struct sock *sk, struct flowi4 *fl4) in ip_finish_skb() argument
150 return __ip_make_skb(sk, fl4, &sk->sk_write_queue, &inet_sk(sk)->cork.base); in ip_finish_skb()
Dip_tunnels.h126 u8 *protocol, struct flowi4 *fl4);
155 u8 *protocol, struct flowi4 *fl4);
Dinet_connection_sock.h269 struct dst_entry *inet_csk_route_req(struct sock *sk, struct flowi4 *fl4,
/linux-4.1.27/net/ipv4/
Dxfrm4_policy.c21 static struct dst_entry *__xfrm4_dst_lookup(struct net *net, struct flowi4 *fl4, in __xfrm4_dst_lookup() argument
28 memset(fl4, 0, sizeof(*fl4)); in __xfrm4_dst_lookup()
29 fl4->daddr = daddr->a4; in __xfrm4_dst_lookup()
30 fl4->flowi4_tos = tos; in __xfrm4_dst_lookup()
32 fl4->saddr = saddr->a4; in __xfrm4_dst_lookup()
34 rt = __ip_route_output_key(net, fl4); in __xfrm4_dst_lookup()
45 struct flowi4 fl4; in xfrm4_dst_lookup() local
47 return __xfrm4_dst_lookup(net, &fl4, tos, saddr, daddr); in xfrm4_dst_lookup()
54 struct flowi4 fl4; in xfrm4_get_saddr() local
56 dst = __xfrm4_dst_lookup(net, &fl4, 0, NULL, daddr); in xfrm4_get_saddr()
[all …]
Droute.c502 static void __build_flow_key(struct flowi4 *fl4, const struct sock *sk, in __build_flow_key() argument
515 flowi4_init_output(fl4, oif, mark, tos, in __build_flow_key()
521 static void build_skb_flow_key(struct flowi4 *fl4, const struct sk_buff *skb, in build_skb_flow_key() argument
530 __build_flow_key(fl4, sk, iph, oif, tos, prot, mark, 0); in build_skb_flow_key()
533 static void build_sk_flow_key(struct flowi4 *fl4, const struct sock *sk) in build_sk_flow_key() argument
543 flowi4_init_output(fl4, sk->sk_bound_dev_if, sk->sk_mark, in build_sk_flow_key()
551 static void ip_rt_build_flow_key(struct flowi4 *fl4, const struct sock *sk, in ip_rt_build_flow_key() argument
555 build_skb_flow_key(fl4, skb, sk); in ip_rt_build_flow_key()
557 build_sk_flow_key(fl4, sk); in ip_rt_build_flow_key()
703 static void __ip_do_redirect(struct rtable *rt, struct sk_buff *skb, struct flowi4 *fl4, in __ip_do_redirect() argument
[all …]
Dicmp.c289 struct flowi4 *fl4, int type, int code) in icmpv4_xrlim_allow() argument
313 peer = inet_getpeer_v4(net->ipv4.peers, fl4->daddr, 1); in icmpv4_xrlim_allow()
353 struct flowi4 *fl4, in icmp_push_reply() argument
360 if (ip_append_data(sk, fl4, icmp_glue_bits, icmp_param, in icmp_push_reply()
379 ip_push_pending_frames(sk, fl4); in icmp_push_reply()
392 struct flowi4 fl4; in icmp_reply() local
422 memset(&fl4, 0, sizeof(fl4)); in icmp_reply()
423 fl4.daddr = daddr; in icmp_reply()
424 fl4.saddr = saddr; in icmp_reply()
425 fl4.flowi4_mark = mark; in icmp_reply()
[all …]
Ddatagram.c27 struct flowi4 *fl4; in __ip4_datagram_connect() local
50 fl4 = &inet->cork.fl.u.ip4; in __ip4_datagram_connect()
51 rt = ip_route_connect(fl4, usin->sin_addr.s_addr, saddr, in __ip4_datagram_connect()
68 inet->inet_saddr = fl4->saddr; /* Update source address */ in __ip4_datagram_connect()
70 inet->inet_rcv_saddr = fl4->saddr; in __ip4_datagram_connect()
74 inet->inet_daddr = fl4->daddr; in __ip4_datagram_connect()
108 struct flowi4 fl4; in ip4_datagram_release_cb() local
121 rt = ip_route_output_ports(sock_net(sk), &fl4, sk, daddr, in ip4_datagram_release_cb()
Dnetfilter.c25 struct flowi4 fl4 = {}; in ip_route_me_harder() local
40 fl4.daddr = iph->daddr; in ip_route_me_harder()
41 fl4.saddr = saddr; in ip_route_me_harder()
42 fl4.flowi4_tos = RT_TOS(iph->tos); in ip_route_me_harder()
43 fl4.flowi4_oif = skb->sk ? skb->sk->sk_bound_dev_if : 0; in ip_route_me_harder()
44 fl4.flowi4_mark = skb->mark; in ip_route_me_harder()
45 fl4.flowi4_flags = flags; in ip_route_me_harder()
46 rt = ip_route_output_key(net, &fl4); in ip_route_me_harder()
59 xfrm_decode_session(skb, flowi4_to_flowi(&fl4), AF_INET) == 0) { in ip_route_me_harder()
62 dst = xfrm_lookup(net, dst, flowi4_to_flowi(&fl4), skb->sk, 0); in ip_route_me_harder()
Dxfrm4_state.c27 const struct flowi4 *fl4 = &fl->u.ip4; in __xfrm4_init_tempsel() local
29 sel->daddr.a4 = fl4->daddr; in __xfrm4_init_tempsel()
30 sel->saddr.a4 = fl4->saddr; in __xfrm4_init_tempsel()
31 sel->dport = xfrm_flowi_dport(fl, &fl4->uli); in __xfrm4_init_tempsel()
33 sel->sport = xfrm_flowi_sport(fl, &fl4->uli); in __xfrm4_init_tempsel()
38 sel->proto = fl4->flowi4_proto; in __xfrm4_init_tempsel()
39 sel->ifindex = fl4->flowi4_oif; in __xfrm4_init_tempsel()
Dip_output.c361 static void ip_copy_addrs(struct iphdr *iph, const struct flowi4 *fl4) in ip_copy_addrs() argument
363 BUILD_BUG_ON(offsetof(typeof(*fl4), daddr) != in ip_copy_addrs()
364 offsetof(typeof(*fl4), saddr) + sizeof(fl4->saddr)); in ip_copy_addrs()
365 memcpy(&iph->saddr, &fl4->saddr, in ip_copy_addrs()
366 sizeof(fl4->saddr) + sizeof(fl4->daddr)); in ip_copy_addrs()
374 struct flowi4 *fl4; in ip_queue_xmit() local
384 fl4 = &fl->u.ip4; in ip_queue_xmit()
403 rt = ip_route_output_ports(sock_net(sk), fl4, sk, in ip_queue_xmit()
431 ip_copy_addrs(iph, fl4); in ip_queue_xmit()
839 struct flowi4 *fl4, in __ip_append_data() argument
[all …]
Dfib_frontend.c216 struct flowi4 fl4 = { .daddr = addr }; in __inet_dev_addr_type() local
231 if (!fib_table_lookup(local_table, &fl4, &res, FIB_LOOKUP_NOREF)) { in __inet_dev_addr_type()
260 struct flowi4 fl4; in fib_compute_spec_dst() local
276 fl4.flowi4_oif = 0; in fib_compute_spec_dst()
277 fl4.flowi4_iif = LOOPBACK_IFINDEX; in fib_compute_spec_dst()
278 fl4.daddr = ip_hdr(skb)->saddr; in fib_compute_spec_dst()
279 fl4.saddr = 0; in fib_compute_spec_dst()
280 fl4.flowi4_tos = RT_TOS(ip_hdr(skb)->tos); in fib_compute_spec_dst()
281 fl4.flowi4_scope = scope; in fib_compute_spec_dst()
282 fl4.flowi4_mark = IN_DEV_SRC_VMARK(in_dev) ? skb->mark : 0; in fib_compute_spec_dst()
[all …]
Dip_tunnel.c341 static inline void init_tunnel_flow(struct flowi4 *fl4, in init_tunnel_flow() argument
346 memset(fl4, 0, sizeof(*fl4)); in init_tunnel_flow()
347 fl4->flowi4_oif = oif; in init_tunnel_flow()
348 fl4->daddr = daddr; in init_tunnel_flow()
349 fl4->saddr = saddr; in init_tunnel_flow()
350 fl4->flowi4_tos = tos; in init_tunnel_flow()
351 fl4->flowi4_proto = proto; in init_tunnel_flow()
352 fl4->fl4_gre_key = key; in init_tunnel_flow()
368 struct flowi4 fl4; in ip_tunnel_bind_dev() local
371 init_tunnel_flow(&fl4, iph->protocol, iph->daddr, in ip_tunnel_bind_dev()
[all …]
Draw.c338 static int raw_send_hdrinc(struct sock *sk, struct flowi4 *fl4, in raw_send_hdrinc() argument
353 ip_local_error(sk, EMSGSIZE, fl4->daddr, inet->inet_dport, in raw_send_hdrinc()
402 iph->saddr = fl4->saddr; in raw_send_hdrinc()
432 static int raw_probe_proto_opt(struct raw_frag_vec *rfv, struct flowi4 *fl4) in raw_probe_proto_opt() argument
436 if (fl4->flowi4_proto != IPPROTO_ICMP) in raw_probe_proto_opt()
446 fl4->fl4_icmp_type = rfv->hdr.icmph.type; in raw_probe_proto_opt()
447 fl4->fl4_icmp_code = rfv->hdr.icmph.code; in raw_probe_proto_opt()
488 struct flowi4 fl4; in raw_sendmsg() local
595 flowi4_init_output(&fl4, ipc.oif, sk->sk_mark, tos, in raw_sendmsg()
606 err = raw_probe_proto_opt(&rfv, &fl4); in raw_sendmsg()
[all …]
Dinet_connection_sock.c403 struct flowi4 *fl4, in inet_csk_route_req() argument
411 flowi4_init_output(fl4, ireq->ir_iif, ireq->ir_mark, in inet_csk_route_req()
417 security_req_classify_flow(req, flowi4_to_flowi(fl4)); in inet_csk_route_req()
418 rt = ip_route_output_flow(net, fl4, sk); in inet_csk_route_req()
441 struct flowi4 *fl4; in inet_csk_route_child_sock() local
444 fl4 = &newinet->cork.fl.u.ip4; in inet_csk_route_child_sock()
448 flowi4_init_output(fl4, ireq->ir_iif, ireq->ir_mark, in inet_csk_route_child_sock()
454 security_req_classify_flow(req, flowi4_to_flowi(fl4)); in inet_csk_route_child_sock()
455 rt = ip_route_output_flow(net, fl4, sk); in inet_csk_route_child_sock()
940 struct flowi4 *fl4; in inet_csk_rebuild_route() local
[all …]
Dsyncookies.c305 struct flowi4 fl4; in cookie_v4_check() local
371 flowi4_init_output(&fl4, sk->sk_bound_dev_if, ireq->ir_mark, in cookie_v4_check()
376 security_req_classify_flow(req, flowi4_to_flowi(&fl4)); in cookie_v4_check()
377 rt = ip_route_output_key(sock_net(sk), &fl4); in cookie_v4_check()
399 inet_sk(ret)->cork.fl.u.ip4 = fl4; in cookie_v4_check()
Dudp.c796 static int udp_send_skb(struct sk_buff *skb, struct flowi4 *fl4) in udp_send_skb() argument
812 uh->dest = fl4->fl4_dport; in udp_send_skb()
826 udp4_hwcsum(skb, fl4->saddr, fl4->daddr); in udp_send_skb()
833 uh->check = csum_tcpudp_magic(fl4->saddr, fl4->daddr, len, in udp_send_skb()
859 struct flowi4 *fl4 = &inet->cork.fl.u.ip4; in udp_push_pending_frames() local
863 skb = ip_finish_skb(sk, fl4); in udp_push_pending_frames()
867 err = udp_send_skb(skb, fl4); in udp_push_pending_frames()
881 struct flowi4 *fl4; in udp_sendmsg() local
913 fl4 = &inet->cork.fl.u.ip4; in udp_sendmsg()
1019 fl4 = &fl4_stack; in udp_sendmsg()
[all …]
Dfib_rules.c137 struct flowi4 *fl4 = &fl->u.ip4; in fib4_rule_match() local
138 __be32 daddr = fl4->daddr; in fib4_rule_match()
139 __be32 saddr = fl4->saddr; in fib4_rule_match()
145 if (r->tos && (r->tos != fl4->flowi4_tos)) in fib4_rule_match()
Dfou.c769 struct flowi4 *fl4, u8 *protocol, __be16 sport) in fou_build_udp() argument
783 fl4->saddr, fl4->daddr, skb->len); in fou_build_udp()
789 u8 *protocol, struct flowi4 *fl4) in fou_build_header() argument
802 fou_build_udp(skb, e, fl4, protocol, sport); in fou_build_header()
809 u8 *protocol, struct flowi4 *fl4) in gue_build_header() argument
881 fou_build_udp(skb, e, fl4, protocol, sport); in gue_build_header()
Dping.c643 struct flowi4 *fl4) in ping_v4_push_pending_frames() argument
652 return ip_push_pending_frames(sk, fl4); in ping_v4_push_pending_frames()
699 struct flowi4 fl4; in ping_v4_sendmsg() local
791 flowi4_init_output(&fl4, ipc.oif, sk->sk_mark, tos, in ping_v4_sendmsg()
795 security_sk_classify_flow(sk, flowi4_to_flowi(&fl4)); in ping_v4_sendmsg()
796 rt = ip_route_output_flow(net, &fl4, sk); in ping_v4_sendmsg()
815 ipc.addr = fl4.daddr; in ping_v4_sendmsg()
828 err = ip_append_data(sk, &fl4, ping_getfrag, &pfh, len, in ping_v4_sendmsg()
833 err = ping_v4_push_pending_frames(sk, &pfh, &fl4); in ping_v4_sendmsg()
Daf_inet.c1110 struct flowi4 *fl4; in inet_sk_reselect_saddr() local
1121 fl4 = &inet->cork.fl.u.ip4; in inet_sk_reselect_saddr()
1122 rt = ip_route_connect(fl4, daddr, 0, RT_CONN_FLAGS(sk), in inet_sk_reselect_saddr()
1130 new_saddr = fl4->saddr; in inet_sk_reselect_saddr()
1160 struct flowi4 *fl4; in inet_sk_rebuild_header() local
1174 fl4 = &inet->cork.fl.u.ip4; in inet_sk_rebuild_header()
1175 rt = ip_route_output_ports(sock_net(sk), fl4, sk, daddr, inet->inet_saddr, in inet_sk_rebuild_header()
Dtcp_ipv4.c148 struct flowi4 *fl4; in tcp_v4_connect() local
170 fl4 = &inet->cork.fl.u.ip4; in tcp_v4_connect()
171 rt = ip_route_connect(fl4, nexthop, inet->inet_saddr, in tcp_v4_connect()
188 daddr = fl4->daddr; in tcp_v4_connect()
191 inet->inet_saddr = fl4->saddr; in tcp_v4_connect()
203 !tp->rx_opt.ts_recent_stamp && fl4->daddr == daddr) in tcp_v4_connect()
227 rt = ip_route_newports(fl4, rt, orig_sport, orig_dport, in tcp_v4_connect()
831 struct flowi4 fl4; in tcp_v4_send_synack() local
836 if (!dst && (dst = inet_csk_route_req(sk, &fl4, req)) == NULL) in tcp_v4_send_synack()
Dfib_semantics.c614 struct flowi4 fl4 = { in fib_check_nh() local
622 if (fl4.flowi4_scope < RT_SCOPE_LINK) in fib_check_nh()
623 fl4.flowi4_scope = RT_SCOPE_LINK; in fib_check_nh()
624 err = fib_lookup(net, &fl4, &res); in fib_check_nh()
Digmp.c329 struct flowi4 fl4; in igmpv3_newpack() local
345 rt = ip_route_output_ports(net, &fl4, NULL, IGMPV3_ALL_MCR, 0, in igmpv3_newpack()
369 pip->daddr = fl4.daddr; in igmpv3_newpack()
370 pip->saddr = fl4.saddr; in igmpv3_newpack()
675 struct flowi4 fl4; in igmp_send_report() local
686 rt = ip_route_output_ports(net, &fl4, NULL, dst, 0, in igmp_send_report()
715 iph->saddr = fl4.saddr; in igmp_send_report()
Dipmr.c459 struct flowi4 fl4 = { in reg_vif_xmit() local
466 err = ipmr_fib_lookup(net, &fl4, &mrt); in reg_vif_xmit()
1707 struct flowi4 fl4; in ipmr_queue_xmit() local
1725 rt = ip_route_output_ports(net, &fl4, NULL, in ipmr_queue_xmit()
1734 rt = ip_route_output_ports(net, &fl4, NULL, iph->daddr, 0, in ipmr_queue_xmit()
1935 struct flowi4 fl4 = { in ipmr_rt_fib_lookup() local
1949 err = ipmr_fib_lookup(net, &fl4, &mrt); in ipmr_rt_fib_lookup()
Dip_gre.c413 struct flowi4 fl4; in ipgre_open() local
416 rt = ip_route_output_gre(t->net, &fl4, in ipgre_open()
Ddevinet.c157 struct flowi4 fl4 = { .daddr = addr }; in __ip_dev_find() local
166 !fib_table_lookup(local, &fl4, &res, FIB_LOOKUP_NOREF) && in __ip_dev_find()
/linux-4.1.27/net/netfilter/
Dxt_TEE.c62 struct flowi4 fl4; in tee_tg_route4() local
64 memset(&fl4, 0, sizeof(fl4)); in tee_tg_route4()
68 fl4.flowi4_oif = info->priv->oif; in tee_tg_route4()
70 fl4.daddr = info->gw.ip; in tee_tg_route4()
71 fl4.flowi4_tos = RT_TOS(iph->tos); in tee_tg_route4()
72 fl4.flowi4_scope = RT_SCOPE_UNIVERSE; in tee_tg_route4()
73 fl4.flowi4_flags = FLOWI_FLAG_KNOWN_NH; in tee_tg_route4()
74 rt = ip_route_output_key(net, &fl4); in tee_tg_route4()
Dxt_TCPMSS.c56 struct flowi4 *fl4 = &fl.u.ip4; in tcpmss_reverse_mtu() local
57 memset(fl4, 0, sizeof(*fl4)); in tcpmss_reverse_mtu()
58 fl4->daddr = ip_hdr(skb)->saddr; in tcpmss_reverse_mtu()
/linux-4.1.27/net/sctp/
Dprotocol.c299 static void sctp_v4_dst_saddr(union sctp_addr *saddr, struct flowi4 *fl4, in sctp_v4_dst_saddr() argument
304 saddr->v4.sin_addr.s_addr = fl4->saddr; in sctp_v4_dst_saddr()
428 struct flowi4 *fl4 = &fl->u.ip4; in sctp_v4_get_dst() local
435 memset(fl4, 0x0, sizeof(struct flowi4)); in sctp_v4_get_dst()
436 fl4->daddr = daddr->v4.sin_addr.s_addr; in sctp_v4_get_dst()
437 fl4->fl4_dport = daddr->v4.sin_port; in sctp_v4_get_dst()
438 fl4->flowi4_proto = IPPROTO_SCTP; in sctp_v4_get_dst()
440 fl4->flowi4_tos = RT_CONN_FLAGS(asoc->base.sk); in sctp_v4_get_dst()
441 fl4->flowi4_oif = asoc->base.sk->sk_bound_dev_if; in sctp_v4_get_dst()
442 fl4->fl4_sport = htons(asoc->base.bind_addr.port); in sctp_v4_get_dst()
[all …]
/linux-4.1.27/drivers/infiniband/core/
Daddr.c232 struct flowi4 fl4; in addr4_resolve() local
235 memset(&fl4, 0, sizeof(fl4)); in addr4_resolve()
236 fl4.daddr = dst_ip; in addr4_resolve()
237 fl4.saddr = src_ip; in addr4_resolve()
238 fl4.flowi4_oif = addr->bound_dev_if; in addr4_resolve()
239 rt = ip_route_output_key(&init_net, &fl4); in addr4_resolve()
245 src_in->sin_addr.s_addr = fl4.saddr; in addr4_resolve()
260 ret = dst_fetch_ha(&rt->dst, addr, &fl4.daddr); in addr4_resolve()
/linux-4.1.27/net/dccp/
Dipv4.c49 struct flowi4 *fl4; in dccp_v4_connect() local
74 fl4 = &inet->cork.fl.u.ip4; in dccp_v4_connect()
75 rt = ip_route_connect(fl4, nexthop, inet->inet_saddr, in dccp_v4_connect()
88 daddr = fl4->daddr; in dccp_v4_connect()
91 inet->inet_saddr = fl4->saddr; in dccp_v4_connect()
110 rt = ip_route_newports(fl4, rt, orig_sport, orig_dport, in dccp_v4_connect()
481 struct flowi4 fl4 = { in dccp_v4_route_skb() local
491 security_skb_classify_flow(skb, flowi4_to_flowi(&fl4)); in dccp_v4_route_skb()
492 rt = ip_route_output_flow(net, &fl4, sk); in dccp_v4_route_skb()
506 struct flowi4 fl4; in dccp_v4_send_response() local
[all …]
/linux-4.1.27/net/netfilter/ipvs/
Dip_vs_xmit.c127 struct flowi4 fl4; in do_output_route4() local
131 memset(&fl4, 0, sizeof(fl4)); in do_output_route4()
132 fl4.daddr = daddr; in do_output_route4()
133 fl4.flowi4_flags = (rt_mode & IP_VS_RT_MODE_KNOWN_NH) ? in do_output_route4()
137 rt = ip_route_output_key(net, &fl4); in do_output_route4()
143 flowi4_update_output(&fl4, 0, 0, daddr, 0); in do_output_route4()
148 } else if (!*saddr && rt_mode & IP_VS_RT_MODE_CONNECT && fl4.saddr) { in do_output_route4()
150 *saddr = fl4.saddr; in do_output_route4()
151 flowi4_update_output(&fl4, 0, 0, daddr, fl4.saddr); in do_output_route4()
155 *saddr = fl4.saddr; in do_output_route4()
/linux-4.1.27/net/ipv4/netfilter/
Dipt_rpfilter.c35 static bool rpfilter_lookup_reverse(struct flowi4 *fl4, in rpfilter_lookup_reverse() argument
43 if (fib_lookup(net, fl4, &res)) in rpfilter_lookup_reverse()
Dnf_nat_l3proto_ipv4.c39 struct flowi4 *fl4 = &fl->u.ip4; in nf_nat_ipv4_decode_session() local
42 fl4->daddr = t->dst.u3.ip; in nf_nat_ipv4_decode_session()
48 fl4->fl4_dport = t->dst.u.all; in nf_nat_ipv4_decode_session()
54 fl4->saddr = t->src.u3.ip; in nf_nat_ipv4_decode_session()
60 fl4->fl4_sport = t->src.u.all; in nf_nat_ipv4_decode_session()
/linux-4.1.27/drivers/net/ppp/
Dpptp.c180 struct flowi4 fl4; in pptp_xmit() local
195 rt = ip_route_output_ports(sock_net(sk), &fl4, NULL, in pptp_xmit()
276 iph->daddr = fl4.daddr; in pptp_xmit()
277 iph->saddr = fl4.saddr; in pptp_xmit()
458 struct flowi4 fl4; in pptp_connect() local
491 rt = ip_route_output_ports(sock_net(sk), &fl4, sk, in pptp_connect()
/linux-4.1.27/net/rxrpc/
Dar-peer.c39 struct flowi4 fl4; in rxrpc_assess_MTU_size() local
43 rt = ip_route_output_ports(&init_net, &fl4, NULL, in rxrpc_assess_MTU_size()
/linux-4.1.27/net/l2tp/
Dl2tp_ip.c394 struct flowi4 *fl4; in l2tp_ip_sendmsg() local
450 fl4 = &inet->cork.fl.u.ip4; in l2tp_ip_sendmsg()
468 rt = ip_route_output_ports(sock_net(sk), fl4, sk, in l2tp_ip_sendmsg()
/linux-4.1.27/net/ipv6/
Dsit.c818 struct flowi4 fl4; in ipip6_tunnel_xmit() local
893 rt = ip_route_output_ports(tunnel->net, &fl4, NULL, in ipip6_tunnel_xmit()
979 if (ip_tunnel_encap(skb, tunnel, &protocol, &fl4) < 0) { in ipip6_tunnel_xmit()
986 err = iptunnel_xmit(NULL, rt, skb, fl4.saddr, fl4.daddr, in ipip6_tunnel_xmit()
1047 struct flowi4 fl4; in ipip6_tunnel_bind_dev() local
1053 struct rtable *rt = ip_route_output_ports(tunnel->net, &fl4, in ipip6_tunnel_bind_dev()
Dip6_tunnel.c579 struct flowi4 fl4; in ip4ip6_err() local
623 rt = ip_route_output_ports(dev_net(skb->dev), &fl4, NULL, in ip4ip6_err()
636 rt = ip_route_output_ports(dev_net(skb->dev), &fl4, NULL, in ip4ip6_err()
/linux-4.1.27/drivers/net/ethernet/sun/
Dsunvnet.c1280 struct flowi4 fl4; in vnet_start_xmit() local
1283 memset(&fl4, 0, sizeof(fl4)); in vnet_start_xmit()
1284 fl4.flowi4_oif = dev->ifindex; in vnet_start_xmit()
1285 fl4.flowi4_tos = RT_TOS(ip_hdr(skb)->tos); in vnet_start_xmit()
1286 fl4.daddr = ip_hdr(skb)->daddr; in vnet_start_xmit()
1287 fl4.saddr = ip_hdr(skb)->saddr; in vnet_start_xmit()
1289 rt = ip_route_output_key(dev_net(dev), &fl4); in vnet_start_xmit()
/linux-4.1.27/drivers/net/ipvlan/
Dipvlan_core.c344 struct flowi4 fl4 = { in ipvlan_process_v4_outbound() local
352 rt = ip_route_output_flow(dev_net(dev), &fl4, NULL); in ipvlan_process_v4_outbound()
/linux-4.1.27/drivers/net/
Dvxlan.c1885 struct flowi4 fl4; in vxlan_xmit_one() local
1921 memset(&fl4, 0, sizeof(fl4)); in vxlan_xmit_one()
1922 fl4.flowi4_oif = rdst->remote_ifindex; in vxlan_xmit_one()
1923 fl4.flowi4_tos = RT_TOS(tos); in vxlan_xmit_one()
1924 fl4.daddr = dst->sin.sin_addr.s_addr; in vxlan_xmit_one()
1925 fl4.saddr = vxlan->saddr.sin.sin_addr.s_addr; in vxlan_xmit_one()
1927 rt = ip_route_output_key(vxlan->net, &fl4); in vxlan_xmit_one()
1962 err = vxlan_xmit_skb(rt, sk, skb, fl4.saddr, in vxlan_xmit_one()
/linux-4.1.27/net/xfrm/
Dxfrm_policy.c65 const struct flowi4 *fl4 = &fl->u.ip4; in __xfrm4_selector_match() local
67 return addr4_match(fl4->daddr, sel->daddr.a4, sel->prefixlen_d) && in __xfrm4_selector_match()
68 addr4_match(fl4->saddr, sel->saddr.a4, sel->prefixlen_s) && in __xfrm4_selector_match()
69 !((xfrm_flowi_dport(fl, &fl4->uli) ^ sel->dport) & sel->dport_mask) && in __xfrm4_selector_match()
70 !((xfrm_flowi_sport(fl, &fl4->uli) ^ sel->sport) & sel->sport_mask) && in __xfrm4_selector_match()
71 (fl4->flowi4_proto == sel->proto || !sel->proto) && in __xfrm4_selector_match()
72 (fl4->flowi4_oif == sel->ifindex || !sel->ifindex); in __xfrm4_selector_match()
/linux-4.1.27/drivers/scsi/cxgbi/
Dlibcxgbi.c579 static struct rtable *find_route_ipv4(struct flowi4 *fl4, in find_route_ipv4() argument
585 rt = ip_route_output_ports(&init_net, fl4, NULL, daddr, saddr, in find_route_ipv4()
601 struct flowi4 fl4; in cxgbi_check_route() local
607 rt = find_route_ipv4(&fl4, 0, daddr->sin_addr.s_addr, 0, daddr->sin_port, 0); in cxgbi_check_route()
665 csk->saddr.sin_addr.s_addr = fl4.saddr; in cxgbi_check_route()
/linux-4.1.27/drivers/infiniband/hw/cxgb3/
Diwch_cm.c340 struct flowi4 fl4; in find_route() local
342 rt = ip_route_output_ports(&init_net, &fl4, NULL, peer_ip, local_ip, in find_route()
/linux-4.1.27/drivers/infiniband/hw/cxgb4/
Dcm.c407 struct flowi4 fl4; in find_route() local
410 rt = ip_route_output_ports(&init_net, &fl4, NULL, peer_ip, local_ip, in find_route()