111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/****************************************************************************
211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************
311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ***
411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ***   This header was automatically generated from a Linux kernel header
511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ***   of the same name, to make information necessary for userspace to
611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ***   call into the kernel available to libc.  It contains only constants,
711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ***   structures, and macros generated from the original header, and thus,
811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ***   contains no copyrightable information.
911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ***
1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************
1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************/
1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef _LINUX_PFKEY2_H
1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _LINUX_PFKEY2_H
1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/types.h>
1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PF_KEY_V2 2
1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PFKEYV2_REVISION 199806L
1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_msg {
2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_msg_version;
2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_msg_type;
2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_msg_errno;
2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_msg_satype;
2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_msg_len;
2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_msg_reserved;
2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_msg_seq;
2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_msg_pid;
2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_ext {
3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_ext_len;
3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_ext_type;
3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_sa {
3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_sa_len;
3811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_sa_exttype;
3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_sa_spi;
4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_sa_replay;
4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_sa_state;
4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_sa_auth;
4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_sa_encrypt;
4411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_sa_flags;
4511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
4611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
4711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_lifetime {
4811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_lifetime_len;
4911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_lifetime_exttype;
5011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_lifetime_allocations;
5111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_lifetime_bytes;
5211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_lifetime_addtime;
5311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_lifetime_usetime;
5411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
5511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
5611cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_address {
5711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_address_len;
5811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_address_exttype;
5911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_address_proto;
6011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_address_prefixlen;
6111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_address_reserved;
6211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
6311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
6411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_key {
6511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_key_len;
6611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_key_exttype;
6711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_key_bits;
6811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_key_reserved;
6911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
7011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
7111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_ident {
7211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_ident_len;
7311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_ident_exttype;
7411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_ident_type;
7511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_ident_reserved;
7611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_ident_id;
7711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
7811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
7911cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_sens {
8011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_sens_len;
8111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_sens_exttype;
8211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_sens_dpd;
8311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_sens_sens_level;
8411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_sens_sens_len;
8511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_sens_integ_level;
8611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_sens_integ_len;
8711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_sens_reserved;
8811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
8911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
9011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_prop {
9111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_prop_len;
9211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_prop_exttype;
9311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_prop_replay;
9411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_prop_reserved[3];
9511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
9611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
9711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_comb {
9811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_comb_auth;
9911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_comb_encrypt;
10011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_comb_flags;
10111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_comb_auth_minbits;
10211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_comb_auth_maxbits;
10311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_comb_encrypt_minbits;
10411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_comb_encrypt_maxbits;
10511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_comb_reserved;
10611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_comb_soft_allocations;
10711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_comb_hard_allocations;
10811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_comb_soft_bytes;
10911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_comb_hard_bytes;
11011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_comb_soft_addtime;
11111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_comb_hard_addtime;
11211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_comb_soft_usetime;
11311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint64_t sadb_comb_hard_usetime;
11411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
11511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
11611cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_supported {
11711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_supported_len;
11811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_supported_exttype;
11911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_supported_reserved;
12011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
12111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
12211cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_alg {
12311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_alg_id;
12411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_alg_ivlen;
12511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_alg_minbits;
12611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_alg_maxbits;
12711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_alg_reserved;
12811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
12911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
13011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_spirange {
13111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_spirange_len;
13211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_spirange_exttype;
13311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_spirange_min;
13411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_spirange_max;
13511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_spirange_reserved;
13611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
13711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
13811cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_x_kmprivate {
13911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_kmprivate_len;
14011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_kmprivate_exttype;
14111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_x_kmprivate_reserved;
14211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
14311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
14411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_x_sa2 {
14511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_sa2_len;
14611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_sa2_exttype;
14711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_sa2_mode;
14811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_sa2_reserved1;
14911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_sa2_reserved2;
15011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_x_sa2_sequence;
15111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_x_sa2_reqid;
15211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
15311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
15411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_x_policy {
15511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_policy_len;
15611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_policy_exttype;
15711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_policy_type;
15811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_policy_dir;
15911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_policy_reserved;
16011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_x_policy_id;
16111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_x_policy_priority;
16211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
16311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
16411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_x_ipsecrequest {
16511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_ipsecrequest_len;
16611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_ipsecrequest_proto;
16711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_ipsecrequest_mode;
16811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_ipsecrequest_level;
16911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_ipsecrequest_reserved1;
17011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_x_ipsecrequest_reqid;
17111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint32_t sadb_x_ipsecrequest_reserved2;
17211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
17311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
17411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_x_nat_t_type {
17511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_nat_t_type_len;
17611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_nat_t_type_exttype;
17711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_nat_t_type_type;
17811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_nat_t_type_reserved[3];
17911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
18011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
18111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_x_nat_t_port {
18211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_nat_t_port_len;
18311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_nat_t_port_exttype;
18411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_nat_t_port_port;
18511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_nat_t_port_reserved;
18611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
18711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
18811cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sadb_x_sec_ctx {
18911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_sec_len;
19011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_sec_exttype;
19111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_ctx_alg;
19211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint8_t sadb_x_ctx_doi;
19311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert uint16_t sadb_x_ctx_len;
19411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __attribute__((packed));
19511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
19611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_RESERVED 0
19711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_GETSPI 1
19811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_UPDATE 2
19911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_ADD 3
20011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_DELETE 4
20111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_GET 5
20211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_ACQUIRE 6
20311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_REGISTER 7
20411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXPIRE 8
20511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_FLUSH 9
20611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_DUMP 10
20711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_PROMISC 11
20811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_PCHANGE 12
20911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDUPDATE 13
21011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDADD 14
21111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDDELETE 15
21211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDGET 16
21311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDACQUIRE 17
21411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDDUMP 18
21511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDFLUSH 19
21611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDSETIDX 20
21711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDEXPIRE 21
21811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SPDDELETE2 22
21911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_NAT_T_NEW_MAPPING 23
22011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_MAX 23
22111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
22211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SAFLAGS_PFS 1
22311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SAFLAGS_NOPMTUDISC 0x20000000
22411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SAFLAGS_DECAP_DSCP 0x40000000
22511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SAFLAGS_NOECN 0x80000000
22611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
22711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SASTATE_LARVAL 0
22811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SASTATE_MATURE 1
22911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SASTATE_DYING 2
23011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SASTATE_DEAD 3
23111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SASTATE_MAX 3
23211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
23311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SATYPE_UNSPEC 0
23411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SATYPE_AH 2
23511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SATYPE_ESP 3
23611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SATYPE_RSVP 5
23711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SATYPE_OSPFV2 6
23811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SATYPE_RIPV2 7
23911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SATYPE_MIP 8
24011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_SATYPE_IPCOMP 9
24111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_SATYPE_MAX 9
24211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
24311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_AALG_NONE 0
24411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_AALG_MD5HMAC 2
24511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_AALG_SHA1HMAC 3
24611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_AALG_SHA2_256HMAC 5
24711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_AALG_SHA2_384HMAC 6
24811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_AALG_SHA2_512HMAC 7
24911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_AALG_RIPEMD160HMAC 8
25011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_AALG_NULL 251
25111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_AALG_MAX 251
25211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
25311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EALG_NONE 0
25411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EALG_DESCBC 2
25511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EALG_3DESCBC 3
25611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EALG_CASTCBC 6
25711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EALG_BLOWFISHCBC 7
25811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EALG_NULL 11
25911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EALG_AESCBC 12
26011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EALG_MAX 253
26111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
26211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EALG_SERPENTCBC 252
26311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EALG_TWOFISHCBC 253
26411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
26511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_CALG_NONE 0
26611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_CALG_OUI 1
26711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_CALG_DEFLATE 2
26811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_CALG_LZS 3
26911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_CALG_LZJH 4
27011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_CALG_MAX 4
27111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
27211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_RESERVED 0
27311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_SA 1
27411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_LIFETIME_CURRENT 2
27511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_LIFETIME_HARD 3
27611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_LIFETIME_SOFT 4
27711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_ADDRESS_SRC 5
27811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_ADDRESS_DST 6
27911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_ADDRESS_PROXY 7
28011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_KEY_AUTH 8
28111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_KEY_ENCRYPT 9
28211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_IDENTITY_SRC 10
28311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_IDENTITY_DST 11
28411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_SENSITIVITY 12
28511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_PROPOSAL 13
28611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_SUPPORTED_AUTH 14
28711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_SUPPORTED_ENCRYPT 15
28811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_SPIRANGE 16
28911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EXT_KMPRIVATE 17
29011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EXT_POLICY 18
29111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EXT_SA2 19
29211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
29311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EXT_NAT_T_TYPE 20
29411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EXT_NAT_T_SPORT 21
29511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EXT_NAT_T_DPORT 22
29611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EXT_NAT_T_OA 23
29711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_X_EXT_SEC_CTX 24
29811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_EXT_MAX 24
29911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
30011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_IDENTTYPE_RESERVED 0
30111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_IDENTTYPE_PREFIX 1
30211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_IDENTTYPE_FQDN 2
30311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_IDENTTYPE_USERFQDN 3
30411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SADB_IDENTTYPE_MAX 3
30511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert
30611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif
307