mirror of
https://git.proxmox.com/git/mirror_iproute2
synced 2025-11-03 12:26:45 +00:00
Update kernel headers
Update kernel headers to commit:
c431047c4efe ("enetc: add support Credit Based Shaper(CBS) for hardware offload")
Signed-off-by: David Ahern <dsahern@gmail.com>
This commit is contained in:
parent
482fd40adf
commit
7438afd2cc
@ -173,6 +173,7 @@ enum bpf_prog_type {
|
||||
BPF_PROG_TYPE_CGROUP_SYSCTL,
|
||||
BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE,
|
||||
BPF_PROG_TYPE_CGROUP_SOCKOPT,
|
||||
BPF_PROG_TYPE_TRACING,
|
||||
};
|
||||
|
||||
enum bpf_attach_type {
|
||||
@ -199,6 +200,9 @@ enum bpf_attach_type {
|
||||
BPF_CGROUP_UDP6_RECVMSG,
|
||||
BPF_CGROUP_GETSOCKOPT,
|
||||
BPF_CGROUP_SETSOCKOPT,
|
||||
BPF_TRACE_RAW_TP,
|
||||
BPF_TRACE_FENTRY,
|
||||
BPF_TRACE_FEXIT,
|
||||
__MAX_BPF_ATTACH_TYPE
|
||||
};
|
||||
|
||||
@ -344,6 +348,9 @@ enum bpf_attach_type {
|
||||
/* Clone map from listener for newly accepted socket */
|
||||
#define BPF_F_CLONE (1U << 9)
|
||||
|
||||
/* Enable memory-mapping BPF map */
|
||||
#define BPF_F_MMAPABLE (1U << 10)
|
||||
|
||||
/* flags for BPF_PROG_QUERY */
|
||||
#define BPF_F_QUERY_EFFECTIVE (1U << 0)
|
||||
|
||||
@ -421,6 +428,7 @@ union bpf_attr {
|
||||
__aligned_u64 line_info; /* line info */
|
||||
__u32 line_info_cnt; /* number of bpf_line_info records */
|
||||
__u32 attach_btf_id; /* in-kernel BTF type id to attach to */
|
||||
__u32 attach_prog_fd; /* 0 to attach to vmlinux */
|
||||
};
|
||||
|
||||
struct { /* anonymous struct used by BPF_OBJ_* commands */
|
||||
@ -561,10 +569,13 @@ union bpf_attr {
|
||||
* Return
|
||||
* 0 on success, or a negative error in case of failure.
|
||||
*
|
||||
* int bpf_probe_read(void *dst, u32 size, const void *src)
|
||||
* int bpf_probe_read(void *dst, u32 size, const void *unsafe_ptr)
|
||||
* Description
|
||||
* For tracing programs, safely attempt to read *size* bytes from
|
||||
* address *src* and store the data in *dst*.
|
||||
* kernel space address *unsafe_ptr* and store the data in *dst*.
|
||||
*
|
||||
* Generally, use bpf_probe_read_user() or bpf_probe_read_kernel()
|
||||
* instead.
|
||||
* Return
|
||||
* 0 on success, or a negative error in case of failure.
|
||||
*
|
||||
@ -1426,45 +1437,14 @@ union bpf_attr {
|
||||
* Return
|
||||
* 0 on success, or a negative error in case of failure.
|
||||
*
|
||||
* int bpf_probe_read_str(void *dst, int size, const void *unsafe_ptr)
|
||||
* int bpf_probe_read_str(void *dst, u32 size, const void *unsafe_ptr)
|
||||
* Description
|
||||
* Copy a NUL terminated string from an unsafe address
|
||||
* *unsafe_ptr* to *dst*. The *size* should include the
|
||||
* terminating NUL byte. In case the string length is smaller than
|
||||
* *size*, the target is not padded with further NUL bytes. If the
|
||||
* string length is larger than *size*, just *size*-1 bytes are
|
||||
* copied and the last byte is set to NUL.
|
||||
* Copy a NUL terminated string from an unsafe kernel address
|
||||
* *unsafe_ptr* to *dst*. See bpf_probe_read_kernel_str() for
|
||||
* more details.
|
||||
*
|
||||
* On success, the length of the copied string is returned. This
|
||||
* makes this helper useful in tracing programs for reading
|
||||
* strings, and more importantly to get its length at runtime. See
|
||||
* the following snippet:
|
||||
*
|
||||
* ::
|
||||
*
|
||||
* SEC("kprobe/sys_open")
|
||||
* void bpf_sys_open(struct pt_regs *ctx)
|
||||
* {
|
||||
* char buf[PATHLEN]; // PATHLEN is defined to 256
|
||||
* int res = bpf_probe_read_str(buf, sizeof(buf),
|
||||
* ctx->di);
|
||||
*
|
||||
* // Consume buf, for example push it to
|
||||
* // userspace via bpf_perf_event_output(); we
|
||||
* // can use res (the string length) as event
|
||||
* // size, after checking its boundaries.
|
||||
* }
|
||||
*
|
||||
* In comparison, using **bpf_probe_read()** helper here instead
|
||||
* to read the string would require to estimate the length at
|
||||
* compile time, and would often result in copying more memory
|
||||
* than necessary.
|
||||
*
|
||||
* Another useful use case is when parsing individual process
|
||||
* arguments or individual environment variables navigating
|
||||
* *current*\ **->mm->arg_start** and *current*\
|
||||
* **->mm->env_start**: using this helper and the return value,
|
||||
* one can quickly iterate at the right offset of the memory area.
|
||||
* Generally, use bpf_probe_read_user_str() or bpf_probe_read_kernel_str()
|
||||
* instead.
|
||||
* Return
|
||||
* On success, the strictly positive length of the string,
|
||||
* including the trailing NUL character. On error, a negative
|
||||
@ -2775,6 +2755,72 @@ union bpf_attr {
|
||||
* restricted to raw_tracepoint bpf programs.
|
||||
* Return
|
||||
* 0 on success, or a negative error in case of failure.
|
||||
*
|
||||
* int bpf_probe_read_user(void *dst, u32 size, const void *unsafe_ptr)
|
||||
* Description
|
||||
* Safely attempt to read *size* bytes from user space address
|
||||
* *unsafe_ptr* and store the data in *dst*.
|
||||
* Return
|
||||
* 0 on success, or a negative error in case of failure.
|
||||
*
|
||||
* int bpf_probe_read_kernel(void *dst, u32 size, const void *unsafe_ptr)
|
||||
* Description
|
||||
* Safely attempt to read *size* bytes from kernel space address
|
||||
* *unsafe_ptr* and store the data in *dst*.
|
||||
* Return
|
||||
* 0 on success, or a negative error in case of failure.
|
||||
*
|
||||
* int bpf_probe_read_user_str(void *dst, u32 size, const void *unsafe_ptr)
|
||||
* Description
|
||||
* Copy a NUL terminated string from an unsafe user address
|
||||
* *unsafe_ptr* to *dst*. The *size* should include the
|
||||
* terminating NUL byte. In case the string length is smaller than
|
||||
* *size*, the target is not padded with further NUL bytes. If the
|
||||
* string length is larger than *size*, just *size*-1 bytes are
|
||||
* copied and the last byte is set to NUL.
|
||||
*
|
||||
* On success, the length of the copied string is returned. This
|
||||
* makes this helper useful in tracing programs for reading
|
||||
* strings, and more importantly to get its length at runtime. See
|
||||
* the following snippet:
|
||||
*
|
||||
* ::
|
||||
*
|
||||
* SEC("kprobe/sys_open")
|
||||
* void bpf_sys_open(struct pt_regs *ctx)
|
||||
* {
|
||||
* char buf[PATHLEN]; // PATHLEN is defined to 256
|
||||
* int res = bpf_probe_read_user_str(buf, sizeof(buf),
|
||||
* ctx->di);
|
||||
*
|
||||
* // Consume buf, for example push it to
|
||||
* // userspace via bpf_perf_event_output(); we
|
||||
* // can use res (the string length) as event
|
||||
* // size, after checking its boundaries.
|
||||
* }
|
||||
*
|
||||
* In comparison, using **bpf_probe_read_user()** helper here
|
||||
* instead to read the string would require to estimate the length
|
||||
* at compile time, and would often result in copying more memory
|
||||
* than necessary.
|
||||
*
|
||||
* Another useful use case is when parsing individual process
|
||||
* arguments or individual environment variables navigating
|
||||
* *current*\ **->mm->arg_start** and *current*\
|
||||
* **->mm->env_start**: using this helper and the return value,
|
||||
* one can quickly iterate at the right offset of the memory area.
|
||||
* Return
|
||||
* On success, the strictly positive length of the string,
|
||||
* including the trailing NUL character. On error, a negative
|
||||
* value.
|
||||
*
|
||||
* int bpf_probe_read_kernel_str(void *dst, u32 size, const void *unsafe_ptr)
|
||||
* Description
|
||||
* Copy a NUL terminated string from an unsafe kernel address *unsafe_ptr*
|
||||
* to *dst*. Same semantics as with bpf_probe_read_user_str() apply.
|
||||
* Return
|
||||
* On success, the strictly positive length of the string, including
|
||||
* the trailing NUL character. On error, a negative value.
|
||||
*/
|
||||
#define __BPF_FUNC_MAPPER(FN) \
|
||||
FN(unspec), \
|
||||
@ -2888,7 +2934,11 @@ union bpf_attr {
|
||||
FN(sk_storage_delete), \
|
||||
FN(send_signal), \
|
||||
FN(tcp_gen_syncookie), \
|
||||
FN(skb_output),
|
||||
FN(skb_output), \
|
||||
FN(probe_read_user), \
|
||||
FN(probe_read_kernel), \
|
||||
FN(probe_read_user_str), \
|
||||
FN(probe_read_kernel_str),
|
||||
|
||||
/* integer value in 'imm' field of BPF_CALL instruction selects which helper
|
||||
* function eBPF program intends to call
|
||||
|
||||
@ -426,7 +426,6 @@ enum devlink_attr {
|
||||
DEVLINK_ATTR_NETNS_FD, /* u32 */
|
||||
DEVLINK_ATTR_NETNS_PID, /* u32 */
|
||||
DEVLINK_ATTR_NETNS_ID, /* u32 */
|
||||
|
||||
/* add new attributes above here, update the policy in devlink.c */
|
||||
|
||||
__DEVLINK_ATTR_MAX,
|
||||
|
||||
@ -13,6 +13,7 @@ enum {
|
||||
TCA_STATS_RATE_EST64,
|
||||
TCA_STATS_PAD,
|
||||
TCA_STATS_BASIC_HW,
|
||||
TCA_STATS_PKT64,
|
||||
__TCA_STATS_MAX,
|
||||
};
|
||||
#define TCA_STATS_MAX (__TCA_STATS_MAX - 1)
|
||||
@ -26,10 +27,6 @@ struct gnet_stats_basic {
|
||||
__u64 bytes;
|
||||
__u32 packets;
|
||||
};
|
||||
struct gnet_stats_basic_packed {
|
||||
__u64 bytes;
|
||||
__u32 packets;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
/**
|
||||
* struct gnet_stats_rate_est - rate estimator
|
||||
|
||||
@ -27,6 +27,7 @@ enum lwtunnel_ip_t {
|
||||
LWTUNNEL_IP_TOS,
|
||||
LWTUNNEL_IP_FLAGS,
|
||||
LWTUNNEL_IP_PAD,
|
||||
LWTUNNEL_IP_OPTS,
|
||||
__LWTUNNEL_IP_MAX,
|
||||
};
|
||||
|
||||
@ -41,11 +42,51 @@ enum lwtunnel_ip6_t {
|
||||
LWTUNNEL_IP6_TC,
|
||||
LWTUNNEL_IP6_FLAGS,
|
||||
LWTUNNEL_IP6_PAD,
|
||||
LWTUNNEL_IP6_OPTS,
|
||||
__LWTUNNEL_IP6_MAX,
|
||||
};
|
||||
|
||||
#define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1)
|
||||
|
||||
enum {
|
||||
LWTUNNEL_IP_OPTS_UNSPEC,
|
||||
LWTUNNEL_IP_OPTS_GENEVE,
|
||||
LWTUNNEL_IP_OPTS_VXLAN,
|
||||
LWTUNNEL_IP_OPTS_ERSPAN,
|
||||
__LWTUNNEL_IP_OPTS_MAX,
|
||||
};
|
||||
|
||||
#define LWTUNNEL_IP_OPTS_MAX (__LWTUNNEL_IP_OPTS_MAX - 1)
|
||||
|
||||
enum {
|
||||
LWTUNNEL_IP_OPT_GENEVE_UNSPEC,
|
||||
LWTUNNEL_IP_OPT_GENEVE_CLASS,
|
||||
LWTUNNEL_IP_OPT_GENEVE_TYPE,
|
||||
LWTUNNEL_IP_OPT_GENEVE_DATA,
|
||||
__LWTUNNEL_IP_OPT_GENEVE_MAX,
|
||||
};
|
||||
|
||||
#define LWTUNNEL_IP_OPT_GENEVE_MAX (__LWTUNNEL_IP_OPT_GENEVE_MAX - 1)
|
||||
|
||||
enum {
|
||||
LWTUNNEL_IP_OPT_VXLAN_UNSPEC,
|
||||
LWTUNNEL_IP_OPT_VXLAN_GBP,
|
||||
__LWTUNNEL_IP_OPT_VXLAN_MAX,
|
||||
};
|
||||
|
||||
#define LWTUNNEL_IP_OPT_VXLAN_MAX (__LWTUNNEL_IP_OPT_VXLAN_MAX - 1)
|
||||
|
||||
enum {
|
||||
LWTUNNEL_IP_OPT_ERSPAN_UNSPEC,
|
||||
LWTUNNEL_IP_OPT_ERSPAN_VER,
|
||||
LWTUNNEL_IP_OPT_ERSPAN_INDEX,
|
||||
LWTUNNEL_IP_OPT_ERSPAN_DIR,
|
||||
LWTUNNEL_IP_OPT_ERSPAN_HWID,
|
||||
__LWTUNNEL_IP_OPT_ERSPAN_MAX,
|
||||
};
|
||||
|
||||
#define LWTUNNEL_IP_OPT_ERSPAN_MAX (__LWTUNNEL_IP_OPT_ERSPAN_MAX - 1)
|
||||
|
||||
enum {
|
||||
LWT_BPF_PROG_UNSPEC,
|
||||
LWT_BPF_PROG_FD,
|
||||
|
||||
@ -205,6 +205,8 @@ enum ipset_cadt_flags {
|
||||
IPSET_FLAG_WITH_FORCEADD = (1 << IPSET_FLAG_BIT_WITH_FORCEADD),
|
||||
IPSET_FLAG_BIT_WITH_SKBINFO = 6,
|
||||
IPSET_FLAG_WITH_SKBINFO = (1 << IPSET_FLAG_BIT_WITH_SKBINFO),
|
||||
IPSET_FLAG_BIT_IFACE_WILDCARD = 7,
|
||||
IPSET_FLAG_IFACE_WILDCARD = (1 << IPSET_FLAG_BIT_IFACE_WILDCARD),
|
||||
IPSET_FLAG_CADT_MAX = 15,
|
||||
};
|
||||
|
||||
|
||||
@ -571,6 +571,14 @@ enum {
|
||||
* TCA_FLOWER_KEY_ENC_OPT_GENEVE_
|
||||
* attributes
|
||||
*/
|
||||
TCA_FLOWER_KEY_ENC_OPTS_VXLAN, /* Nested
|
||||
* TCA_FLOWER_KEY_ENC_OPT_VXLAN_
|
||||
* attributes
|
||||
*/
|
||||
TCA_FLOWER_KEY_ENC_OPTS_ERSPAN, /* Nested
|
||||
* TCA_FLOWER_KEY_ENC_OPT_ERSPAN_
|
||||
* attributes
|
||||
*/
|
||||
__TCA_FLOWER_KEY_ENC_OPTS_MAX,
|
||||
};
|
||||
|
||||
@ -588,6 +596,27 @@ enum {
|
||||
#define TCA_FLOWER_KEY_ENC_OPT_GENEVE_MAX \
|
||||
(__TCA_FLOWER_KEY_ENC_OPT_GENEVE_MAX - 1)
|
||||
|
||||
enum {
|
||||
TCA_FLOWER_KEY_ENC_OPT_VXLAN_UNSPEC,
|
||||
TCA_FLOWER_KEY_ENC_OPT_VXLAN_GBP, /* u32 */
|
||||
__TCA_FLOWER_KEY_ENC_OPT_VXLAN_MAX,
|
||||
};
|
||||
|
||||
#define TCA_FLOWER_KEY_ENC_OPT_VXLAN_MAX \
|
||||
(__TCA_FLOWER_KEY_ENC_OPT_VXLAN_MAX - 1)
|
||||
|
||||
enum {
|
||||
TCA_FLOWER_KEY_ENC_OPT_ERSPAN_UNSPEC,
|
||||
TCA_FLOWER_KEY_ENC_OPT_ERSPAN_VER, /* u8 */
|
||||
TCA_FLOWER_KEY_ENC_OPT_ERSPAN_INDEX, /* be32 */
|
||||
TCA_FLOWER_KEY_ENC_OPT_ERSPAN_DIR, /* u8 */
|
||||
TCA_FLOWER_KEY_ENC_OPT_ERSPAN_HWID, /* u8 */
|
||||
__TCA_FLOWER_KEY_ENC_OPT_ERSPAN_MAX,
|
||||
};
|
||||
|
||||
#define TCA_FLOWER_KEY_ENC_OPT_ERSPAN_MAX \
|
||||
(__TCA_FLOWER_KEY_ENC_OPT_ERSPAN_MAX - 1)
|
||||
|
||||
enum {
|
||||
TCA_FLOWER_KEY_FLAGS_IS_FRAGMENT = (1 << 0),
|
||||
TCA_FLOWER_KEY_FLAGS_FRAG_IS_FIRST = (1 << 1),
|
||||
|
||||
@ -950,19 +950,25 @@ enum {
|
||||
TCA_PIE_BETA,
|
||||
TCA_PIE_ECN,
|
||||
TCA_PIE_BYTEMODE,
|
||||
TCA_PIE_DQ_RATE_ESTIMATOR,
|
||||
__TCA_PIE_MAX
|
||||
};
|
||||
#define TCA_PIE_MAX (__TCA_PIE_MAX - 1)
|
||||
|
||||
struct tc_pie_xstats {
|
||||
__u64 prob; /* current probability */
|
||||
__u32 delay; /* current delay in ms */
|
||||
__u32 avg_dq_rate; /* current average dq_rate in bits/pie_time */
|
||||
__u32 packets_in; /* total number of packets enqueued */
|
||||
__u32 dropped; /* packets dropped due to pie_action */
|
||||
__u32 overlimit; /* dropped due to lack of space in queue */
|
||||
__u32 maxq; /* maximum queue size */
|
||||
__u32 ecn_mark; /* packets marked with ecn*/
|
||||
__u64 prob; /* current probability */
|
||||
__u32 delay; /* current delay in ms */
|
||||
__u32 avg_dq_rate; /* current average dq_rate in
|
||||
* bits/pie_time
|
||||
*/
|
||||
__u32 dq_rate_estimating; /* is avg_dq_rate being calculated? */
|
||||
__u32 packets_in; /* total number of packets enqueued */
|
||||
__u32 dropped; /* packets dropped due to pie_action */
|
||||
__u32 overlimit; /* dropped due to lack of space
|
||||
* in queue
|
||||
*/
|
||||
__u32 maxq; /* maximum queue size */
|
||||
__u32 ecn_mark; /* packets marked with ecn*/
|
||||
};
|
||||
|
||||
/* CBS */
|
||||
|
||||
@ -105,6 +105,7 @@ typedef __s32 sctp_assoc_t;
|
||||
#define SCTP_DEFAULT_SNDINFO 34
|
||||
#define SCTP_AUTH_DEACTIVATE_KEY 35
|
||||
#define SCTP_REUSE_PORT 36
|
||||
#define SCTP_PEER_ADDR_THLDS_V2 37
|
||||
|
||||
/* Internal Socket Options. Some of the sctp library functions are
|
||||
* implemented using these socket options.
|
||||
@ -137,6 +138,8 @@ typedef __s32 sctp_assoc_t;
|
||||
#define SCTP_ASCONF_SUPPORTED 128
|
||||
#define SCTP_AUTH_SUPPORTED 129
|
||||
#define SCTP_ECN_SUPPORTED 130
|
||||
#define SCTP_EXPOSE_POTENTIALLY_FAILED_STATE 131
|
||||
#define SCTP_EXPOSE_PF_STATE SCTP_EXPOSE_POTENTIALLY_FAILED_STATE
|
||||
|
||||
/* PR-SCTP policies */
|
||||
#define SCTP_PR_SCTP_NONE 0x0000
|
||||
@ -410,6 +413,8 @@ enum sctp_spc_state {
|
||||
SCTP_ADDR_ADDED,
|
||||
SCTP_ADDR_MADE_PRIM,
|
||||
SCTP_ADDR_CONFIRMED,
|
||||
SCTP_ADDR_POTENTIALLY_FAILED,
|
||||
#define SCTP_ADDR_PF SCTP_ADDR_POTENTIALLY_FAILED
|
||||
};
|
||||
|
||||
|
||||
@ -931,6 +936,7 @@ struct sctp_paddrinfo {
|
||||
enum sctp_spinfo_state {
|
||||
SCTP_INACTIVE,
|
||||
SCTP_PF,
|
||||
#define SCTP_POTENTIALLY_FAILED SCTP_PF
|
||||
SCTP_ACTIVE,
|
||||
SCTP_UNCONFIRMED,
|
||||
SCTP_UNKNOWN = 0xffff /* Value used for transport state unknown */
|
||||
@ -1076,6 +1082,15 @@ struct sctp_paddrthlds {
|
||||
__u16 spt_pathpfthld;
|
||||
};
|
||||
|
||||
/* Use a new structure with spt_pathcpthld for back compatibility */
|
||||
struct sctp_paddrthlds_v2 {
|
||||
sctp_assoc_t spt_assoc_id;
|
||||
struct sockaddr_storage spt_address;
|
||||
__u16 spt_pathmaxrxt;
|
||||
__u16 spt_pathpfthld;
|
||||
__u16 spt_pathcpthld;
|
||||
};
|
||||
|
||||
/*
|
||||
* Socket Option for Getting the Association/Stream-Specific PR-SCTP Status
|
||||
*/
|
||||
|
||||
@ -50,6 +50,14 @@ enum {
|
||||
* TCA_TUNNEL_KEY_ENC_OPTS_
|
||||
* attributes
|
||||
*/
|
||||
TCA_TUNNEL_KEY_ENC_OPTS_VXLAN, /* Nested
|
||||
* TCA_TUNNEL_KEY_ENC_OPTS_
|
||||
* attributes
|
||||
*/
|
||||
TCA_TUNNEL_KEY_ENC_OPTS_ERSPAN, /* Nested
|
||||
* TCA_TUNNEL_KEY_ENC_OPTS_
|
||||
* attributes
|
||||
*/
|
||||
__TCA_TUNNEL_KEY_ENC_OPTS_MAX,
|
||||
};
|
||||
|
||||
@ -67,4 +75,25 @@ enum {
|
||||
#define TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX \
|
||||
(__TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX - 1)
|
||||
|
||||
enum {
|
||||
TCA_TUNNEL_KEY_ENC_OPT_VXLAN_UNSPEC,
|
||||
TCA_TUNNEL_KEY_ENC_OPT_VXLAN_GBP, /* u32 */
|
||||
__TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX,
|
||||
};
|
||||
|
||||
#define TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX \
|
||||
(__TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX - 1)
|
||||
|
||||
enum {
|
||||
TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_UNSPEC,
|
||||
TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_VER, /* u8 */
|
||||
TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_INDEX, /* be32 */
|
||||
TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_DIR, /* u8 */
|
||||
TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_HWID, /* u8 */
|
||||
__TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX,
|
||||
};
|
||||
|
||||
#define TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX \
|
||||
(__TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX - 1)
|
||||
|
||||
#endif
|
||||
|
||||
@ -233,6 +233,27 @@ struct tipc_sioc_nodeid_req {
|
||||
char node_id[TIPC_NODEID_LEN];
|
||||
};
|
||||
|
||||
/*
|
||||
* TIPC Crypto, AEAD
|
||||
*/
|
||||
#define TIPC_AEAD_ALG_NAME (32)
|
||||
|
||||
struct tipc_aead_key {
|
||||
char alg_name[TIPC_AEAD_ALG_NAME];
|
||||
unsigned int keylen; /* in bytes */
|
||||
char key[];
|
||||
};
|
||||
|
||||
#define TIPC_AEAD_KEYLEN_MIN (16 + 4)
|
||||
#define TIPC_AEAD_KEYLEN_MAX (32 + 4)
|
||||
#define TIPC_AEAD_KEY_SIZE_MAX (sizeof(struct tipc_aead_key) + \
|
||||
TIPC_AEAD_KEYLEN_MAX)
|
||||
|
||||
static __inline__ int tipc_aead_key_size(struct tipc_aead_key *key)
|
||||
{
|
||||
return sizeof(*key) + key->keylen;
|
||||
}
|
||||
|
||||
/* The macros and functions below are deprecated:
|
||||
*/
|
||||
|
||||
|
||||
@ -63,6 +63,8 @@ enum {
|
||||
TIPC_NL_PEER_REMOVE,
|
||||
TIPC_NL_BEARER_ADD,
|
||||
TIPC_NL_UDP_GET_REMOTEIP,
|
||||
TIPC_NL_KEY_SET,
|
||||
TIPC_NL_KEY_FLUSH,
|
||||
|
||||
__TIPC_NL_CMD_MAX,
|
||||
TIPC_NL_CMD_MAX = __TIPC_NL_CMD_MAX - 1
|
||||
@ -160,6 +162,8 @@ enum {
|
||||
TIPC_NLA_NODE_UNSPEC,
|
||||
TIPC_NLA_NODE_ADDR, /* u32 */
|
||||
TIPC_NLA_NODE_UP, /* flag */
|
||||
TIPC_NLA_NODE_ID, /* data */
|
||||
TIPC_NLA_NODE_KEY, /* data */
|
||||
|
||||
__TIPC_NLA_NODE_MAX,
|
||||
TIPC_NLA_NODE_MAX = __TIPC_NLA_NODE_MAX - 1
|
||||
|
||||
Loading…
Reference in New Issue
Block a user