Home
last modified time | relevance | path

Searched refs:flowlabel (Results 1 – 25 of 34) sorted by relevance

12

/linux/tools/testing/selftests/net/
H A Dipv6_flowlabel.c53 static void do_send(int fd, bool with_flowlabel, uint32_t flowlabel) in do_send() argument
55 char control[CMSG_SPACE(sizeof(flowlabel))] = {0}; in do_send()
78 cm->cmsg_len = CMSG_LEN(sizeof(flowlabel)); in do_send()
81 *(uint32_t *)CMSG_DATA(cm) = htonl(flowlabel); in do_send()
92 fprintf(stderr, "sent with label %u\n", flowlabel); in do_send()
104 uint32_t flowlabel; in do_recv() local
140 flowlabel = ntohl(*(uint32_t *)CMSG_DATA(cm)); in do_recv()
141 fprintf(stderr, "recv with label %u\n", flowlabel); in do_recv()
143 if (expect != FLOWLABEL_WILDCARD && expect != flowlabel) { in do_recv()
145 flowlabel, expect); in do_recv()
/linux/Documentation/networking/
H A Dseg6-sysctl.rst32 Controls the behaviour of computing the flowlabel of outer
36 -1 set flowlabel to zero.
37 0 copy flowlabel from Inner packet in case of Inner IPv6
38 (Set flowlabel to 0 in case IPv4/L2)
39 1 Compute the flowlabel using seg6_make_flowlabel()
/linux/net/ipv6/
H A Dseg6_iptunnel.c126 __be32 flowlabel = 0; in seg6_make_flowlabel() local
132 flowlabel = (__force __be32)hash & IPV6_FLOWLABEL_MASK; in seg6_make_flowlabel()
134 flowlabel = ip6_flowlabel(inner_hdr); in seg6_make_flowlabel()
136 return flowlabel; in seg6_make_flowlabel()
149 __be32 flowlabel; in __seg6_do_srh_encap() local
159 flowlabel = seg6_make_flowlabel(net, skb, inner_hdr); in __seg6_do_srh_encap()
173 flowlabel); in __seg6_do_srh_encap()
176 ip6_flow_hdr(hdr, 0, flowlabel); in __seg6_do_srh_encap()
237 __be32 flowlabel; in seg6_do_srh_encap_red() local
261 flowlabel = seg6_make_flowlabel(net, skb, inner_hdr); in seg6_do_srh_encap_red()
[all …]
H A Ddatagram.c55 fl6->flowlabel = ip6_make_flowinfo(np->tclass, np->flow_label); in ip6_datagram_flow_key_init()
74 struct ip6_flowlabel *flowlabel = NULL; in ip6_datagram_dst_update() local
85 flowlabel = fl6_sock_lookup(sk, np->flow_label); in ip6_datagram_dst_update()
86 if (IS_ERR(flowlabel)) in ip6_datagram_dst_update()
93 opt = flowlabel ? flowlabel->opt : rcu_dereference(np->opt); in ip6_datagram_dst_update()
118 fl6_sock_release(flowlabel); in ip6_datagram_dst_update()
893 if (fl6->flowlabel&IPV6_FLOWINFO_MASK) { in ip6_datagram_send_ctl()
894 if ((fl6->flowlabel^*(__be32 *)CMSG_DATA(cmsg))&~IPV6_FLOWINFO_MASK) { in ip6_datagram_send_ctl()
899 fl6->flowlabel = IPV6_FLOWINFO_MASK & *(__be32 *)CMSG_DATA(cmsg); in ip6_datagram_send_ctl()
H A Dtcp_ipv6.c160 fl6->flowlabel = usin->sin6_flowinfo & IPV6_FLOWINFO_MASK; in tcp_v6_connect()
161 IP6_ECN_flow_init(fl6->flowlabel); in tcp_v6_connect()
162 if (fl6->flowlabel & IPV6_FLOWLABEL_MASK) { in tcp_v6_connect()
163 struct ip6_flowlabel *flowlabel; in tcp_v6_connect() local
164 flowlabel = fl6_sock_lookup(sk, fl6->flowlabel); in tcp_v6_connect()
165 if (IS_ERR(flowlabel)) in tcp_v6_connect()
167 fl6_sock_release(flowlabel); in tcp_v6_connect()
213 np->flow_label = fl6->flowlabel; in tcp_v6_connect()
266 fl6->flowlabel in tcp_v6_connect()
[all...]
H A Dip6_tunnel.c1174 /* add dsfield to flowlabel for route lookup */ in ip6_tnl_xmit()
1175 fl6->flowlabel = ip6_make_flowinfo(dsfield, fl6->flowlabel); in ip6_tnl_xmit()
1288 ip6_make_flowlabel(net, skb, fl6->flowlabel, true, fl6)); in ip6_tnl_xmit()
1336 fl6.flowlabel = key->label; in ipxip6_tnl_xmit()
1397 fl6.flowlabel |= ip6_flowlabel(ipv6h); in ipxip6_tnl_xmit()
1490 fl6->flowlabel = 0; in ip6_tnl_link_config()
1493 fl6->flowlabel |= IPV6_TCLASS_MASK & p->flowinfo; in ip6_tnl_link_config()
1495 fl6->flowlabel |= IPV6_FLOWLABEL_MASK & p->flowinfo; in ip6_tnl_link_config()
H A Dip6_gre.c668 fl6->flowlabel |= ip6_flowlabel(ipv6h); in prepare_ip6gre_xmit_ipv6()
752 fl6->flowlabel = key->label; in __gre6_xmit()
987 fl6.flowlabel = key->label; in ip6erspan_tunnel_xmit()
1103 fl6->flowlabel = 0; in ip6gre_tnl_link_config_common()
1108 fl6->flowlabel |= IPV6_TCLASS_MASK & p->flowinfo; in ip6gre_tnl_link_config_common()
1110 fl6->flowlabel |= IPV6_FLOWLABEL_MASK & p->flowinfo; in ip6gre_tnl_link_config_common()
1383 t->fl.u.ip6.flowlabel, in ip6gre_header()
H A Dxfrm6_protocol.c84 .flowlabel = ip6_flowinfo(ip6h), in xfrm6_rcv_encap()
H A Dicmp.c791 fl6.flowlabel = ip6_make_flowinfo(ipc6.tclass, fl6.flowlabel); in icmp6_send()
965 fl6.flowlabel = ip6_flowlabel(ipv6_hdr(skb)); in icmpv6_echo_reply()
H A Drpl_iptunnel.c228 fl6.flowlabel = ip6_flowinfo(hdr); in rpl_output()
H A Dioam6_iptunnel.c413 fl6.flowlabel = ip6_flowinfo(hdr); in ioam6_output()
/linux/net/ipv6/netfilter/
H A Dip6table_mangle.c36 u32 flowlabel, mark; in ip6t_mangle_out() local
47 flowlabel = *((u_int32_t *)ipv6_hdr(skb)); in ip6t_mangle_out()
57 flowlabel != *((u_int32_t *)ipv6_hdr(skb)))) { in ip6t_mangle_out()
H A Dnf_dup_ipv6.c31 fl6.flowlabel = (__force __be32)(((iph->flow_lbl[0] & 0xF) << 16) | in nf_dup_ipv6_route()
H A Dip6t_rpfilter.c41 .flowlabel = (* (__be32 *) iph) & IPV6_FLOWINFO_MASK, in rpfilter_lookup_reverse6()
H A Dnft_fib_ipv6.c52 fl6->flowlabel = (*(__be32 *)iph) & IPV6_FLOWINFO_MASK; in nft_fib6_flowi_init()
/linux/include/net/
H A Dipv6.h878 __be32 flowlabel, bool autolabel, in ip6_make_flowlabel() argument
884 /* @flowlabel may include more than a flow label, eg, the traffic class. in ip6_make_flowlabel()
887 flowlabel &= IPV6_FLOWLABEL_MASK; in ip6_make_flowlabel()
889 if (flowlabel) in ip6_make_flowlabel()
890 return flowlabel; in ip6_make_flowlabel()
895 return flowlabel; in ip6_make_flowlabel()
905 flowlabel = (__force __be32)hash & IPV6_FLOWLABEL_MASK; in ip6_make_flowlabel()
908 flowlabel |= IPV6_FLOWLABEL_STATELESS_FLAG; in ip6_make_flowlabel()
910 return flowlabel; in ip6_make_flowlabel()
927 __be32 flowlabel, boo in ip6_make_flowlabel() argument
962 ip6_flow_hdr(struct ipv6hdr * hdr,unsigned int tclass,__be32 flowlabel) ip6_flow_hdr() argument
987 ip6_make_flowinfo(unsigned int tclass,__be32 flowlabel) ip6_make_flowinfo() argument
[all...]
/linux/net/netfilter/
H A Dnft_chain_route.c71 u32 mark, flowlabel; in nf_route_table_hook6() local
86 flowlabel = *((u32 *)ipv6_hdr(skb)); in nf_route_table_hook6()
94 flowlabel != *((u32 *)ipv6_hdr(skb)))) { in nf_route_table_hook6()
H A Dnf_flow_table_path.c230 fl.u.ip6.flowlabel = ip6_flowinfo(ipv6_hdr(pkt->skb)); in nft_flow_tunnel_update_route()
319 fl.u.ip6.flowlabel = ip6_flowinfo(ipv6_hdr(pkt->skb)); in nft_flow_route()
/linux/net/sctp/
H A Dipv6.c236 IP6_ECN_flow_xmit(sk, fl6->flowlabel); in sctp_v6_xmit()
262 label = ip6_make_flowlabel(sock_net(sk), skb, fl6->flowlabel, true, fl6); in sctp_v6_xmit()
299 if (t->flowlabel & SCTP_FLOWLABEL_SET_MASK) in sctp_v6_get_dst()
300 fl6->flowlabel = htonl(t->flowlabel & SCTP_FLOWLABEL_VAL_MASK); in sctp_v6_get_dst()
303 (fl6->flowlabel & IPV6_FLOWLABEL_MASK)) { in sctp_v6_get_dst()
304 struct ip6_flowlabel *flowlabel; in sctp_v6_get_dst()
306 flowlabel = fl6_sock_lookup(sk, fl6->flowlabel); in sctp_v6_get_dst()
307 if (IS_ERR(flowlabel)) in sctp_v6_get_dst()
302 struct ip6_flowlabel *flowlabel; sctp_v6_get_dst() local
[all...]
H A Dassociola.c108 asoc->flowlabel = sp->flowlabel; in sctp_association_init()
649 peer->flowlabel = ntohl(info & IPV6_FLOWLABEL_MASK); in sctp_assoc_add_peer()
650 peer->flowlabel |= SCTP_FLOWLABEL_SET_MASK; in sctp_assoc_add_peer()
652 peer->flowlabel = asoc->flowlabel; in sctp_assoc_add_peer()
H A Dsocket.c2576 trans->flowlabel = params->spp_ipv6_flowlabel & in sctp_apply_peer_addr_params()
2578 trans->flowlabel |= SCTP_FLOWLABEL_SET_MASK; in sctp_apply_peer_addr_params()
2587 t->flowlabel = params->spp_ipv6_flowlabel & in sctp_apply_peer_addr_params()
2589 t->flowlabel |= SCTP_FLOWLABEL_SET_MASK; in sctp_apply_peer_addr_params()
2591 asoc->flowlabel = params->spp_ipv6_flowlabel & in sctp_apply_peer_addr_params()
2593 asoc->flowlabel |= SCTP_FLOWLABEL_SET_MASK; in sctp_apply_peer_addr_params()
2595 sp->flowlabel = params->spp_ipv6_flowlabel & in sctp_apply_peer_addr_params()
2597 sp->flowlabel |= SCTP_FLOWLABEL_SET_MASK; in sctp_apply_peer_addr_params()
6033 if (trans->flowlabel & SCTP_FLOWLABEL_SET_MASK) { in sctp_getsockopt_peer_addr_params()
6034 params.spp_ipv6_flowlabel = trans->flowlabel in sctp_getsockopt_peer_addr_params()
[all...]
/linux/net/dccp/
H A Dipv6.c
/linux/drivers/net/ethernet/mellanox/mlxsw/
H A Dspectrum_nve.h17 __be32 flowlabel; member
H A Dspectrum_nve_vxlan.c156 config->flowlabel = cfg->label; in mlxsw_sp_nve_vxlan_config()
/linux/drivers/net/ipvlan/
H A Dipvlan_l3s.c72 .flowlabel = ip6_flowinfo(ip6h), in ipvlan_l3_rcv()

12