Home
last modified time | relevance | path

Searched refs:fl6 (Results 1 – 25 of 79) sorted by relevance

1234

/openbmc/linux/net/ipv6/
H A Dinet6_connection_sock.c28 struct flowi6 *fl6, in inet6_csk_route_req() argument
37 memset(fl6, 0, sizeof(*fl6)); in inet6_csk_route_req()
38 fl6->flowi6_proto = proto; in inet6_csk_route_req()
48 fl6->flowi6_uid = sk->sk_uid; in inet6_csk_route_req()
80 struct flowi6 *fl6) in inet6_csk_route_socket() argument
87 memset(fl6, 0, sizeof(*fl6)); in inet6_csk_route_socket()
89 fl6->daddr = sk->sk_v6_daddr; in inet6_csk_route_socket()
90 fl6->saddr = np->saddr; in inet6_csk_route_socket()
117 struct flowi6 fl6; in inet6_csk_xmit() local
133 fl6.daddr = sk->sk_v6_daddr; in inet6_csk_xmit()
[all …]
H A Dicmp.c457 struct flowi6 fl6; in icmp6_send() local
549 memset(&fl6, 0, sizeof(fl6)); in icmp6_send()
555 fl6.saddr = *saddr; in icmp6_send()
564 &fl6.saddr); in icmp6_send()
573 fl6.mp_hash = rt6_multipath_hash(net, &fl6, skb, NULL); in icmp6_send()
586 if (!fl6.flowi6_oif && ipv6_addr_is_multicast(&fl6.daddr)) in icmp6_send()
593 fl6.flowlabel = ip6_make_flowinfo(ipc6.tclass, fl6.flowlabel); in icmp6_send()
721 struct flowi6 fl6; in icmpv6_echo_reply() local
752 memset(&fl6, 0, sizeof(fl6)); in icmpv6_echo_reply()
772 if (!fl6.flowi6_oif && ipv6_addr_is_multicast(&fl6.daddr)) in icmpv6_echo_reply()
[all …]
H A Dping.c70 struct flowi6 fl6; in ping_v6_sendmsg() local
82 memset(&fl6, 0, sizeof(fl6)); in ping_v6_sendmsg()
100 fl6.flowlabel = np->flow_label; in ping_v6_sendmsg()
125 fl6.flowi6_oif = oif; in ping_v6_sendmsg()
144 fl6.saddr = np->saddr; in ping_v6_sendmsg()
145 fl6.daddr = *daddr; in ping_v6_sendmsg()
147 fl6.flowi6_uid = sk->sk_uid; in ping_v6_sendmsg()
152 fl6.flowlabel = ip6_make_flowinfo(ipc6.tclass, fl6.flowlabel); in ping_v6_sendmsg()
159 if (!fl6.flowi6_oif && ipv6_addr_is_multicast(&fl6.daddr)) in ping_v6_sendmsg()
160 fl6.flowi6_oif = np->mcast_oif; in ping_v6_sendmsg()
[all …]
H A Draw.c572 csum = csum_ipv6_magic(&fl6->saddr, &fl6->daddr, in rawv6_push_pending_frames()
685 switch (fl6->flowi6_proto) { in rawv6_probe_proto_opt()
747 struct flowi6 fl6; in rawv6_sendmsg() local
769 memset(&fl6, 0, sizeof(fl6)); in rawv6_sendmsg()
828 if (fl6.flowi6_oif == 0) in rawv6_sendmsg()
858 fl6.flowi6_proto = proto; in rawv6_sendmsg()
870 fl6.daddr = *daddr; in rawv6_sendmsg()
874 fl6.saddr = np->saddr; in rawv6_sendmsg()
878 if (!fl6.flowi6_oif && ipv6_addr_is_multicast(&fl6.daddr)) in rawv6_sendmsg()
880 else if (!fl6.flowi6_oif) in rawv6_sendmsg()
[all …]
H A Dxfrm6_output.c21 struct flowi6 fl6; in xfrm6_local_rxpmtu() local
24 fl6.flowi6_oif = sk->sk_bound_dev_if; in xfrm6_local_rxpmtu()
25 fl6.daddr = ipv6_hdr(skb)->daddr; in xfrm6_local_rxpmtu()
27 ipv6_local_rxpmtu(sk, &fl6, mtu); in xfrm6_local_rxpmtu()
32 struct flowi6 fl6; in xfrm6_local_error() local
37 fl6.fl6_dport = inet_sk(sk)->inet_dport; in xfrm6_local_error()
38 fl6.daddr = hdr->daddr; in xfrm6_local_error()
40 ipv6_local_error(sk, EMSGSIZE, &fl6, mtu); in xfrm6_local_error()
H A Dsyncookies.c228 struct flowi6 fl6; in cookie_v6_check() local
229 memset(&fl6, 0, sizeof(fl6)); in cookie_v6_check()
230 fl6.flowi6_proto = IPPROTO_TCP; in cookie_v6_check()
231 fl6.daddr = ireq->ir_v6_rmt_addr; in cookie_v6_check()
233 fl6.saddr = ireq->ir_v6_loc_addr; in cookie_v6_check()
234 fl6.flowi6_oif = ireq->ir_iif; in cookie_v6_check()
235 fl6.flowi6_mark = ireq->ir_mark; in cookie_v6_check()
236 fl6.fl6_dport = ireq->ir_rmt_port; in cookie_v6_check()
237 fl6.fl6_sport = inet_sk(sk)->inet_sport; in cookie_v6_check()
238 fl6.flowi6_uid = sk->sk_uid; in cookie_v6_check()
[all …]
H A Ddatagram.c48 memset(fl6, 0, sizeof(*fl6)); in ip6_datagram_flow_key_init()
50 fl6->daddr = sk->sk_v6_daddr; in ip6_datagram_flow_key_init()
51 fl6->saddr = np->saddr; in ip6_datagram_flow_key_init()
56 fl6->flowi6_uid = sk->sk_uid; in ip6_datagram_flow_key_init()
68 fl6->flowi6_oif = oif; in ip6_datagram_flow_key_init()
80 struct flowi6 fl6; in ip6_datagram_dst_update() local
103 np->saddr = fl6.saddr; in ip6_datagram_dst_update()
364 iph->daddr = fl6->daddr; in ipv6_local_error()
402 iph->daddr = fl6->daddr; in ipv6_local_rxpmtu()
806 if (fl6->flowi6_oif && in ip6_datagram_send_ctl()
[all …]
H A Dip6_output.c303 &fl6->saddr); in ip6_xmit()
339 hdr->saddr = fl6->saddr; in ip6_xmit()
1094 (fl6->flowi6_oif && fl6->flowi6_oif != dst->dev->ifindex)) { in ip6_sk_dst_check()
1134 &fl6->saddr); in ip6_dst_lookup_tail()
1149 if (fl6->flowi6_oif) in ip6_dst_lookup_tail()
1204 !(ipv6_addr_v4mapped(&fl6->daddr) || ipv6_addr_any(&fl6->daddr))) { in ip6_dst_lookup_tail()
1232 struct flowi6 *fl6) in ip6_dst_lookup() argument
1332 struct flowi6 fl6; in ip6_dst_lookup_tunnel() local
1343 memset(&fl6, 0, sizeof(fl6)); in ip6_dst_lookup_tunnel()
1366 *saddr = fl6.saddr; in ip6_dst_lookup_tunnel()
[all …]
H A Dudp.c1244 uh->dest = fl6->fl6_dport; in udp_v6_send_skb()
1286 udp6_hwcsum_outgoing(sk, skb, &fl6->saddr, &fl6->daddr, len); in udp_v6_send_skb()
1292 uh->check = csum_ipv6_magic(&fl6->saddr, &fl6->daddr, in udp_v6_send_skb()
1437 memset(fl6, 0, sizeof(*fl6)); in udpv6_sendmsg()
1477 if (!fl6->flowi6_oif) in udpv6_sendmsg()
1480 if (!fl6->flowi6_oif) in udpv6_sendmsg()
1520 fl6->daddr = *daddr; in udpv6_sendmsg()
1522 fl6->saddr = np->saddr; in udpv6_sendmsg()
1529 &fl6->saddr); in udpv6_sendmsg()
1557 if (!fl6->flowi6_oif && ipv6_addr_is_multicast(&fl6->daddr)) { in udpv6_sendmsg()
[all …]
H A Dfib6_rules.c77 l3mdev_update_flow(net, flowi6_to_flowi(fl6)); in fib6_lookup()
80 flowi6_to_flowi(fl6), flags, &arg); in fib6_lookup()
83 fl6, res, flags); in fib6_lookup()
86 oif, fl6, res, flags); in fib6_lookup()
106 l3mdev_update_flow(net, flowi6_to_flowi(fl6)); in fib6_rule_lookup()
109 flowi6_to_flowi(fl6), flags, &arg); in fib6_rule_lookup()
117 net, net->ipv6.fib6_local_tbl, fl6, skb, flags); in fib6_rule_lookup()
122 net, net->ipv6.fib6_main_tbl, fl6, skb, flags); in fib6_rule_lookup()
311 struct flowi6 *fl6 = &fl->u.ip6; in fib6_rule_match() local
324 if (!ipv6_prefix_equal(&fl6->saddr, &r->src.addr, in fib6_rule_match()
[all …]
H A Dip6_gre.c645 memcpy(fl6, &t->fl.u.ip6, sizeof(*fl6)); in prepare_ip6gre_xmit_ipv4()
687 memcpy(fl6, &t->fl.u.ip6, sizeof(*fl6)); in prepare_ip6gre_xmit_ipv6()
717 memcpy(fl6, &t->fl.u.ip6, sizeof(*fl6)); in prepare_ip6gre_xmit_other()
776 memset(fl6, 0, sizeof(*fl6)); in __gre6_xmit()
817 struct flowi6 fl6; in ip6gre_xmit_ipv4() local
850 struct flowi6 fl6; in ip6gre_xmit_ipv6() local
880 struct flowi6 fl6; in ip6gre_xmit_other() local
945 struct flowi6 fl6; in ip6erspan_tunnel_xmit() local
1002 memset(&fl6, 0, sizeof(fl6)); in ip6erspan_tunnel_xmit()
1048 memcpy(&fl6, &t->fl.u.ip6, sizeof(fl6)); in ip6erspan_tunnel_xmit()
[all …]
H A Dxfrm6_policy.c31 struct flowi6 fl6; in xfrm6_dst_lookup() local
35 memset(&fl6, 0, sizeof(fl6)); in xfrm6_dst_lookup()
36 fl6.flowi6_l3mdev = l3mdev_master_ifindex_by_index(net, oif); in xfrm6_dst_lookup()
37 fl6.flowi6_mark = mark; in xfrm6_dst_lookup()
38 memcpy(&fl6.daddr, daddr, sizeof(fl6.daddr)); in xfrm6_dst_lookup()
40 memcpy(&fl6.saddr, saddr, sizeof(fl6.saddr)); in xfrm6_dst_lookup()
42 dst = ip6_route_output(net, NULL, &fl6); in xfrm6_dst_lookup()
H A Dfou6.c22 struct flowi6 *fl6, u8 *protocol, __be16 sport) in fou6_build_udp() argument
35 &fl6->saddr, &fl6->daddr, skb->len); in fou6_build_udp()
41 u8 *protocol, struct flowi6 *fl6) in fou6_build_header() argument
52 fou6_build_udp(skb, e, fl6, protocol, sport); in fou6_build_header()
58 u8 *protocol, struct flowi6 *fl6) in gue6_build_header() argument
69 fou6_build_udp(skb, e, fl6, protocol, sport); in gue6_build_header()
H A Drpl_iptunnel.c221 struct flowi6 fl6; in rpl_output() local
223 memset(&fl6, 0, sizeof(fl6)); in rpl_output()
224 fl6.daddr = hdr->daddr; in rpl_output()
225 fl6.saddr = hdr->saddr; in rpl_output()
226 fl6.flowlabel = ip6_flowinfo(hdr); in rpl_output()
227 fl6.flowi6_mark = skb->mark; in rpl_output()
228 fl6.flowi6_proto = hdr->nexthdr; in rpl_output()
230 dst = ip6_route_output(net, NULL, &fl6); in rpl_output()
238 dst_cache_set_ip6(&rlwt->cache, dst, &fl6.saddr); in rpl_output()
H A Droute.c435 fl6->mp_hash = rt6_multipath_hash(net, fl6, skb, NULL); in fib6_select_path()
1217 fn = fib6_node_lookup(&table->tb6_root, &fl6->daddr, &fl6->saddr); in ip6_pol_route_lookup()
1223 rt6_device_match(net, &res, &fl6->saddr, fl6->flowi6_oif, in ip6_pol_route_lookup()
1238 fib6_select_path(net, &res, fl6, fl6->flowi6_oif, in ip6_pol_route_lookup()
1242 rt = rt6_find_cached_rt(&res, &fl6->daddr, &fl6->saddr); in ip6_pol_route_lookup()
2183 fn = fib6_node_lookup(&table->tb6_root, &fl6->daddr, &fl6->saddr); in fib6_table_lookup()
2230 rt = rt6_find_cached_rt(&res, &fl6->daddr, &fl6->saddr); in ip6_pol_route()
2586 fl6.mp_hash = rt6_multipath_hash(net, &fl6, skb, flkeys); in ip6_route_input()
3011 rt_cache = rt6_find_cached_rt(res, &fl6->daddr, &fl6->saddr); in ip6_redirect_nh_match()
3054 .fl6 = fl6, in __ip6_route_redirect()
[all …]
/openbmc/linux/net/ipv6/netfilter/
H A Dnft_fib_ipv6.c30 fl6->daddr = iph->daddr; in nft_fib6_flowi_init()
31 fl6->saddr = iph->saddr; in nft_fib6_flowi_init()
35 fl6->flowi6_iif = nft_out(pkt)->ifindex; in nft_fib6_flowi_init()
37 fl6->daddr = iph->saddr; in nft_fib6_flowi_init()
38 fl6->saddr = iph->daddr; in nft_fib6_flowi_init()
52 fl6->flowi6_mark = pkt->skb->mark; in nft_fib6_flowi_init()
66 struct flowi6 fl6 = { in __nft_fib6_eval_type() local
78 nft_fib6_flowi_init(&fl6, priv, pkt, dev, iph); in __nft_fib6_eval_type()
84 flowi6_to_flowi(&fl6), false); in __nft_fib6_eval_type()
104 addrtype = ipv6_addr_type(&fl6.daddr); in __nft_fib6_eval_type()
[all …]
H A Dnf_dup_ipv6.c24 struct flowi6 fl6; in nf_dup_ipv6_route() local
26 memset(&fl6, 0, sizeof(fl6)); in nf_dup_ipv6_route()
28 fl6.flowi6_oif = oif; in nf_dup_ipv6_route()
30 fl6.daddr = *gw; in nf_dup_ipv6_route()
31 fl6.flowlabel = (__force __be32)(((iph->flow_lbl[0] & 0xF) << 16) | in nf_dup_ipv6_route()
33 fl6.flowi6_flags = FLOWI_FLAG_KNOWN_NH; in nf_dup_ipv6_route()
34 dst = ip6_route_output(net, NULL, &fl6); in nf_dup_ipv6_route()
H A Dnf_reject_ipv6.c288 struct flowi6 fl6; in nf_send_reset6() local
300 memset(&fl6, 0, sizeof(fl6)); in nf_send_reset6()
301 fl6.flowi6_proto = IPPROTO_TCP; in nf_send_reset6()
302 fl6.saddr = oip6h->daddr; in nf_send_reset6()
303 fl6.daddr = oip6h->saddr; in nf_send_reset6()
304 fl6.fl6_sport = otcph->dest; in nf_send_reset6()
305 fl6.fl6_dport = otcph->source; in nf_send_reset6()
308 nf_ip6_route(net, &dst, flowi6_to_flowi(&fl6), false); in nf_send_reset6()
315 fl6.flowi6_mark = IP6_REPLY_MARK(net, oldskb->mark); in nf_send_reset6()
317 dst = ip6_route_output(net, NULL, &fl6); in nf_send_reset6()
[all …]
H A Dip6t_rpfilter.c38 struct flowi6 fl6 = { in rpfilter_lookup_reverse6() local
49 memcpy(&fl6.saddr, &iph->daddr, sizeof(struct in6_addr)); in rpfilter_lookup_reverse6()
55 fl6.flowi6_mark = flags & XT_RPFILTER_VALID_MARK ? skb->mark : 0; in rpfilter_lookup_reverse6()
59 fl6.flowi6_oif = dev->ifindex; in rpfilter_lookup_reverse6()
61 fl6.flowi6_oif = dev->ifindex; in rpfilter_lookup_reverse6()
63 rt = (void *)ip6_route_lookup(net, &fl6, skb, lookup_flags); in rpfilter_lookup_reverse6()
/openbmc/linux/net/l2tp/
H A Dl2tp_ip6.c498 struct flowi6 fl6; in l2tp_ip6_sendmsg() local
516 memset(&fl6, 0, sizeof(fl6)); in l2tp_ip6_sendmsg()
519 fl6.flowi6_uid = sk->sk_uid; in l2tp_ip6_sendmsg()
556 fl6.flowlabel = np->flow_label; in l2tp_ip6_sendmsg()
559 if (fl6.flowi6_oif == 0) in l2tp_ip6_sendmsg()
593 fl6.daddr = *daddr; in l2tp_ip6_sendmsg()
597 fl6.saddr = np->saddr; in l2tp_ip6_sendmsg()
601 if (!fl6.flowi6_oif && ipv6_addr_is_multicast(&fl6.daddr)) in l2tp_ip6_sendmsg()
602 fl6.flowi6_oif = np->mcast_oif; in l2tp_ip6_sendmsg()
603 else if (!fl6.flowi6_oif) in l2tp_ip6_sendmsg()
[all …]
/openbmc/linux/net/dccp/
H A Dipv6.c202 struct flowi6 fl6; in dccp_v6_send_response() local
206 memset(&fl6, 0, sizeof(fl6)); in dccp_v6_send_response()
210 fl6.flowlabel = 0; in dccp_v6_send_response()
263 struct flowi6 fl6; in dccp_v6_ctl_send_reset() local
285 memset(&fl6, 0, sizeof(fl6)); in dccp_v6_ctl_send_reset()
286 fl6.daddr = rxip6h->saddr; in dccp_v6_ctl_send_reset()
287 fl6.saddr = rxip6h->daddr; in dccp_v6_ctl_send_reset()
478 struct flowi6 fl6; in dccp_v6_request_recv_sock() local
830 struct flowi6 fl6; in dccp_v6_connect() local
843 memset(&fl6, 0, sizeof(fl6)); in dccp_v6_connect()
[all …]
/openbmc/linux/drivers/net/ethernet/chelsio/libcxgb/
H A Dlibcxgb_cm.c129 struct flowi6 fl6; in cxgb_find_route6() local
131 memset(&fl6, 0, sizeof(fl6)); in cxgb_find_route6()
132 memcpy(&fl6.daddr, peer_ip, 16); in cxgb_find_route6()
133 memcpy(&fl6.saddr, local_ip, 16); in cxgb_find_route6()
134 if (ipv6_addr_type(&fl6.daddr) & IPV6_ADDR_LINKLOCAL) in cxgb_find_route6()
135 fl6.flowi6_oif = sin6_scope_id; in cxgb_find_route6()
136 dst = ip6_route_output(&init_net, NULL, &fl6); in cxgb_find_route6()
/openbmc/linux/net/sctp/
H A Dipv6.c225 struct flowi6 *fl6 = &t->fl.u.ip6; in sctp_v6_xmit() local
232 skb->len, &fl6->saddr, &fl6->daddr); in sctp_v6_xmit()
264 label = ip6_make_flowlabel(sock_net(sk), skb, fl6->flowlabel, true, fl6); in sctp_v6_xmit()
280 struct flowi6 *fl6 = &_fl.u.ip6; in sctp_v6_get_dst() local
291 fl6->daddr = daddr->v6.sin6_addr; in sctp_v6_get_dst()
293 fl6->flowi6_proto = IPPROTO_SCTP; in sctp_v6_get_dst()
316 fl6->saddr = saddr->v6.sin6_addr; in sctp_v6_get_dst()
317 if (!fl6->fl6_sport) in sctp_v6_get_dst()
382 fl6->saddr = laddr->a.v6.sin6_addr; in sctp_v6_get_dst()
446 struct flowi6 *fl6 = &fl->u.ip6; in sctp_v6_get_saddr() local
[all …]
/openbmc/linux/include/net/
H A Dip6_fib.h551 struct flowi6 *fl6,
556 struct flowi6 *fl6,
561 struct flowi6 *fl6,
566 struct flowi6 *fl6,
572 struct flowi6 *fl6, in pol_lookup_func() argument
581 net, table, fl6, skb, flags); in pol_lookup_func()
599 struct flowi6 *fl6, in fib6_rules_early_flow_dissect() argument
611 fl6->fl6_sport = flkeys->ports.src; in fib6_rules_early_flow_dissect()
612 fl6->fl6_dport = flkeys->ports.dst; in fib6_rules_early_flow_dissect()
613 fl6->flowi6_proto = flkeys->basic.ip_proto; in fib6_rules_early_flow_dissect()
[all …]
/openbmc/linux/net/ipv6/ila/
H A Dila_lwt.c66 struct flowi6 fl6; in ila_output() local
72 memset(&fl6, 0, sizeof(fl6)); in ila_output()
73 fl6.flowi6_oif = orig_dst->dev->ifindex; in ila_output()
74 fl6.flowi6_iif = LOOPBACK_IFINDEX; in ila_output()
75 fl6.daddr = *rt6_nexthop((struct rt6_info *)orig_dst, in ila_output()
78 dst = ip6_route_output(net, NULL, &fl6); in ila_output()
85 dst = xfrm_lookup(net, dst, flowi6_to_flowi(&fl6), NULL, 0); in ila_output()
93 dst_cache_set_ip6(&ilwt->dst_cache, dst, &fl6.saddr); in ila_output()

1234