nm: Pass external gateway to NM
[strongswan.git] / src / starter / keywords.h
1 /*
2 * Copyright (C) 2005 Andreas Steffen
3 * Hochschule fuer Technik Rapperswil, Switzerland
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by the
7 * Free Software Foundation; either version 2 of the License, or (at your
8 * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13 * for more details.
14 */
15
16 #ifndef _KEYWORDS_H_
17 #define _KEYWORDS_H_
18
19 typedef enum kw_token_t kw_token_t;
20 typedef struct kw_entry_t kw_entry_t;
21
22 enum kw_token_t {
23 /* config setup keywords */
24 KW_CHARONDEBUG,
25 KW_UNIQUEIDS,
26 KW_CACHECRLS,
27 KW_STRICTCRLPOLICY,
28 KW_PKCS11_DEPRECATED,
29 KW_SETUP_DEPRECATED,
30
31 #define KW_SETUP_FIRST KW_CHARONDEBUG
32 #define KW_SETUP_LAST KW_SETUP_DEPRECATED
33
34 /* conn section keywords */
35 KW_CONN_NAME,
36 KW_CONN_SETUP,
37 KW_KEYEXCHANGE,
38 KW_TYPE,
39 KW_COMPRESS,
40 KW_INSTALLPOLICY,
41 KW_AGGRESSIVE,
42 KW_AUTHBY,
43 KW_EAP_IDENTITY,
44 KW_AAA_IDENTITY,
45 KW_MOBIKE,
46 KW_FORCEENCAPS,
47 KW_FRAGMENTATION,
48 KW_IKEDSCP,
49 KW_IKELIFETIME,
50 KW_KEYLIFE,
51 KW_REKEYMARGIN,
52 KW_LIFEBYTES,
53 KW_MARGINBYTES,
54 KW_LIFEPACKETS,
55 KW_MARGINPACKETS,
56 KW_KEYINGTRIES,
57 KW_REKEYFUZZ,
58 KW_REKEY,
59 KW_REAUTH,
60 KW_IKE,
61 KW_ESP,
62 KW_AH,
63 KW_DPDDELAY,
64 KW_DPDTIMEOUT,
65 KW_DPDACTION,
66 KW_CLOSEACTION,
67 KW_INACTIVITY,
68 KW_MODECONFIG,
69 KW_XAUTH,
70 KW_XAUTH_IDENTITY,
71 KW_MEDIATION,
72 KW_MEDIATED_BY,
73 KW_ME_PEERID,
74 KW_REQID,
75 KW_REPLAY_WINDOW,
76 KW_MARK,
77 KW_MARK_IN,
78 KW_MARK_OUT,
79 KW_TFC,
80 KW_PFS_DEPRECATED,
81 KW_CONN_DEPRECATED,
82
83 #define KW_CONN_FIRST KW_CONN_SETUP
84 #define KW_CONN_LAST KW_CONN_DEPRECATED
85
86 /* ca section keywords */
87 KW_CA_NAME,
88 KW_CA_SETUP,
89 KW_CACERT,
90 KW_CRLURI,
91 KW_CRLURI2,
92 KW_OCSPURI,
93 KW_OCSPURI2,
94 KW_CERTURIBASE,
95 KW_CA_DEPRECATED,
96
97 #define KW_CA_FIRST KW_CA_SETUP
98 #define KW_CA_LAST KW_CA_DEPRECATED
99
100 /* end keywords */
101 KW_HOST,
102 KW_IKEPORT,
103 KW_SUBNET,
104 KW_PROTOPORT,
105 KW_SOURCEIP,
106 KW_DNS,
107 KW_FIREWALL,
108 KW_HOSTACCESS,
109 KW_ALLOWANY,
110 KW_UPDOWN,
111 KW_AUTH1,
112 KW_AUTH2,
113 KW_ID,
114 KW_ID2,
115 KW_SIGKEY,
116 KW_CERT,
117 KW_CERT2,
118 KW_CERTPOLICY,
119 KW_SENDCERT,
120 KW_CA,
121 KW_CA2,
122 KW_GROUPS,
123 KW_GROUPS2,
124 KW_END_DEPRECATED,
125
126 #define KW_END_FIRST KW_HOST
127 #define KW_END_LAST KW_END_DEPRECATED
128
129 /* left end keywords */
130 KW_LEFT,
131 KW_LEFTIKEPORT,
132 KW_LEFTSUBNET,
133 KW_LEFTPROTOPORT,
134 KW_LEFTSOURCEIP,
135 KW_LEFTDNS,
136 KW_LEFTFIREWALL,
137 KW_LEFTHOSTACCESS,
138 KW_LEFTALLOWANY,
139 KW_LEFTUPDOWN,
140 KW_LEFTAUTH,
141 KW_LEFTAUTH2,
142 KW_LEFTID,
143 KW_LEFTID2,
144 KW_LEFTSIGKEY,
145 KW_LEFTCERT,
146 KW_LEFTCERT2,
147 KW_LEFTCERTPOLICY,
148 KW_LEFTSENDCERT,
149 KW_LEFTCA,
150 KW_LEFTCA2,
151 KW_LEFTGROUPS,
152 KW_LEFTGROUPS2,
153 KW_LEFT_DEPRECATED,
154
155 #define KW_LEFT_FIRST KW_LEFT
156 #define KW_LEFT_LAST KW_LEFT_DEPRECATED
157
158 /* right end keywords */
159 KW_RIGHT,
160 KW_RIGHTIKEPORT,
161 KW_RIGHTSUBNET,
162 KW_RIGHTPROTOPORT,
163 KW_RIGHTSOURCEIP,
164 KW_RIGHTDNS,
165 KW_RIGHTFIREWALL,
166 KW_RIGHTHOSTACCESS,
167 KW_RIGHTALLOWANY,
168 KW_RIGHTUPDOWN,
169 KW_RIGHTAUTH,
170 KW_RIGHTAUTH2,
171 KW_RIGHTID,
172 KW_RIGHTID2,
173 KW_RIGHTSIGKEY,
174 KW_RIGHTCERT,
175 KW_RIGHTCERT2,
176 KW_RIGHTCERTPOLICY,
177 KW_RIGHTSENDCERT,
178 KW_RIGHTCA,
179 KW_RIGHTCA2,
180 KW_RIGHTGROUPS,
181 KW_RIGHTGROUPS2,
182 KW_RIGHT_DEPRECATED,
183
184 #define KW_RIGHT_FIRST KW_RIGHT
185 #define KW_RIGHT_LAST KW_RIGHT_DEPRECATED
186
187 /* general section keywords */
188 KW_ALSO,
189 KW_AUTO,
190
191 };
192
193 struct kw_entry_t {
194 char *name;
195 kw_token_t token;
196 };
197
198 #endif /* _KEYWORDS_H_ */