1c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#ifndef _LINUX_IPSEC_H
2c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#define _LINUX_IPSEC_H
3c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
4c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru/* The definitions, required to talk to KAME racoon IKE. */
5c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
6c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#include <linux/pfkeyv2.h>
7c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
8c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#define IPSEC_PORT_ANY		0
9c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#define IPSEC_ULPROTO_ANY	255
10c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#define IPSEC_PROTO_ANY		255
11c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
12c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruenum {
13c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_MODE_ANY		= 0,	/* We do not support this for SA */
14c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_MODE_TRANSPORT	= 1,
15c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_MODE_TUNNEL	= 2,
16c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_MODE_BEET         = 3
17c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru};
18c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
19c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruenum {
20c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_DIR_ANY		= 0,
21c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_DIR_INBOUND	= 1,
22c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_DIR_OUTBOUND	= 2,
23c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_DIR_FWD		= 3,	/* It is our own */
24c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_DIR_MAX		= 4,
25c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_DIR_INVALID	= 5
26c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru};
27c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
28c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruenum {
29c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_POLICY_DISCARD	= 0,
30c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_POLICY_NONE	= 1,
31c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_POLICY_IPSEC	= 2,
32c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_POLICY_ENTRUST	= 3,
33c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_POLICY_BYPASS	= 4
34c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru};
35c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
36c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruenum {
37c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_LEVEL_DEFAULT	= 0,
38c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_LEVEL_USE		= 1,
39c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_LEVEL_REQUIRE	= 2,
40c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru	IPSEC_LEVEL_UNIQUE	= 3
41c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru};
42c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
43c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#define IPSEC_MANUAL_REQID_MAX	0x3fff
44c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
45c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#define IPSEC_REPLAYWSIZE  32
46c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
47c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#endif	/* _LINUX_IPSEC_H */
48