Home
last modified time | relevance | path

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

123

/Linux-v6.6/tools/testing/selftests/net/
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-v6.6/Documentation/networking/
Dseg6-sysctl.rst29 Controls the behaviour of computing the flowlabel of outer
33 -1 set flowlabel to zero.
34 0 copy flowlabel from Inner packet in case of Inner IPv6
35 (Set flowlabel to 0 in case IPv4/L2)
36 1 Compute the flowlabel using seg6_make_flowlabel()
/Linux-v6.6/net/l2tp/
Dl2tp_ip6.c496 struct ip6_flowlabel *flowlabel = NULL; in l2tp_ip6_sendmsg() local
532 fl6.flowlabel = lsa->l2tp_flowinfo & IPV6_FLOWINFO_MASK; in l2tp_ip6_sendmsg()
533 if (fl6.flowlabel & IPV6_FLOWLABEL_MASK) { in l2tp_ip6_sendmsg()
534 flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); in l2tp_ip6_sendmsg()
535 if (IS_ERR(flowlabel)) in l2tp_ip6_sendmsg()
556 fl6.flowlabel = np->flow_label; in l2tp_ip6_sendmsg()
570 fl6_sock_release(flowlabel); in l2tp_ip6_sendmsg()
573 if ((fl6.flowlabel & IPV6_FLOWLABEL_MASK) && !flowlabel) { in l2tp_ip6_sendmsg()
574 flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); in l2tp_ip6_sendmsg()
575 if (IS_ERR(flowlabel)) in l2tp_ip6_sendmsg()
[all …]
/Linux-v6.6/net/ipv6/
Dseg6_iptunnel.c114 __be32 flowlabel = 0; in seg6_make_flowlabel() local
120 flowlabel = (__force __be32)hash & IPV6_FLOWLABEL_MASK; in seg6_make_flowlabel()
122 flowlabel = ip6_flowlabel(inner_hdr); in seg6_make_flowlabel()
124 return flowlabel; in seg6_make_flowlabel()
135 __be32 flowlabel; in seg6_do_srh_encap() local
145 flowlabel = seg6_make_flowlabel(net, skb, inner_hdr); in seg6_do_srh_encap()
159 flowlabel); in seg6_do_srh_encap()
162 ip6_flow_hdr(hdr, 0, flowlabel); in seg6_do_srh_encap()
214 __be32 flowlabel; in seg6_do_srh_encap_red() local
238 flowlabel = seg6_make_flowlabel(net, skb, inner_hdr); in seg6_do_srh_encap_red()
[all …]
Draw.c744 struct ip6_flowlabel *flowlabel = NULL; in rawv6_sendmsg() local
799 fl6.flowlabel = sin6->sin6_flowinfo&IPV6_FLOWINFO_MASK; in rawv6_sendmsg()
800 if (fl6.flowlabel&IPV6_FLOWLABEL_MASK) { in rawv6_sendmsg()
801 flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); in rawv6_sendmsg()
802 if (IS_ERR(flowlabel)) in rawv6_sendmsg()
825 fl6.flowlabel = np->flow_label; in rawv6_sendmsg()
839 fl6_sock_release(flowlabel); in rawv6_sendmsg()
842 if ((fl6.flowlabel&IPV6_FLOWLABEL_MASK) && !flowlabel) { in rawv6_sendmsg()
843 flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); in rawv6_sendmsg()
844 if (IS_ERR(flowlabel)) in rawv6_sendmsg()
[all …]
Dudp.c1327 struct ip6_flowlabel *flowlabel = NULL; in udpv6_sendmsg() local
1431 fl6->flowlabel = sin6->sin6_flowinfo&IPV6_FLOWINFO_MASK; in udpv6_sendmsg()
1432 if (fl6->flowlabel & IPV6_FLOWLABEL_MASK) { in udpv6_sendmsg()
1433 flowlabel = fl6_sock_lookup(sk, fl6->flowlabel); in udpv6_sendmsg()
1434 if (IS_ERR(flowlabel)) in udpv6_sendmsg()
1457 fl6->flowlabel = np->flow_label; in udpv6_sendmsg()
1480 fl6_sock_release(flowlabel); in udpv6_sendmsg()
1483 if ((fl6->flowlabel&IPV6_FLOWLABEL_MASK) && !flowlabel) { in udpv6_sendmsg()
1484 flowlabel = fl6_sock_lookup(sk, fl6->flowlabel); in udpv6_sendmsg()
1485 if (IS_ERR(flowlabel)) in udpv6_sendmsg()
[all …]
Dping.c93 fl6.flowlabel = u->sin6_flowinfo & IPV6_FLOWINFO_MASK; in ping_v6_sendmsg()
100 fl6.flowlabel = np->flow_label; in ping_v6_sendmsg()
152 fl6.flowlabel = ip6_make_flowinfo(ipc6.tclass, fl6.flowlabel); in ping_v6_sendmsg()
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
84 flowlabel = fl6_sock_lookup(sk, np->flow_label); in ip6_datagram_dst_update()
85 if (IS_ERR(flowlabel)) in ip6_datagram_dst_update()
91 opt = flowlabel ? flowlabel->opt : rcu_dereference(np->opt); in ip6_datagram_dst_update()
116 fl6_sock_release(flowlabel); in ip6_datagram_dst_update()
855 if (fl6->flowlabel&IPV6_FLOWINFO_MASK) { in ip6_datagram_send_ctl()
856 if ((fl6->flowlabel^*(__be32 *)CMSG_DATA(cmsg))&~IPV6_FLOWINFO_MASK) { in ip6_datagram_send_ctl()
861 fl6->flowlabel = IPV6_FLOWINFO_MASK & *(__be32 *)CMSG_DATA(cmsg); in ip6_datagram_send_ctl()
Dinet6_connection_sock.c91 fl6->flowlabel = np->flow_label; in inet6_csk_route_socket()
92 IP6_ECN_flow_xmit(sk, fl6->flowlabel); in inet6_csk_route_socket()
Dtcp_ipv6.c167 fl6.flowlabel = usin->sin6_flowinfo&IPV6_FLOWINFO_MASK; in tcp_v6_connect()
168 IP6_ECN_flow_init(fl6.flowlabel); in tcp_v6_connect()
169 if (fl6.flowlabel&IPV6_FLOWLABEL_MASK) { in tcp_v6_connect()
170 struct ip6_flowlabel *flowlabel; in tcp_v6_connect() local
171 flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); in tcp_v6_connect()
172 if (IS_ERR(flowlabel)) in tcp_v6_connect()
174 fl6_sock_release(flowlabel); in tcp_v6_connect()
220 np->flow_label = fl6.flowlabel; in tcp_v6_connect()
271 fl6.flowlabel = ip6_make_flowinfo(np->tclass, np->flow_label); in tcp_v6_connect()
552 fl6->flowlabel = ip6_flowlabel(ipv6_hdr(ireq->pktopts)); in tcp_v6_send_synack()
[all …]
Dip6_tunnel.c1146 fl6->flowlabel = ip6_make_flowinfo(dsfield, fl6->flowlabel); in ip6_tnl_xmit()
1259 ip6_make_flowlabel(net, skb, fl6->flowlabel, true, fl6)); in ip6_tnl_xmit()
1307 fl6.flowlabel = key->label; in ipxip6_tnl_xmit()
1368 fl6.flowlabel |= ip6_flowlabel(ipv6h); in ipxip6_tnl_xmit()
1461 fl6->flowlabel = 0; in ip6_tnl_link_config()
1464 fl6->flowlabel |= IPV6_TCLASS_MASK & p->flowinfo; in ip6_tnl_link_config()
1466 fl6->flowlabel |= IPV6_FLOWLABEL_MASK & p->flowinfo; in ip6_tnl_link_config()
Dip6_gre.c692 fl6->flowlabel |= ip6_flowlabel(ipv6h); in prepare_ip6gre_xmit_ipv6()
776 fl6->flowlabel = key->label; in __gre6_xmit()
1002 fl6.flowlabel = key->label; in ip6erspan_tunnel_xmit()
1113 fl6->flowlabel = 0; in ip6gre_tnl_link_config_common()
1118 fl6->flowlabel |= IPV6_TCLASS_MASK & p->flowinfo; in ip6gre_tnl_link_config_common()
1120 fl6->flowlabel |= IPV6_FLOWLABEL_MASK & p->flowinfo; in ip6gre_tnl_link_config_common()
1386 t->fl.u.ip6.flowlabel, in ip6gre_header()
/Linux-v6.6/net/ipv6/netfilter/
Dip6table_mangle.c37 u_int32_t flowlabel, mark; in ip6t_mangle_out() local
47 flowlabel = *((u_int32_t *)ipv6_hdr(skb)); in ip6t_mangle_out()
56 flowlabel != *((u_int32_t *)ipv6_hdr(skb)))) { in ip6t_mangle_out()
Dnf_dup_ipv6.c31 fl6.flowlabel = (__force __be32)(((iph->flow_lbl[0] & 0xF) << 16) | in nf_dup_ipv6_route()
Dip6t_rpfilter.c41 .flowlabel = (* (__be32 *) iph) & IPV6_FLOWINFO_MASK, in rpfilter_lookup_reverse6()
/Linux-v6.6/net/netfilter/
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()
/Linux-v6.6/include/net/
Dipv6.h960 __be32 flowlabel, bool autolabel, in ip6_make_flowlabel() argument
968 flowlabel &= IPV6_FLOWLABEL_MASK; in ip6_make_flowlabel()
970 if (flowlabel || in ip6_make_flowlabel()
974 return flowlabel; in ip6_make_flowlabel()
984 flowlabel = (__force __be32)hash & IPV6_FLOWLABEL_MASK; in ip6_make_flowlabel()
987 flowlabel |= IPV6_FLOWLABEL_STATELESS_FLAG; in ip6_make_flowlabel()
989 return flowlabel; in ip6_make_flowlabel()
1006 __be32 flowlabel, bool autolabel, in ip6_make_flowlabel() argument
1009 return flowlabel; in ip6_make_flowlabel()
1041 __be32 flowlabel) in ip6_flow_hdr() argument
[all …]
Dflow.h143 __be32 flowlabel; member
/Linux-v6.6/drivers/infiniband/hw/hns/
Dhns_roce_ah.c71 ah->av.flowlabel = grh->flow_label; in hns_roce_create_ah()
101 rdma_ah_set_grh(ah_attr, NULL, ah->av.flowlabel, in hns_roce_query_ah()
/Linux-v6.6/net/sctp/
Dipv6.c238 IP6_ECN_flow_xmit(sk, fl6->flowlabel); in sctp_v6_xmit()
264 label = ip6_make_flowlabel(sock_net(sk), skb, fl6->flowlabel, true, fl6); in sctp_v6_xmit()
298 if (t->flowlabel & SCTP_FLOWLABEL_SET_MASK) in sctp_v6_get_dst()
299 fl6->flowlabel = htonl(t->flowlabel & SCTP_FLOWLABEL_VAL_MASK); in sctp_v6_get_dst()
301 if (np->sndflow && (fl6->flowlabel & IPV6_FLOWLABEL_MASK)) { in sctp_v6_get_dst()
302 struct ip6_flowlabel *flowlabel; in sctp_v6_get_dst() local
304 flowlabel = fl6_sock_lookup(sk, fl6->flowlabel); in sctp_v6_get_dst()
305 if (IS_ERR(flowlabel)) in sctp_v6_get_dst()
307 fl6_sock_release(flowlabel); in sctp_v6_get_dst()
Dassociola.c108 asoc->flowlabel = sp->flowlabel; in sctp_association_init()
648 peer->flowlabel = ntohl(info & IPV6_FLOWLABEL_MASK); in sctp_assoc_add_peer()
649 peer->flowlabel |= SCTP_FLOWLABEL_SET_MASK; in sctp_assoc_add_peer()
651 peer->flowlabel = asoc->flowlabel; in sctp_assoc_add_peer()
/Linux-v6.6/net/dccp/
Dipv6.c210 fl6.flowlabel = 0; in dccp_v6_send_response()
843 fl6.flowlabel = usin->sin6_flowinfo & IPV6_FLOWINFO_MASK; in dccp_v6_connect()
844 IP6_ECN_flow_init(fl6.flowlabel); in dccp_v6_connect()
845 if (fl6.flowlabel & IPV6_FLOWLABEL_MASK) { in dccp_v6_connect()
846 struct ip6_flowlabel *flowlabel; in dccp_v6_connect() local
847 flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); in dccp_v6_connect()
848 if (IS_ERR(flowlabel)) in dccp_v6_connect()
850 fl6_sock_release(flowlabel); in dccp_v6_connect()
883 np->flow_label = fl6.flowlabel; in dccp_v6_connect()
/Linux-v6.6/drivers/net/ethernet/mellanox/mlxsw/
Dspectrum_nve.h17 __be32 flowlabel; member
/Linux-v6.6/include/trace/events/
Dfib6.h45 __entry->tos = ip6_tclass(flp->flowlabel);
/Linux-v6.6/drivers/net/ipvlan/
Dipvlan_l3s.c70 .flowlabel = ip6_flowinfo(ip6h), in ipvlan_l3_rcv()

123