Update kernel headers
Update kernel headers to commit
ce28bb445388 ("Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net")
Signed-off-by: David Ahern <dsahern@gmail.com>
This commit is contained in:
parent
17689d3075
commit
fdce94d0d1
|
|
@ -133,6 +133,14 @@ enum bpf_map_type {
|
||||||
BPF_MAP_TYPE_STACK,
|
BPF_MAP_TYPE_STACK,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* Note that tracing related programs such as
|
||||||
|
* BPF_PROG_TYPE_{KPROBE,TRACEPOINT,PERF_EVENT,RAW_TRACEPOINT}
|
||||||
|
* are not subject to a stable API since kernel internal data
|
||||||
|
* structures can change from release to release and may
|
||||||
|
* therefore break existing tracing BPF programs. Tracing BPF
|
||||||
|
* programs correspond to /a/ specific kernel which is to be
|
||||||
|
* analyzed, and not /a/ specific kernel /and/ all future ones.
|
||||||
|
*/
|
||||||
enum bpf_prog_type {
|
enum bpf_prog_type {
|
||||||
BPF_PROG_TYPE_UNSPEC,
|
BPF_PROG_TYPE_UNSPEC,
|
||||||
BPF_PROG_TYPE_SOCKET_FILTER,
|
BPF_PROG_TYPE_SOCKET_FILTER,
|
||||||
|
|
@ -343,7 +351,7 @@ union bpf_attr {
|
||||||
__u32 log_level; /* verbosity level of verifier */
|
__u32 log_level; /* verbosity level of verifier */
|
||||||
__u32 log_size; /* size of user buffer */
|
__u32 log_size; /* size of user buffer */
|
||||||
__aligned_u64 log_buf; /* user supplied buffer */
|
__aligned_u64 log_buf; /* user supplied buffer */
|
||||||
__u32 kern_version; /* checked when prog_type=kprobe */
|
__u32 kern_version; /* not used */
|
||||||
__u32 prog_flags;
|
__u32 prog_flags;
|
||||||
char prog_name[BPF_OBJ_NAME_LEN];
|
char prog_name[BPF_OBJ_NAME_LEN];
|
||||||
__u32 prog_ifindex; /* ifindex of netdev to prep for */
|
__u32 prog_ifindex; /* ifindex of netdev to prep for */
|
||||||
|
|
@ -2657,6 +2665,7 @@ struct sk_msg_md {
|
||||||
__u32 local_ip6[4]; /* Stored in network byte order */
|
__u32 local_ip6[4]; /* Stored in network byte order */
|
||||||
__u32 remote_port; /* Stored in network byte order */
|
__u32 remote_port; /* Stored in network byte order */
|
||||||
__u32 local_port; /* stored in host byte order */
|
__u32 local_port; /* stored in host byte order */
|
||||||
|
__u32 size; /* Total size of sk_msg */
|
||||||
};
|
};
|
||||||
|
|
||||||
struct sk_reuseport_md {
|
struct sk_reuseport_md {
|
||||||
|
|
@ -2717,6 +2726,8 @@ struct bpf_prog_info {
|
||||||
__u32 nr_jited_line_info;
|
__u32 nr_jited_line_info;
|
||||||
__u32 line_info_rec_size;
|
__u32 line_info_rec_size;
|
||||||
__u32 jited_line_info_rec_size;
|
__u32 jited_line_info_rec_size;
|
||||||
|
__u32 nr_prog_tags;
|
||||||
|
__aligned_u64 prog_tags;
|
||||||
} __attribute__((aligned(8)));
|
} __attribute__((aligned(8)));
|
||||||
|
|
||||||
struct bpf_map_info {
|
struct bpf_map_info {
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,9 @@ struct btf_type {
|
||||||
* bits 0-15: vlen (e.g. # of struct's members)
|
* bits 0-15: vlen (e.g. # of struct's members)
|
||||||
* bits 16-23: unused
|
* bits 16-23: unused
|
||||||
* bits 24-27: kind (e.g. int, ptr, array...etc)
|
* bits 24-27: kind (e.g. int, ptr, array...etc)
|
||||||
* bits 28-31: unused
|
* bits 28-30: unused
|
||||||
|
* bit 31: kind_flag, currently used by
|
||||||
|
* struct, union and fwd
|
||||||
*/
|
*/
|
||||||
__u32 info;
|
__u32 info;
|
||||||
/* "size" is used by INT, ENUM, STRUCT and UNION.
|
/* "size" is used by INT, ENUM, STRUCT and UNION.
|
||||||
|
|
@ -52,6 +54,7 @@ struct btf_type {
|
||||||
|
|
||||||
#define BTF_INFO_KIND(info) (((info) >> 24) & 0x0f)
|
#define BTF_INFO_KIND(info) (((info) >> 24) & 0x0f)
|
||||||
#define BTF_INFO_VLEN(info) ((info) & 0xffff)
|
#define BTF_INFO_VLEN(info) ((info) & 0xffff)
|
||||||
|
#define BTF_INFO_KFLAG(info) ((info) >> 31)
|
||||||
|
|
||||||
#define BTF_KIND_UNKN 0 /* Unknown */
|
#define BTF_KIND_UNKN 0 /* Unknown */
|
||||||
#define BTF_KIND_INT 1 /* Integer */
|
#define BTF_KIND_INT 1 /* Integer */
|
||||||
|
|
@ -110,9 +113,22 @@ struct btf_array {
|
||||||
struct btf_member {
|
struct btf_member {
|
||||||
__u32 name_off;
|
__u32 name_off;
|
||||||
__u32 type;
|
__u32 type;
|
||||||
__u32 offset; /* offset in bits */
|
/* If the type info kind_flag is set, the btf_member offset
|
||||||
|
* contains both member bitfield size and bit offset. The
|
||||||
|
* bitfield size is set for bitfield members. If the type
|
||||||
|
* info kind_flag is not set, the offset contains only bit
|
||||||
|
* offset.
|
||||||
|
*/
|
||||||
|
__u32 offset;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* If the struct/union type info kind_flag is set, the
|
||||||
|
* following two macros are used to access bitfield_size
|
||||||
|
* and bit_offset from btf_member.offset.
|
||||||
|
*/
|
||||||
|
#define BTF_MEMBER_BITFIELD_SIZE(val) ((val) >> 24)
|
||||||
|
#define BTF_MEMBER_BIT_OFFSET(val) ((val) & 0xffffff)
|
||||||
|
|
||||||
/* BTF_KIND_FUNC_PROTO is followed by multiple "struct btf_param".
|
/* BTF_KIND_FUNC_PROTO is followed by multiple "struct btf_param".
|
||||||
* The exact number of btf_param is stored in the vlen (of the
|
* The exact number of btf_param is stored in the vlen (of the
|
||||||
* info in "struct btf_type").
|
* info in "struct btf_type").
|
||||||
|
|
|
||||||
|
|
@ -160,4 +160,24 @@ enum {
|
||||||
};
|
};
|
||||||
|
|
||||||
#define IFLA_VTI_MAX (__IFLA_VTI_MAX - 1)
|
#define IFLA_VTI_MAX (__IFLA_VTI_MAX - 1)
|
||||||
|
|
||||||
|
#define TUNNEL_CSUM __cpu_to_be16(0x01)
|
||||||
|
#define TUNNEL_ROUTING __cpu_to_be16(0x02)
|
||||||
|
#define TUNNEL_KEY __cpu_to_be16(0x04)
|
||||||
|
#define TUNNEL_SEQ __cpu_to_be16(0x08)
|
||||||
|
#define TUNNEL_STRICT __cpu_to_be16(0x10)
|
||||||
|
#define TUNNEL_REC __cpu_to_be16(0x20)
|
||||||
|
#define TUNNEL_VERSION __cpu_to_be16(0x40)
|
||||||
|
#define TUNNEL_NO_KEY __cpu_to_be16(0x80)
|
||||||
|
#define TUNNEL_DONT_FRAGMENT __cpu_to_be16(0x0100)
|
||||||
|
#define TUNNEL_OAM __cpu_to_be16(0x0200)
|
||||||
|
#define TUNNEL_CRIT_OPT __cpu_to_be16(0x0400)
|
||||||
|
#define TUNNEL_GENEVE_OPT __cpu_to_be16(0x0800)
|
||||||
|
#define TUNNEL_VXLAN_OPT __cpu_to_be16(0x1000)
|
||||||
|
#define TUNNEL_NOCACHE __cpu_to_be16(0x2000)
|
||||||
|
#define TUNNEL_ERSPAN_OPT __cpu_to_be16(0x4000)
|
||||||
|
|
||||||
|
#define TUNNEL_OPTIONS_PRESENT \
|
||||||
|
(TUNNEL_GENEVE_OPT | TUNNEL_VXLAN_OPT | TUNNEL_ERSPAN_OPT)
|
||||||
|
|
||||||
#endif /* _IF_TUNNEL_H_ */
|
#endif /* _IF_TUNNEL_H_ */
|
||||||
|
|
|
||||||
|
|
@ -266,10 +266,14 @@ struct sockaddr_in {
|
||||||
|
|
||||||
#define IN_CLASSD(a) ((((long int) (a)) & 0xf0000000) == 0xe0000000)
|
#define IN_CLASSD(a) ((((long int) (a)) & 0xf0000000) == 0xe0000000)
|
||||||
#define IN_MULTICAST(a) IN_CLASSD(a)
|
#define IN_MULTICAST(a) IN_CLASSD(a)
|
||||||
#define IN_MULTICAST_NET 0xF0000000
|
#define IN_MULTICAST_NET 0xe0000000
|
||||||
|
|
||||||
#define IN_EXPERIMENTAL(a) ((((long int) (a)) & 0xf0000000) == 0xf0000000)
|
#define IN_BADCLASS(a) ((((long int) (a) ) == 0xffffffff)
|
||||||
#define IN_BADCLASS(a) IN_EXPERIMENTAL((a))
|
#define IN_EXPERIMENTAL(a) IN_BADCLASS((a))
|
||||||
|
|
||||||
|
#define IN_CLASSE(a) ((((long int) (a)) & 0xf0000000) == 0xf0000000)
|
||||||
|
#define IN_CLASSE_NET 0xffffffff
|
||||||
|
#define IN_CLASSE_NSHIFT 0
|
||||||
|
|
||||||
/* Address to accept any incoming messages. */
|
/* Address to accept any incoming messages. */
|
||||||
#define INADDR_ANY ((unsigned long int) 0x00000000)
|
#define INADDR_ANY ((unsigned long int) 0x00000000)
|
||||||
|
|
|
||||||
|
|
@ -33,10 +33,6 @@
|
||||||
#define NF_DROP_ERR(x) (((-x) << 16) | NF_DROP)
|
#define NF_DROP_ERR(x) (((-x) << 16) | NF_DROP)
|
||||||
|
|
||||||
/* only for userspace compatibility */
|
/* only for userspace compatibility */
|
||||||
/* Generic cache responses from hook functions.
|
|
||||||
<= 0x2000 is used for protocol-flags. */
|
|
||||||
#define NFC_UNKNOWN 0x4000
|
|
||||||
#define NFC_ALTERED 0x8000
|
|
||||||
|
|
||||||
/* NF_VERDICT_BITS should be 8 now, but userspace might break if this changes */
|
/* NF_VERDICT_BITS should be 8 now, but userspace might break if this changes */
|
||||||
#define NF_VERDICT_BITS 16
|
#define NF_VERDICT_BITS 16
|
||||||
|
|
|
||||||
|
|
@ -13,8 +13,9 @@
|
||||||
|
|
||||||
#include <linux/types.h>
|
#include <linux/types.h>
|
||||||
|
|
||||||
/* The protocol version */
|
/* The protocol versions */
|
||||||
#define IPSET_PROTOCOL 6
|
#define IPSET_PROTOCOL 7
|
||||||
|
#define IPSET_PROTOCOL_MIN 6
|
||||||
|
|
||||||
/* The max length of strings including NUL: set and type identifiers */
|
/* The max length of strings including NUL: set and type identifiers */
|
||||||
#define IPSET_MAXNAMELEN 32
|
#define IPSET_MAXNAMELEN 32
|
||||||
|
|
@ -38,17 +39,19 @@ enum ipset_cmd {
|
||||||
IPSET_CMD_TEST, /* 11: Test an element in a set */
|
IPSET_CMD_TEST, /* 11: Test an element in a set */
|
||||||
IPSET_CMD_HEADER, /* 12: Get set header data only */
|
IPSET_CMD_HEADER, /* 12: Get set header data only */
|
||||||
IPSET_CMD_TYPE, /* 13: Get set type */
|
IPSET_CMD_TYPE, /* 13: Get set type */
|
||||||
|
IPSET_CMD_GET_BYNAME, /* 14: Get set index by name */
|
||||||
|
IPSET_CMD_GET_BYINDEX, /* 15: Get set name by index */
|
||||||
IPSET_MSG_MAX, /* Netlink message commands */
|
IPSET_MSG_MAX, /* Netlink message commands */
|
||||||
|
|
||||||
/* Commands in userspace: */
|
/* Commands in userspace: */
|
||||||
IPSET_CMD_RESTORE = IPSET_MSG_MAX, /* 14: Enter restore mode */
|
IPSET_CMD_RESTORE = IPSET_MSG_MAX, /* 16: Enter restore mode */
|
||||||
IPSET_CMD_HELP, /* 15: Get help */
|
IPSET_CMD_HELP, /* 17: Get help */
|
||||||
IPSET_CMD_VERSION, /* 16: Get program version */
|
IPSET_CMD_VERSION, /* 18: Get program version */
|
||||||
IPSET_CMD_QUIT, /* 17: Quit from interactive mode */
|
IPSET_CMD_QUIT, /* 19: Quit from interactive mode */
|
||||||
|
|
||||||
IPSET_CMD_MAX,
|
IPSET_CMD_MAX,
|
||||||
|
|
||||||
IPSET_CMD_COMMIT = IPSET_CMD_MAX, /* 18: Commit buffered commands */
|
IPSET_CMD_COMMIT = IPSET_CMD_MAX, /* 20: Commit buffered commands */
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Attributes at command level */
|
/* Attributes at command level */
|
||||||
|
|
@ -66,6 +69,7 @@ enum {
|
||||||
IPSET_ATTR_LINENO, /* 9: Restore lineno */
|
IPSET_ATTR_LINENO, /* 9: Restore lineno */
|
||||||
IPSET_ATTR_PROTOCOL_MIN, /* 10: Minimal supported version number */
|
IPSET_ATTR_PROTOCOL_MIN, /* 10: Minimal supported version number */
|
||||||
IPSET_ATTR_REVISION_MIN = IPSET_ATTR_PROTOCOL_MIN, /* type rev min */
|
IPSET_ATTR_REVISION_MIN = IPSET_ATTR_PROTOCOL_MIN, /* type rev min */
|
||||||
|
IPSET_ATTR_INDEX, /* 11: Kernel index of set */
|
||||||
__IPSET_ATTR_CMD_MAX,
|
__IPSET_ATTR_CMD_MAX,
|
||||||
};
|
};
|
||||||
#define IPSET_ATTR_CMD_MAX (__IPSET_ATTR_CMD_MAX - 1)
|
#define IPSET_ATTR_CMD_MAX (__IPSET_ATTR_CMD_MAX - 1)
|
||||||
|
|
@ -223,6 +227,7 @@ enum ipset_adt {
|
||||||
|
|
||||||
/* Sets are identified by an index in kernel space. Tweak with ip_set_id_t
|
/* Sets are identified by an index in kernel space. Tweak with ip_set_id_t
|
||||||
* and IPSET_INVALID_ID if you want to increase the max number of sets.
|
* and IPSET_INVALID_ID if you want to increase the max number of sets.
|
||||||
|
* Also, IPSET_ATTR_INDEX must be changed.
|
||||||
*/
|
*/
|
||||||
typedef __u16 ip_set_id_t;
|
typedef __u16 ip_set_id_t;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,34 +12,6 @@
|
||||||
|
|
||||||
#include <limits.h> /* for INT_MIN, INT_MAX */
|
#include <limits.h> /* for INT_MIN, INT_MAX */
|
||||||
|
|
||||||
/* IP Cache bits. */
|
|
||||||
/* Src IP address. */
|
|
||||||
#define NFC_IP_SRC 0x0001
|
|
||||||
/* Dest IP address. */
|
|
||||||
#define NFC_IP_DST 0x0002
|
|
||||||
/* Input device. */
|
|
||||||
#define NFC_IP_IF_IN 0x0004
|
|
||||||
/* Output device. */
|
|
||||||
#define NFC_IP_IF_OUT 0x0008
|
|
||||||
/* TOS. */
|
|
||||||
#define NFC_IP_TOS 0x0010
|
|
||||||
/* Protocol. */
|
|
||||||
#define NFC_IP_PROTO 0x0020
|
|
||||||
/* IP options. */
|
|
||||||
#define NFC_IP_OPTIONS 0x0040
|
|
||||||
/* Frag & flags. */
|
|
||||||
#define NFC_IP_FRAG 0x0080
|
|
||||||
|
|
||||||
/* Per-protocol information: only matters if proto match. */
|
|
||||||
/* TCP flags. */
|
|
||||||
#define NFC_IP_TCPFLAGS 0x0100
|
|
||||||
/* Source port. */
|
|
||||||
#define NFC_IP_SRC_PT 0x0200
|
|
||||||
/* Dest port. */
|
|
||||||
#define NFC_IP_DST_PT 0x0400
|
|
||||||
/* Something else about the proto */
|
|
||||||
#define NFC_IP_PROTO_UNKNOWN 0x2000
|
|
||||||
|
|
||||||
/* IP Hooks */
|
/* IP Hooks */
|
||||||
/* After promisc drops, checksum checks. */
|
/* After promisc drops, checksum checks. */
|
||||||
#define NF_IP_PRE_ROUTING 0
|
#define NF_IP_PRE_ROUTING 0
|
||||||
|
|
|
||||||
|
|
@ -15,35 +15,6 @@
|
||||||
|
|
||||||
#include <limits.h> /* for INT_MIN, INT_MAX */
|
#include <limits.h> /* for INT_MIN, INT_MAX */
|
||||||
|
|
||||||
/* IP Cache bits. */
|
|
||||||
/* Src IP address. */
|
|
||||||
#define NFC_IP6_SRC 0x0001
|
|
||||||
/* Dest IP address. */
|
|
||||||
#define NFC_IP6_DST 0x0002
|
|
||||||
/* Input device. */
|
|
||||||
#define NFC_IP6_IF_IN 0x0004
|
|
||||||
/* Output device. */
|
|
||||||
#define NFC_IP6_IF_OUT 0x0008
|
|
||||||
/* TOS. */
|
|
||||||
#define NFC_IP6_TOS 0x0010
|
|
||||||
/* Protocol. */
|
|
||||||
#define NFC_IP6_PROTO 0x0020
|
|
||||||
/* IP options. */
|
|
||||||
#define NFC_IP6_OPTIONS 0x0040
|
|
||||||
/* Frag & flags. */
|
|
||||||
#define NFC_IP6_FRAG 0x0080
|
|
||||||
|
|
||||||
|
|
||||||
/* Per-protocol information: only matters if proto match. */
|
|
||||||
/* TCP flags. */
|
|
||||||
#define NFC_IP6_TCPFLAGS 0x0100
|
|
||||||
/* Source port. */
|
|
||||||
#define NFC_IP6_SRC_PT 0x0200
|
|
||||||
/* Dest port. */
|
|
||||||
#define NFC_IP6_DST_PT 0x0400
|
|
||||||
/* Something else about the proto */
|
|
||||||
#define NFC_IP6_PROTO_UNKNOWN 0x2000
|
|
||||||
|
|
||||||
/* IP6 Hooks */
|
/* IP6 Hooks */
|
||||||
/* After promisc drops, checksum checks. */
|
/* After promisc drops, checksum checks. */
|
||||||
#define NF_IP6_PRE_ROUTING 0
|
#define NF_IP6_PRE_ROUTING 0
|
||||||
|
|
|
||||||
|
|
@ -153,7 +153,7 @@ enum nlmsgerr_attrs {
|
||||||
#define NETLINK_LIST_MEMBERSHIPS 9
|
#define NETLINK_LIST_MEMBERSHIPS 9
|
||||||
#define NETLINK_CAP_ACK 10
|
#define NETLINK_CAP_ACK 10
|
||||||
#define NETLINK_EXT_ACK 11
|
#define NETLINK_EXT_ACK 11
|
||||||
#define NETLINK_DUMP_STRICT_CHK 12
|
#define NETLINK_GET_STRICT_CHK 12
|
||||||
|
|
||||||
struct nl_pktinfo {
|
struct nl_pktinfo {
|
||||||
__u32 group;
|
__u32 group;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue