/linux-master/drivers/infiniband/core/ |
H A D | addr.c | 396 struct flowi4 fl4; local 399 memset(&fl4, 0, sizeof(fl4)); 400 fl4.daddr = dst_ip; 401 fl4.saddr = src_ip; 402 fl4.flowi4_oif = addr->bound_dev_if; 403 rt = ip_route_output_key(addr->net, &fl4); 408 src_in->sin_addr.s_addr = fl4.saddr;
|
H A D | cma.c | 1575 struct flowi4 fl4; local 1585 memset(&fl4, 0, sizeof(fl4)); 1586 fl4.flowi4_oif = net_dev->ifindex; 1587 fl4.daddr = daddr; 1588 fl4.saddr = saddr; 1591 err = fib_lookup(dev_net(net_dev), &fl4, &res, 0);
|
/linux-master/drivers/net/ |
H A D | amt.c | 620 struct flowi4 fl4; local 632 rt = ip_route_output_ports(amt->net, &fl4, sock->sk, 709 struct flowi4 fl4; local 721 rt = ip_route_output_ports(amt->net, &fl4, sock->sk, 1003 struct flowi4 fl4; local 1017 memset(&fl4, 0, sizeof(struct flowi4)); 1018 fl4.flowi4_oif = amt->stream_dev->ifindex; 1019 fl4.daddr = amt->remote_ip; 1020 fl4.saddr = amt->local_ip; 1021 fl4 1063 struct flowi4 fl4; local 1117 struct flowi4 fl4; local 2557 struct flowi4 fl4; local [all...] |
H A D | geneve.c | 1574 struct flowi4 fl4 = { .daddr = info->key.u.ipv4.dst }; local 1575 struct rtable *rt = ip_route_output_key(geneve->net, &fl4);
|
H A D | gtp.c | 238 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 1721 struct flowi4 fl4; local [all...] |
H A D | vrf.c | 532 struct flowi4 fl4; local 541 memset(&fl4, 0, sizeof(fl4)); 543 fl4.flowi4_l3mdev = vrf_dev->ifindex; 544 fl4.flowi4_iif = LOOPBACK_IFINDEX; 545 fl4.flowi4_tos = RT_TOS(ip4h->tos); 546 fl4.flowi4_flags = FLOWI_FLAG_ANYSRC; 547 fl4.flowi4_proto = ip4h->protocol; 548 fl4.daddr = ip4h->daddr; 549 fl4 [all...] |
/linux-master/drivers/net/ethernet/chelsio/libcxgb/ |
H A D | libcxgb_cm.c | 98 struct flowi4 fl4; local 101 rt = ip_route_output_ports(&init_net, &fl4, NULL, peer_ip, local_ip,
|
/linux-master/drivers/net/ethernet/marvell/prestera/ |
H A D | prestera_router.c | 250 struct flowi4 fl4; local 255 memset(&fl4, 0, sizeof(fl4)); 256 fl4.daddr = *addr; 257 return fib_lookup(&init_net, &fl4, res, 0 /* FIB_LOOKUP_NOREF */);
|
/linux-master/drivers/net/ethernet/mellanox/mlx5/core/en/ |
H A D | tc_tun.c | 21 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/drivers/net/ethernet/mellanox/mlxsw/ |
H A D | spectrum_span.c | 419 struct flowi4 fl4; local 425 ip_tunnel_init_flow(&fl4, parms.iph.protocol, *daddrp, *saddrp, 429 rt = ip_route_output_key(tun->net, &fl4); 437 *saddrp = fl4.saddr;
|
/linux-master/drivers/net/ipvlan/ |
H A D | ipvlan_core.c | 421 struct flowi4 fl4 = { local 430 rt = ip_route_output_flow(net, &fl4, NULL);
|
/linux-master/drivers/net/ppp/ |
H A D | pptp.c | 133 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/drivers/scsi/cxgbi/ |
H A D | libcxgbi.c | 588 static struct rtable *find_route_ipv4(struct flowi4 *fl4, argument 595 rt = ip_route_output_ports(&init_net, fl4, NULL, daddr, saddr, 612 struct flowi4 fl4; local 618 rt = find_route_ipv4(&fl4, 0, daddr->sin_addr.s_addr, 0, 689 csk->saddr.sin_addr.s_addr = fl4.saddr;
|
/linux-master/include/net/ |
H A D | flow.h | 93 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 D | inet_connection_sock.h | 260 struct dst_entry *inet_csk_route_req(const struct sock *sk, struct flowi4 *fl4,
|
H A D | ip.h | 217 int ip_append_data(struct sock *sk, struct flowi4 *fl4, 226 struct sk_buff *__ip_make_skb(struct sock *sk, struct flowi4 *fl4, 230 int ip_push_pending_frames(struct sock *sk, struct flowi4 *fl4); 232 struct sk_buff *ip_make_skb(struct sock *sk, struct flowi4 *fl4, 241 static inline struct sk_buff *ip_finish_skb(struct sock *sk, struct flowi4 *fl4) argument 243 return __ip_make_skb(sk, fl4, &sk->sk_write_queue, &inet_sk(sk)->cork.base);
|
H A D | ip_fib.h | 354 struct flowi4 *fl4, 415 struct flowi4 *fl4, 427 fl4->fl4_sport = flkeys->ports.src; 428 fl4->fl4_dport = flkeys->ports.dst; 429 fl4->flowi4_proto = flkeys->basic.ip_proto; 521 int fib_multipath_hash(const struct net *net, const struct flowi4 *fl4, 528 struct flowi4 *fl4, const struct sk_buff *skb); 352 fib4_rules_early_flow_dissect(struct net *net, struct sk_buff *skb, struct flowi4 *fl4, struct flow_keys *flkeys) argument 413 fib4_rules_early_flow_dissect(struct net *net, struct sk_buff *skb, struct flowi4 *fl4, struct flow_keys *flkeys) argument
|
H A D | ip_tunnels.h | 252 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...] |
H A D | route.h | 147 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...] |
/linux-master/net/core/ |
H A D | filter.c | 2357 struct flowi4 fl4 = { local 2368 rt = ip_route_output_flow(net, &fl4, NULL); 5862 struct flowi4 fl4; local 5876 fl4.flowi4_iif = 1; 5877 fl4.flowi4_oif = params->ifindex; 5879 fl4.flowi4_iif = params->ifindex; 5880 fl4.flowi4_oif = 0; 5882 fl4.flowi4_tos = params->tos & IPTOS_RT_MASK; 5883 fl4.flowi4_scope = RT_SCOPE_UNIVERSE; 5884 fl4 [all...] |
H A D | lwt_bpf.c | 201 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/net/dccp/ |
H A D | ipv4.c | 52 struct flowi4 *fl4; local 77 fl4 = &inet->cork.fl.u.ip4; 78 rt = ip_route_connect(fl4, nexthop, inet->inet_saddr, 90 daddr = fl4->daddr; 93 err = inet_bhash2_update_saddr(sk, &fl4->saddr, AF_INET); 119 rt = ip_route_newports(fl4, rt, orig_sport, orig_dport, 471 struct flowi4 fl4 = { local 482 security_skb_classify_flow(skb, flowi4_to_flowi_common(&fl4)); 483 rt = ip_route_output_flow(net, &fl4, sk); 497 struct flowi4 fl4; local [all...] |
/linux-master/net/ipv4/ |
H A D | af_inet.c | 1257 struct flowi4 *fl4; local 1269 fl4 = &inet->cork.fl.u.ip4; 1270 rt = ip_route_connect(fl4, daddr, 0, sk->sk_bound_dev_if, 1276 new_saddr = fl4->saddr; 1313 struct flowi4 *fl4; local 1327 fl4 = &inet->cork.fl.u.ip4; 1328 rt = ip_route_output_ports(sock_net(sk), fl4, sk, daddr, inet->inet_saddr,
|
H A D | datagram.c | 23 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 D | devinet.c | 161 struct flowi4 fl4 = { .daddr = addr }; local 170 !fib_table_lookup(local, &fl4, &res, FIB_LOOKUP_NOREF) &&
|