Commit 1db04c30 authored by Alan Maguire's avatar Alan Maguire Committed by Daniel Borkmann
Browse files

bpf: sync bpf.h to tools/ for BPF_F_ADJ_ROOM_ENCAP_L2



Sync include/uapi/linux/bpf.h with tools/ equivalent to add
BPF_F_ADJ_ROOM_ENCAP_L2(len) macro.

Signed-off-by: default avatarAlan Maguire <alan.maguire@oracle.com>
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
parent 58dfc900
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -1523,6 +1523,10 @@ union bpf_attr {
 *		* **BPF_F_ADJ_ROOM_ENCAP_L4_UDP **:
 *		  Use with ENCAP_L3 flags to further specify the tunnel type.
 *
 *		* **BPF_F_ADJ_ROOM_ENCAP_L2(len) **:
 *		  Use with ENCAP_L3/L4 flags to further specify the tunnel
 *		  type; **len** is the length of the inner MAC header.
 *
 * 		A call to this helper is susceptible to change the underlaying
 * 		packet buffer. Therefore, at load time, all checks on pointers
 * 		previously done by the verifier are invalidated and must be
@@ -2664,10 +2668,16 @@ enum bpf_func_id {
/* BPF_FUNC_skb_adjust_room flags. */
#define BPF_F_ADJ_ROOM_FIXED_GSO	(1ULL << 0)

#define	BPF_ADJ_ROOM_ENCAP_L2_MASK	0xff
#define	BPF_ADJ_ROOM_ENCAP_L2_SHIFT	56

#define BPF_F_ADJ_ROOM_ENCAP_L3_IPV4	(1ULL << 1)
#define BPF_F_ADJ_ROOM_ENCAP_L3_IPV6	(1ULL << 2)
#define BPF_F_ADJ_ROOM_ENCAP_L4_GRE	(1ULL << 3)
#define BPF_F_ADJ_ROOM_ENCAP_L4_UDP	(1ULL << 4)
#define	BPF_F_ADJ_ROOM_ENCAP_L2(len)	(((__u64)len & \
					  BPF_ADJ_ROOM_ENCAP_L2_MASK) \
					 << BPF_ADJ_ROOM_ENCAP_L2_SHIFT)

/* Mode for BPF_FUNC_skb_adjust_room helper. */
enum bpf_adj_room_mode {