xref: /linux-6.15/include/uapi/linux/ipsec.h (revision d1716d5a)
16f52b16cSGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2607ca46eSDavid Howells #ifndef _LINUX_IPSEC_H
3607ca46eSDavid Howells #define _LINUX_IPSEC_H
4607ca46eSDavid Howells 
5607ca46eSDavid Howells /* The definitions, required to talk to KAME racoon IKE. */
6607ca46eSDavid Howells 
7607ca46eSDavid Howells #include <linux/pfkeyv2.h>
8607ca46eSDavid Howells 
9607ca46eSDavid Howells #define IPSEC_PORT_ANY		0
10607ca46eSDavid Howells #define IPSEC_ULPROTO_ANY	255
11607ca46eSDavid Howells #define IPSEC_PROTO_ANY		255
12607ca46eSDavid Howells 
13607ca46eSDavid Howells enum {
14607ca46eSDavid Howells 	IPSEC_MODE_ANY		= 0,	/* We do not support this for SA */
15607ca46eSDavid Howells 	IPSEC_MODE_TRANSPORT	= 1,
16607ca46eSDavid Howells 	IPSEC_MODE_TUNNEL	= 2,
17*d1716d5aSChristian Hopps 	IPSEC_MODE_BEET         = 3,
18*d1716d5aSChristian Hopps 	IPSEC_MODE_IPTFS        = 4
19607ca46eSDavid Howells };
20607ca46eSDavid Howells 
21607ca46eSDavid Howells enum {
22607ca46eSDavid Howells 	IPSEC_DIR_ANY		= 0,
23607ca46eSDavid Howells 	IPSEC_DIR_INBOUND	= 1,
24607ca46eSDavid Howells 	IPSEC_DIR_OUTBOUND	= 2,
25607ca46eSDavid Howells 	IPSEC_DIR_FWD		= 3,	/* It is our own */
26607ca46eSDavid Howells 	IPSEC_DIR_MAX		= 4,
27607ca46eSDavid Howells 	IPSEC_DIR_INVALID	= 5
28607ca46eSDavid Howells };
29607ca46eSDavid Howells 
30607ca46eSDavid Howells enum {
31607ca46eSDavid Howells 	IPSEC_POLICY_DISCARD	= 0,
32607ca46eSDavid Howells 	IPSEC_POLICY_NONE	= 1,
33607ca46eSDavid Howells 	IPSEC_POLICY_IPSEC	= 2,
34607ca46eSDavid Howells 	IPSEC_POLICY_ENTRUST	= 3,
35607ca46eSDavid Howells 	IPSEC_POLICY_BYPASS	= 4
36607ca46eSDavid Howells };
37607ca46eSDavid Howells 
38607ca46eSDavid Howells enum {
39607ca46eSDavid Howells 	IPSEC_LEVEL_DEFAULT	= 0,
40607ca46eSDavid Howells 	IPSEC_LEVEL_USE		= 1,
41607ca46eSDavid Howells 	IPSEC_LEVEL_REQUIRE	= 2,
42607ca46eSDavid Howells 	IPSEC_LEVEL_UNIQUE	= 3
43607ca46eSDavid Howells };
44607ca46eSDavid Howells 
45607ca46eSDavid Howells #define IPSEC_MANUAL_REQID_MAX	0x3fff
46607ca46eSDavid Howells 
47607ca46eSDavid Howells #define IPSEC_REPLAYWSIZE  32
48607ca46eSDavid Howells 
49607ca46eSDavid Howells #endif	/* _LINUX_IPSEC_H */
50