blob: 67a85150c01efdc763a9631feacb7be43cab04e4 [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _LINUX_XFRM_H
20#define _LINUX_XFRM_H
Christopher Ferris05d08e92016-02-04 13:16:38 -080021#include <linux/in6.h>
Ben Cheng655a7c02013-10-16 16:09:24 -070022#include <linux/types.h>
Ben Cheng655a7c02013-10-16 16:09:24 -070023/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -080024typedef union {
Tao Baod7db5942015-01-28 10:07:51 -080025 __be32 a4;
26 __be32 a6[4];
Christopher Ferris05d08e92016-02-04 13:16:38 -080027 struct in6_addr in6;
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070029} xfrm_address_t;
30struct xfrm_id {
Tao Baod7db5942015-01-28 10:07:51 -080031 xfrm_address_t daddr;
32 __be32 spi;
Christopher Ferris05d08e92016-02-04 13:16:38 -080033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080034 __u8 proto;
Ben Cheng655a7c02013-10-16 16:09:24 -070035};
Ben Cheng655a7c02013-10-16 16:09:24 -070036struct xfrm_sec_ctx {
Tao Baod7db5942015-01-28 10:07:51 -080037 __u8 ctx_doi;
Christopher Ferris05d08e92016-02-04 13:16:38 -080038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080039 __u8 ctx_alg;
40 __u16 ctx_len;
Tao Baod7db5942015-01-28 10:07:51 -080041 __u32 ctx_sid;
42 char ctx_str[0];
Christopher Ferris05d08e92016-02-04 13:16:38 -080043/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070044};
45#define XFRM_SC_DOI_RESERVED 0
Ben Cheng655a7c02013-10-16 16:09:24 -070046#define XFRM_SC_DOI_LSM 1
47#define XFRM_SC_ALG_RESERVED 0
Christopher Ferris05d08e92016-02-04 13:16:38 -080048/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070049#define XFRM_SC_ALG_SELINUX 1
50struct xfrm_selector {
Tao Baod7db5942015-01-28 10:07:51 -080051 xfrm_address_t daddr;
52 xfrm_address_t saddr;
Christopher Ferris05d08e92016-02-04 13:16:38 -080053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080054 __be16 dport;
55 __be16 dport_mask;
Tao Baod7db5942015-01-28 10:07:51 -080056 __be16 sport;
57 __be16 sport_mask;
Christopher Ferris05d08e92016-02-04 13:16:38 -080058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080059 __u16 family;
60 __u8 prefixlen_d;
Tao Baod7db5942015-01-28 10:07:51 -080061 __u8 prefixlen_s;
62 __u8 proto;
Christopher Ferris05d08e92016-02-04 13:16:38 -080063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080064 int ifindex;
65 __kernel_uid32_t user;
Ben Cheng655a7c02013-10-16 16:09:24 -070066};
Tao Baod7db5942015-01-28 10:07:51 -080067#define XFRM_INF (~(__u64) 0)
Christopher Ferris05d08e92016-02-04 13:16:38 -080068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070069struct xfrm_lifetime_cfg {
Tao Baod7db5942015-01-28 10:07:51 -080070 __u64 soft_byte_limit;
Tao Baod7db5942015-01-28 10:07:51 -080071 __u64 hard_byte_limit;
72 __u64 soft_packet_limit;
Christopher Ferris05d08e92016-02-04 13:16:38 -080073/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080074 __u64 hard_packet_limit;
75 __u64 soft_add_expires_seconds;
Tao Baod7db5942015-01-28 10:07:51 -080076 __u64 hard_add_expires_seconds;
77 __u64 soft_use_expires_seconds;
Christopher Ferris05d08e92016-02-04 13:16:38 -080078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080079 __u64 hard_use_expires_seconds;
Ben Cheng655a7c02013-10-16 16:09:24 -070080};
Ben Cheng655a7c02013-10-16 16:09:24 -070081struct xfrm_lifetime_cur {
Tao Baod7db5942015-01-28 10:07:51 -080082 __u64 bytes;
Christopher Ferris05d08e92016-02-04 13:16:38 -080083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080084 __u64 packets;
85 __u64 add_time;
Tao Baod7db5942015-01-28 10:07:51 -080086 __u64 use_time;
Ben Cheng655a7c02013-10-16 16:09:24 -070087};
Christopher Ferris05d08e92016-02-04 13:16:38 -080088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070089struct xfrm_replay_state {
Tao Baod7db5942015-01-28 10:07:51 -080090 __u32 oseq;
Tao Baod7db5942015-01-28 10:07:51 -080091 __u32 seq;
92 __u32 bitmap;
Christopher Ferris05d08e92016-02-04 13:16:38 -080093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070094};
95#define XFRMA_REPLAY_ESN_MAX 4096
Ben Cheng655a7c02013-10-16 16:09:24 -070096struct xfrm_replay_state_esn {
Tao Baod7db5942015-01-28 10:07:51 -080097 unsigned int bmp_len;
Christopher Ferris05d08e92016-02-04 13:16:38 -080098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080099 __u32 oseq;
100 __u32 seq;
Tao Baod7db5942015-01-28 10:07:51 -0800101 __u32 oseq_hi;
102 __u32 seq_hi;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800104 __u32 replay_window;
105 __u32 bmp[0];
Ben Cheng655a7c02013-10-16 16:09:24 -0700106};
107struct xfrm_algo {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800109 char alg_name[64];
110 unsigned int alg_key_len;
Tao Baod7db5942015-01-28 10:07:51 -0800111 char alg_key[0];
Ben Cheng655a7c02013-10-16 16:09:24 -0700112};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700114struct xfrm_algo_auth {
Tao Baod7db5942015-01-28 10:07:51 -0800115 char alg_name[64];
Tao Baod7db5942015-01-28 10:07:51 -0800116 unsigned int alg_key_len;
117 unsigned int alg_trunc_len;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800119 char alg_key[0];
Ben Cheng655a7c02013-10-16 16:09:24 -0700120};
Ben Cheng655a7c02013-10-16 16:09:24 -0700121struct xfrm_algo_aead {
Tao Baod7db5942015-01-28 10:07:51 -0800122 char alg_name[64];
Christopher Ferris05d08e92016-02-04 13:16:38 -0800123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800124 unsigned int alg_key_len;
125 unsigned int alg_icv_len;
Tao Baod7db5942015-01-28 10:07:51 -0800126 char alg_key[0];
Ben Cheng655a7c02013-10-16 16:09:24 -0700127};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700129struct xfrm_stats {
Tao Baod7db5942015-01-28 10:07:51 -0800130 __u32 replay_window;
Tao Baod7db5942015-01-28 10:07:51 -0800131 __u32 replay;
132 __u32 integrity_failed;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700134};
135enum {
Tao Baod7db5942015-01-28 10:07:51 -0800136 XFRM_POLICY_TYPE_MAIN = 0,
137 XFRM_POLICY_TYPE_SUB = 1,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800139 XFRM_POLICY_TYPE_MAX = 2,
140 XFRM_POLICY_TYPE_ANY = 255
Ben Cheng655a7c02013-10-16 16:09:24 -0700141};
142enum {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800144 XFRM_POLICY_IN = 0,
145 XFRM_POLICY_OUT = 1,
Tao Baod7db5942015-01-28 10:07:51 -0800146 XFRM_POLICY_FWD = 2,
147 XFRM_POLICY_MASK = 3,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800149 XFRM_POLICY_MAX = 3
Ben Cheng655a7c02013-10-16 16:09:24 -0700150};
Ben Cheng655a7c02013-10-16 16:09:24 -0700151enum {
Tao Baod7db5942015-01-28 10:07:51 -0800152 XFRM_SHARE_ANY,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800154 XFRM_SHARE_SESSION,
155 XFRM_SHARE_USER,
Tao Baod7db5942015-01-28 10:07:51 -0800156 XFRM_SHARE_UNIQUE
Ben Cheng655a7c02013-10-16 16:09:24 -0700157};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700159#define XFRM_MODE_TRANSPORT 0
160#define XFRM_MODE_TUNNEL 1
Ben Cheng655a7c02013-10-16 16:09:24 -0700161#define XFRM_MODE_ROUTEOPTIMIZATION 2
162#define XFRM_MODE_IN_TRIGGER 3
Christopher Ferris05d08e92016-02-04 13:16:38 -0800163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700164#define XFRM_MODE_BEET 4
165#define XFRM_MODE_MAX 5
Ben Cheng655a7c02013-10-16 16:09:24 -0700166enum {
Tao Baod7db5942015-01-28 10:07:51 -0800167 XFRM_MSG_BASE = 0x10,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800169 XFRM_MSG_NEWSA = 0x10,
Ben Cheng655a7c02013-10-16 16:09:24 -0700170#define XFRM_MSG_NEWSA XFRM_MSG_NEWSA
Tao Baod7db5942015-01-28 10:07:51 -0800171 XFRM_MSG_DELSA,
Ben Cheng655a7c02013-10-16 16:09:24 -0700172#define XFRM_MSG_DELSA XFRM_MSG_DELSA
Christopher Ferris05d08e92016-02-04 13:16:38 -0800173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800174 XFRM_MSG_GETSA,
Ben Cheng655a7c02013-10-16 16:09:24 -0700175#define XFRM_MSG_GETSA XFRM_MSG_GETSA
Tao Baod7db5942015-01-28 10:07:51 -0800176 XFRM_MSG_NEWPOLICY,
Ben Cheng655a7c02013-10-16 16:09:24 -0700177#define XFRM_MSG_NEWPOLICY XFRM_MSG_NEWPOLICY
Christopher Ferris05d08e92016-02-04 13:16:38 -0800178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800179 XFRM_MSG_DELPOLICY,
Ben Cheng655a7c02013-10-16 16:09:24 -0700180#define XFRM_MSG_DELPOLICY XFRM_MSG_DELPOLICY
Tao Baod7db5942015-01-28 10:07:51 -0800181 XFRM_MSG_GETPOLICY,
Ben Cheng655a7c02013-10-16 16:09:24 -0700182#define XFRM_MSG_GETPOLICY XFRM_MSG_GETPOLICY
Christopher Ferris05d08e92016-02-04 13:16:38 -0800183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800184 XFRM_MSG_ALLOCSPI,
Ben Cheng655a7c02013-10-16 16:09:24 -0700185#define XFRM_MSG_ALLOCSPI XFRM_MSG_ALLOCSPI
Tao Baod7db5942015-01-28 10:07:51 -0800186 XFRM_MSG_ACQUIRE,
Ben Cheng655a7c02013-10-16 16:09:24 -0700187#define XFRM_MSG_ACQUIRE XFRM_MSG_ACQUIRE
Christopher Ferris05d08e92016-02-04 13:16:38 -0800188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800189 XFRM_MSG_EXPIRE,
Ben Cheng655a7c02013-10-16 16:09:24 -0700190#define XFRM_MSG_EXPIRE XFRM_MSG_EXPIRE
Tao Baod7db5942015-01-28 10:07:51 -0800191 XFRM_MSG_UPDPOLICY,
Ben Cheng655a7c02013-10-16 16:09:24 -0700192#define XFRM_MSG_UPDPOLICY XFRM_MSG_UPDPOLICY
Christopher Ferris05d08e92016-02-04 13:16:38 -0800193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800194 XFRM_MSG_UPDSA,
Ben Cheng655a7c02013-10-16 16:09:24 -0700195#define XFRM_MSG_UPDSA XFRM_MSG_UPDSA
Tao Baod7db5942015-01-28 10:07:51 -0800196 XFRM_MSG_POLEXPIRE,
Ben Cheng655a7c02013-10-16 16:09:24 -0700197#define XFRM_MSG_POLEXPIRE XFRM_MSG_POLEXPIRE
Christopher Ferris05d08e92016-02-04 13:16:38 -0800198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800199 XFRM_MSG_FLUSHSA,
Ben Cheng655a7c02013-10-16 16:09:24 -0700200#define XFRM_MSG_FLUSHSA XFRM_MSG_FLUSHSA
Tao Baod7db5942015-01-28 10:07:51 -0800201 XFRM_MSG_FLUSHPOLICY,
Ben Cheng655a7c02013-10-16 16:09:24 -0700202#define XFRM_MSG_FLUSHPOLICY XFRM_MSG_FLUSHPOLICY
Christopher Ferris05d08e92016-02-04 13:16:38 -0800203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800204 XFRM_MSG_NEWAE,
Ben Cheng655a7c02013-10-16 16:09:24 -0700205#define XFRM_MSG_NEWAE XFRM_MSG_NEWAE
Tao Baod7db5942015-01-28 10:07:51 -0800206 XFRM_MSG_GETAE,
Ben Cheng655a7c02013-10-16 16:09:24 -0700207#define XFRM_MSG_GETAE XFRM_MSG_GETAE
Christopher Ferris05d08e92016-02-04 13:16:38 -0800208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800209 XFRM_MSG_REPORT,
Ben Cheng655a7c02013-10-16 16:09:24 -0700210#define XFRM_MSG_REPORT XFRM_MSG_REPORT
Tao Baod7db5942015-01-28 10:07:51 -0800211 XFRM_MSG_MIGRATE,
Ben Cheng655a7c02013-10-16 16:09:24 -0700212#define XFRM_MSG_MIGRATE XFRM_MSG_MIGRATE
Christopher Ferris05d08e92016-02-04 13:16:38 -0800213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800214 XFRM_MSG_NEWSADINFO,
Ben Cheng655a7c02013-10-16 16:09:24 -0700215#define XFRM_MSG_NEWSADINFO XFRM_MSG_NEWSADINFO
Tao Baod7db5942015-01-28 10:07:51 -0800216 XFRM_MSG_GETSADINFO,
Ben Cheng655a7c02013-10-16 16:09:24 -0700217#define XFRM_MSG_GETSADINFO XFRM_MSG_GETSADINFO
Christopher Ferris05d08e92016-02-04 13:16:38 -0800218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800219 XFRM_MSG_NEWSPDINFO,
Ben Cheng655a7c02013-10-16 16:09:24 -0700220#define XFRM_MSG_NEWSPDINFO XFRM_MSG_NEWSPDINFO
Tao Baod7db5942015-01-28 10:07:51 -0800221 XFRM_MSG_GETSPDINFO,
Ben Cheng655a7c02013-10-16 16:09:24 -0700222#define XFRM_MSG_GETSPDINFO XFRM_MSG_GETSPDINFO
Christopher Ferris05d08e92016-02-04 13:16:38 -0800223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800224 XFRM_MSG_MAPPING,
Ben Cheng655a7c02013-10-16 16:09:24 -0700225#define XFRM_MSG_MAPPING XFRM_MSG_MAPPING
Tao Baod7db5942015-01-28 10:07:51 -0800226 __XFRM_MSG_MAX
Ben Cheng655a7c02013-10-16 16:09:24 -0700227};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700229#define XFRM_MSG_MAX (__XFRM_MSG_MAX - 1)
230#define XFRM_NR_MSGTYPES (XFRM_MSG_MAX + 1 - XFRM_MSG_BASE)
Ben Cheng655a7c02013-10-16 16:09:24 -0700231struct xfrm_user_sec_ctx {
Tao Baod7db5942015-01-28 10:07:51 -0800232 __u16 len;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800234 __u16 exttype;
235 __u8 ctx_alg;
Tao Baod7db5942015-01-28 10:07:51 -0800236 __u8 ctx_doi;
237 __u16 ctx_len;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700239};
240struct xfrm_user_tmpl {
Tao Baod7db5942015-01-28 10:07:51 -0800241 struct xfrm_id id;
242 __u16 family;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800244 xfrm_address_t saddr;
245 __u32 reqid;
Tao Baod7db5942015-01-28 10:07:51 -0800246 __u8 mode;
247 __u8 share;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800249 __u8 optional;
250 __u32 aalgos;
Tao Baod7db5942015-01-28 10:07:51 -0800251 __u32 ealgos;
252 __u32 calgos;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700254};
255struct xfrm_encap_tmpl {
Tao Baod7db5942015-01-28 10:07:51 -0800256 __u16 encap_type;
257 __be16 encap_sport;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800258/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800259 __be16 encap_dport;
260 xfrm_address_t encap_oa;
Ben Cheng655a7c02013-10-16 16:09:24 -0700261};
262enum xfrm_ae_ftype_t {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800263/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800264 XFRM_AE_UNSPEC,
265 XFRM_AE_RTHR = 1,
Tao Baod7db5942015-01-28 10:07:51 -0800266 XFRM_AE_RVAL = 2,
267 XFRM_AE_LVAL = 4,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800268/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800269 XFRM_AE_ETHR = 8,
270 XFRM_AE_CR = 16,
Tao Baod7db5942015-01-28 10:07:51 -0800271 XFRM_AE_CE = 32,
272 XFRM_AE_CU = 64,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800273/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800274 __XFRM_AE_MAX
Ben Cheng655a7c02013-10-16 16:09:24 -0700275#define XFRM_AE_MAX (__XFRM_AE_MAX - 1)
Ben Cheng655a7c02013-10-16 16:09:24 -0700276};
277struct xfrm_userpolicy_type {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800278/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800279 __u8 type;
280 __u16 reserved1;
Tao Baod7db5942015-01-28 10:07:51 -0800281 __u8 reserved2;
Ben Cheng655a7c02013-10-16 16:09:24 -0700282};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800283/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700284enum xfrm_attr_type_t {
Tao Baod7db5942015-01-28 10:07:51 -0800285 XFRMA_UNSPEC,
Tao Baod7db5942015-01-28 10:07:51 -0800286 XFRMA_ALG_AUTH,
287 XFRMA_ALG_CRYPT,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800288/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800289 XFRMA_ALG_COMP,
290 XFRMA_ENCAP,
Tao Baod7db5942015-01-28 10:07:51 -0800291 XFRMA_TMPL,
292 XFRMA_SA,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800293/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800294 XFRMA_POLICY,
295 XFRMA_SEC_CTX,
Tao Baod7db5942015-01-28 10:07:51 -0800296 XFRMA_LTIME_VAL,
297 XFRMA_REPLAY_VAL,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800298/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800299 XFRMA_REPLAY_THRESH,
300 XFRMA_ETIMER_THRESH,
Tao Baod7db5942015-01-28 10:07:51 -0800301 XFRMA_SRCADDR,
302 XFRMA_COADDR,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800303/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800304 XFRMA_LASTUSED,
305 XFRMA_POLICY_TYPE,
Tao Baod7db5942015-01-28 10:07:51 -0800306 XFRMA_MIGRATE,
307 XFRMA_ALG_AEAD,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800308/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800309 XFRMA_KMADDRESS,
310 XFRMA_ALG_AUTH_TRUNC,
Tao Baod7db5942015-01-28 10:07:51 -0800311 XFRMA_MARK,
312 XFRMA_TFCPAD,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800313/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800314 XFRMA_REPLAY_ESN_VAL,
315 XFRMA_SA_EXTRA_FLAGS,
Tao Baod7db5942015-01-28 10:07:51 -0800316 XFRMA_PROTO,
317 XFRMA_ADDRESS_FILTER,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800318/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700319 XFRMA_PAD,
Tao Baod7db5942015-01-28 10:07:51 -0800320 __XFRMA_MAX
Ben Cheng655a7c02013-10-16 16:09:24 -0700321#define XFRMA_MAX (__XFRMA_MAX - 1)
322};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800323/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700324struct xfrm_mark {
Tao Baod7db5942015-01-28 10:07:51 -0800325 __u32 v;
326 __u32 m;
Ben Cheng655a7c02013-10-16 16:09:24 -0700327};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800328/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700329enum xfrm_sadattr_type_t {
Tao Baod7db5942015-01-28 10:07:51 -0800330 XFRMA_SAD_UNSPEC,
331 XFRMA_SAD_CNT,
Tao Baod7db5942015-01-28 10:07:51 -0800332 XFRMA_SAD_HINFO,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800333/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700334 __XFRMA_SAD_MAX
Ben Cheng655a7c02013-10-16 16:09:24 -0700335#define XFRMA_SAD_MAX (__XFRMA_SAD_MAX - 1)
336};
337struct xfrmu_sadhinfo {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800338/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700339 __u32 sadhcnt;
Tao Baod7db5942015-01-28 10:07:51 -0800340 __u32 sadhmcnt;
Ben Cheng655a7c02013-10-16 16:09:24 -0700341};
342enum xfrm_spdattr_type_t {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800343/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700344 XFRMA_SPD_UNSPEC,
Tao Baod7db5942015-01-28 10:07:51 -0800345 XFRMA_SPD_INFO,
346 XFRMA_SPD_HINFO,
Tao Baod7db5942015-01-28 10:07:51 -0800347 XFRMA_SPD_IPV4_HTHRESH,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800348/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700349 XFRMA_SPD_IPV6_HTHRESH,
Tao Baod7db5942015-01-28 10:07:51 -0800350 __XFRMA_SPD_MAX
Ben Cheng655a7c02013-10-16 16:09:24 -0700351#define XFRMA_SPD_MAX (__XFRMA_SPD_MAX - 1)
Ben Cheng655a7c02013-10-16 16:09:24 -0700352};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800353/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700354struct xfrmu_spdinfo {
Tao Baod7db5942015-01-28 10:07:51 -0800355 __u32 incnt;
356 __u32 outcnt;
Tao Baod7db5942015-01-28 10:07:51 -0800357 __u32 fwdcnt;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800358/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700359 __u32 inscnt;
Tao Baod7db5942015-01-28 10:07:51 -0800360 __u32 outscnt;
361 __u32 fwdscnt;
Ben Cheng655a7c02013-10-16 16:09:24 -0700362};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800363/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700364struct xfrmu_spdhinfo {
Tao Baod7db5942015-01-28 10:07:51 -0800365 __u32 spdhcnt;
366 __u32 spdhmcnt;
Christopher Ferris82d75042015-01-26 10:57:07 -0800367};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800368/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700369struct xfrmu_spdhthresh {
Tao Baod7db5942015-01-28 10:07:51 -0800370 __u8 lbits;
371 __u8 rbits;
Ben Cheng655a7c02013-10-16 16:09:24 -0700372};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800373/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700374struct xfrm_usersa_info {
Tao Baod7db5942015-01-28 10:07:51 -0800375 struct xfrm_selector sel;
376 struct xfrm_id id;
Tao Baod7db5942015-01-28 10:07:51 -0800377 xfrm_address_t saddr;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800378/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700379 struct xfrm_lifetime_cfg lft;
Tao Baod7db5942015-01-28 10:07:51 -0800380 struct xfrm_lifetime_cur curlft;
381 struct xfrm_stats stats;
Tao Baod7db5942015-01-28 10:07:51 -0800382 __u32 seq;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800383/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700384 __u32 reqid;
Tao Baod7db5942015-01-28 10:07:51 -0800385 __u16 family;
386 __u8 mode;
Tao Baod7db5942015-01-28 10:07:51 -0800387 __u8 replay_window;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800388/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700389 __u8 flags;
Ben Cheng655a7c02013-10-16 16:09:24 -0700390#define XFRM_STATE_NOECN 1
391#define XFRM_STATE_DECAP_DSCP 2
Ben Cheng655a7c02013-10-16 16:09:24 -0700392#define XFRM_STATE_NOPMTUDISC 4
Christopher Ferris05d08e92016-02-04 13:16:38 -0800393/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700394#define XFRM_STATE_WILDRECV 8
Ben Cheng655a7c02013-10-16 16:09:24 -0700395#define XFRM_STATE_ICMP 16
396#define XFRM_STATE_AF_UNSPEC 32
Ben Cheng655a7c02013-10-16 16:09:24 -0700397#define XFRM_STATE_ALIGN4 64
Christopher Ferris05d08e92016-02-04 13:16:38 -0800398/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700399#define XFRM_STATE_ESN 128
Ben Cheng655a7c02013-10-16 16:09:24 -0700400};
401#define XFRM_SA_XFLAG_DONT_ENCAP_DSCP 1
Ben Cheng655a7c02013-10-16 16:09:24 -0700402struct xfrm_usersa_id {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800403/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700404 xfrm_address_t daddr;
Tao Baod7db5942015-01-28 10:07:51 -0800405 __be32 spi;
406 __u16 family;
Tao Baod7db5942015-01-28 10:07:51 -0800407 __u8 proto;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800408/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700409};
Ben Cheng655a7c02013-10-16 16:09:24 -0700410struct xfrm_aevent_id {
Tao Baod7db5942015-01-28 10:07:51 -0800411 struct xfrm_usersa_id sa_id;
Tao Baod7db5942015-01-28 10:07:51 -0800412 xfrm_address_t saddr;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800413/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700414 __u32 flags;
Tao Baod7db5942015-01-28 10:07:51 -0800415 __u32 reqid;
Ben Cheng655a7c02013-10-16 16:09:24 -0700416};
Ben Cheng655a7c02013-10-16 16:09:24 -0700417struct xfrm_userspi_info {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800418/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700419 struct xfrm_usersa_info info;
Tao Baod7db5942015-01-28 10:07:51 -0800420 __u32 min;
421 __u32 max;
Ben Cheng655a7c02013-10-16 16:09:24 -0700422};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800423/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700424struct xfrm_userpolicy_info {
Tao Baod7db5942015-01-28 10:07:51 -0800425 struct xfrm_selector sel;
426 struct xfrm_lifetime_cfg lft;
Tao Baod7db5942015-01-28 10:07:51 -0800427 struct xfrm_lifetime_cur curlft;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800428/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700429 __u32 priority;
Tao Baod7db5942015-01-28 10:07:51 -0800430 __u32 index;
431 __u8 dir;
Tao Baod7db5942015-01-28 10:07:51 -0800432 __u8 action;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800433/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700434#define XFRM_POLICY_ALLOW 0
Ben Cheng655a7c02013-10-16 16:09:24 -0700435#define XFRM_POLICY_BLOCK 1
Tao Baod7db5942015-01-28 10:07:51 -0800436 __u8 flags;
Ben Cheng655a7c02013-10-16 16:09:24 -0700437#define XFRM_POLICY_LOCALOK 1
Christopher Ferris05d08e92016-02-04 13:16:38 -0800438/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700439#define XFRM_POLICY_ICMP 2
Tao Baod7db5942015-01-28 10:07:51 -0800440 __u8 share;
Ben Cheng655a7c02013-10-16 16:09:24 -0700441};
Ben Cheng655a7c02013-10-16 16:09:24 -0700442struct xfrm_userpolicy_id {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800443/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700444 struct xfrm_selector sel;
Tao Baod7db5942015-01-28 10:07:51 -0800445 __u32 index;
446 __u8 dir;
Ben Cheng655a7c02013-10-16 16:09:24 -0700447};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800448/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700449struct xfrm_user_acquire {
Tao Baod7db5942015-01-28 10:07:51 -0800450 struct xfrm_id id;
451 xfrm_address_t saddr;
Tao Baod7db5942015-01-28 10:07:51 -0800452 struct xfrm_selector sel;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800453/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700454 struct xfrm_userpolicy_info policy;
Tao Baod7db5942015-01-28 10:07:51 -0800455 __u32 aalgos;
456 __u32 ealgos;
Tao Baod7db5942015-01-28 10:07:51 -0800457 __u32 calgos;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800458/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700459 __u32 seq;
Ben Cheng655a7c02013-10-16 16:09:24 -0700460};
461struct xfrm_user_expire {
Tao Baod7db5942015-01-28 10:07:51 -0800462 struct xfrm_usersa_info state;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800463/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700464 __u8 hard;
Ben Cheng655a7c02013-10-16 16:09:24 -0700465};
466struct xfrm_user_polexpire {
Tao Baod7db5942015-01-28 10:07:51 -0800467 struct xfrm_userpolicy_info pol;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800468/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700469 __u8 hard;
Ben Cheng655a7c02013-10-16 16:09:24 -0700470};
471struct xfrm_usersa_flush {
Tao Baod7db5942015-01-28 10:07:51 -0800472 __u8 proto;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800473/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700474};
Ben Cheng655a7c02013-10-16 16:09:24 -0700475struct xfrm_user_report {
Tao Baod7db5942015-01-28 10:07:51 -0800476 __u8 proto;
Tao Baod7db5942015-01-28 10:07:51 -0800477 struct xfrm_selector sel;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800478/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700479};
Ben Cheng655a7c02013-10-16 16:09:24 -0700480struct xfrm_user_kmaddress {
Tao Baod7db5942015-01-28 10:07:51 -0800481 xfrm_address_t local;
Tao Baod7db5942015-01-28 10:07:51 -0800482 xfrm_address_t remote;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800483/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700484 __u32 reserved;
Tao Baod7db5942015-01-28 10:07:51 -0800485 __u16 family;
Ben Cheng655a7c02013-10-16 16:09:24 -0700486};
Ben Cheng655a7c02013-10-16 16:09:24 -0700487struct xfrm_user_migrate {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800488/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700489 xfrm_address_t old_daddr;
Tao Baod7db5942015-01-28 10:07:51 -0800490 xfrm_address_t old_saddr;
491 xfrm_address_t new_daddr;
Tao Baod7db5942015-01-28 10:07:51 -0800492 xfrm_address_t new_saddr;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800493/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700494 __u8 proto;
Tao Baod7db5942015-01-28 10:07:51 -0800495 __u8 mode;
496 __u16 reserved;
Tao Baod7db5942015-01-28 10:07:51 -0800497 __u32 reqid;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800498/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700499 __u16 old_family;
Tao Baod7db5942015-01-28 10:07:51 -0800500 __u16 new_family;
Ben Cheng655a7c02013-10-16 16:09:24 -0700501};
Ben Cheng655a7c02013-10-16 16:09:24 -0700502struct xfrm_user_mapping {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800503/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700504 struct xfrm_usersa_id id;
Tao Baod7db5942015-01-28 10:07:51 -0800505 __u32 reqid;
506 xfrm_address_t old_saddr;
Tao Baod7db5942015-01-28 10:07:51 -0800507 xfrm_address_t new_saddr;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800508/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700509 __be16 old_sport;
Tao Baod7db5942015-01-28 10:07:51 -0800510 __be16 new_sport;
Ben Cheng655a7c02013-10-16 16:09:24 -0700511};
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700512struct xfrm_address_filter {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800513/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700514 xfrm_address_t saddr;
Tao Baod7db5942015-01-28 10:07:51 -0800515 xfrm_address_t daddr;
516 __u16 family;
Tao Baod7db5942015-01-28 10:07:51 -0800517 __u8 splen;
Christopher Ferris05d08e92016-02-04 13:16:38 -0800518/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700519 __u8 dplen;
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700520};
Ben Cheng655a7c02013-10-16 16:09:24 -0700521#define XFRMGRP_ACQUIRE 1
522#define XFRMGRP_EXPIRE 2
Christopher Ferris05d08e92016-02-04 13:16:38 -0800523/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700524#define XFRMGRP_SA 4
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700525#define XFRMGRP_POLICY 8
Ben Cheng655a7c02013-10-16 16:09:24 -0700526#define XFRMGRP_REPORT 0x20
527enum xfrm_nlgroups {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800528/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700529 XFRMNLGRP_NONE,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700530#define XFRMNLGRP_NONE XFRMNLGRP_NONE
Tao Baod7db5942015-01-28 10:07:51 -0800531 XFRMNLGRP_ACQUIRE,
Ben Cheng655a7c02013-10-16 16:09:24 -0700532#define XFRMNLGRP_ACQUIRE XFRMNLGRP_ACQUIRE
Christopher Ferris05d08e92016-02-04 13:16:38 -0800533/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700534 XFRMNLGRP_EXPIRE,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700535#define XFRMNLGRP_EXPIRE XFRMNLGRP_EXPIRE
Tao Baod7db5942015-01-28 10:07:51 -0800536 XFRMNLGRP_SA,
Ben Cheng655a7c02013-10-16 16:09:24 -0700537#define XFRMNLGRP_SA XFRMNLGRP_SA
Christopher Ferris05d08e92016-02-04 13:16:38 -0800538/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700539 XFRMNLGRP_POLICY,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700540#define XFRMNLGRP_POLICY XFRMNLGRP_POLICY
Tao Baod7db5942015-01-28 10:07:51 -0800541 XFRMNLGRP_AEVENTS,
Ben Cheng655a7c02013-10-16 16:09:24 -0700542#define XFRMNLGRP_AEVENTS XFRMNLGRP_AEVENTS
Christopher Ferris05d08e92016-02-04 13:16:38 -0800543/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700544 XFRMNLGRP_REPORT,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700545#define XFRMNLGRP_REPORT XFRMNLGRP_REPORT
Tao Baod7db5942015-01-28 10:07:51 -0800546 XFRMNLGRP_MIGRATE,
Ben Cheng655a7c02013-10-16 16:09:24 -0700547#define XFRMNLGRP_MIGRATE XFRMNLGRP_MIGRATE
Christopher Ferris05d08e92016-02-04 13:16:38 -0800548/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700549 XFRMNLGRP_MAPPING,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700550#define XFRMNLGRP_MAPPING XFRMNLGRP_MAPPING
Tao Baod7db5942015-01-28 10:07:51 -0800551 __XFRMNLGRP_MAX
Ben Cheng655a7c02013-10-16 16:09:24 -0700552};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800553/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700554#define XFRMNLGRP_MAX (__XFRMNLGRP_MAX - 1)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700555#endif