1 /* A Bison parser, made by GNU Bison 2.3.  */
2 
3 /* Skeleton interface for Bison's Yacc-like parsers in C
4 
5    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6    Free Software Foundation, Inc.
7 
8    This program is free software; you can redistribute it and/or modify
9    it under the terms of the GNU General Public License as published by
10    the Free Software Foundation; either version 2, or (at your option)
11    any later version.
12 
13    This program is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16    GNU General Public License for more details.
17 
18    You should have received a copy of the GNU General Public License
19    along with this program; if not, write to the Free Software
20    Foundation, Inc., 51 Franklin Street, Fifth Floor,
21    Boston, MA 02110-1301, USA.  */
22 
23 /* As a special exception, you may create a larger work that contains
24    part or all of the Bison parser skeleton and distribute that work
25    under terms of your choice, so long as that work isn't itself a
26    parser generator using the skeleton or a modified version thereof
27    as a parser skeleton.  Alternatively, if you modify or redistribute
28    the parser skeleton itself, you may (at your option) remove this
29    special exception, which will cause the skeleton and the resulting
30    Bison output files to be licensed under the GNU General Public
31    License without this special exception.
32 
33    This special exception was added by the Free Software Foundation in
34    version 2.2 of Bison.  */
35 
36 /* Tokens.  */
37 #ifndef YYTOKENTYPE
38 # define YYTOKENTYPE
39    /* Put the tokens into the symbol table, so that GDB and other debuggers
40       know about them.  */
41    enum yytokentype {
42      PRIVSEP = 258,
43      USER = 259,
44      GROUP = 260,
45      CHROOT = 261,
46      PATH = 262,
47      PATHTYPE = 263,
48      INCLUDE = 264,
49      IDENTIFIER = 265,
50      VENDORID = 266,
51      LOGGING = 267,
52      LOGLEV = 268,
53      PADDING = 269,
54      PAD_RANDOMIZE = 270,
55      PAD_RANDOMIZELEN = 271,
56      PAD_MAXLEN = 272,
57      PAD_STRICT = 273,
58      PAD_EXCLTAIL = 274,
59      LISTEN = 275,
60      X_ISAKMP = 276,
61      X_ISAKMP_NATT = 277,
62      X_ADMIN = 278,
63      STRICT_ADDRESS = 279,
64      ADMINSOCK = 280,
65      DISABLED = 281,
66      LDAPCFG = 282,
67      LDAP_HOST = 283,
68      LDAP_PORT = 284,
69      LDAP_PVER = 285,
70      LDAP_BASE = 286,
71      LDAP_BIND_DN = 287,
72      LDAP_BIND_PW = 288,
73      LDAP_SUBTREE = 289,
74      LDAP_ATTR_USER = 290,
75      LDAP_ATTR_ADDR = 291,
76      LDAP_ATTR_MASK = 292,
77      LDAP_ATTR_GROUP = 293,
78      LDAP_ATTR_MEMBER = 294,
79      MODECFG = 295,
80      CFG_NET4 = 296,
81      CFG_MASK4 = 297,
82      CFG_DNS4 = 298,
83      CFG_NBNS4 = 299,
84      CFG_DEFAULT_DOMAIN = 300,
85      CFG_AUTH_SOURCE = 301,
86      CFG_AUTH_GROUPS = 302,
87      CFG_SYSTEM = 303,
88      CFG_RADIUS = 304,
89      CFG_PAM = 305,
90      CFG_LDAP = 306,
91      CFG_LOCAL = 307,
92      CFG_NONE = 308,
93      CFG_GROUP_SOURCE = 309,
94      CFG_ACCOUNTING = 310,
95      CFG_CONF_SOURCE = 311,
96      CFG_MOTD = 312,
97      CFG_POOL_SIZE = 313,
98      CFG_AUTH_THROTTLE = 314,
99      CFG_SPLIT_NETWORK = 315,
100      CFG_SPLIT_LOCAL = 316,
101      CFG_SPLIT_INCLUDE = 317,
102      CFG_SPLIT_DNS = 318,
103      CFG_PFS_GROUP = 319,
104      CFG_SAVE_PASSWD = 320,
105      RETRY = 321,
106      RETRY_COUNTER = 322,
107      RETRY_INTERVAL = 323,
108      RETRY_PERSEND = 324,
109      RETRY_PHASE1 = 325,
110      RETRY_PHASE2 = 326,
111      NATT_KA = 327,
112      ALGORITHM_CLASS = 328,
113      ALGORITHMTYPE = 329,
114      STRENGTHTYPE = 330,
115      SAINFO = 331,
116      FROM = 332,
117      REMOTE = 333,
118      ANONYMOUS = 334,
119      INHERIT = 335,
120      EXCHANGE_MODE = 336,
121      EXCHANGETYPE = 337,
122      DOI = 338,
123      DOITYPE = 339,
124      SITUATION = 340,
125      SITUATIONTYPE = 341,
126      CERTIFICATE_TYPE = 342,
127      CERTTYPE = 343,
128      PEERS_CERTFILE = 344,
129      CA_TYPE = 345,
130      VERIFY_CERT = 346,
131      SEND_CERT = 347,
132      SEND_CR = 348,
133      IDENTIFIERTYPE = 349,
134      IDENTIFIERQUAL = 350,
135      MY_IDENTIFIER = 351,
136      PEERS_IDENTIFIER = 352,
137      VERIFY_IDENTIFIER = 353,
138      DNSSEC = 354,
139      CERT_X509 = 355,
140      CERT_PLAINRSA = 356,
141      NONCE_SIZE = 357,
142      DH_GROUP = 358,
143      KEEPALIVE = 359,
144      PASSIVE = 360,
145      INITIAL_CONTACT = 361,
146      NAT_TRAVERSAL = 362,
147      REMOTE_FORCE_LEVEL = 363,
148      PROPOSAL_CHECK = 364,
149      PROPOSAL_CHECK_LEVEL = 365,
150      GENERATE_POLICY = 366,
151      GENERATE_LEVEL = 367,
152      SUPPORT_PROXY = 368,
153      PROPOSAL = 369,
154      EXEC_PATH = 370,
155      EXEC_COMMAND = 371,
156      EXEC_SUCCESS = 372,
157      EXEC_FAILURE = 373,
158      GSS_ID = 374,
159      GSS_ID_ENC = 375,
160      GSS_ID_ENCTYPE = 376,
161      COMPLEX_BUNDLE = 377,
162      DPD = 378,
163      DPD_DELAY = 379,
164      DPD_RETRY = 380,
165      DPD_MAXFAIL = 381,
166      PH1ID = 382,
167      XAUTH_LOGIN = 383,
168      WEAK_PHASE1_CHECK = 384,
169      PREFIX = 385,
170      PORT = 386,
171      PORTANY = 387,
172      UL_PROTO = 388,
173      ANY = 389,
174      IKE_FRAG = 390,
175      ESP_FRAG = 391,
176      MODE_CFG = 392,
177      PFS_GROUP = 393,
178      LIFETIME = 394,
179      LIFETYPE_TIME = 395,
180      LIFETYPE_BYTE = 396,
181      STRENGTH = 397,
182      REMOTEID = 398,
183      SCRIPT = 399,
184      PHASE1_UP = 400,
185      PHASE1_DOWN = 401,
186      NUMBER = 402,
187      SWITCH = 403,
188      BOOLEAN = 404,
189      HEXSTRING = 405,
190      QUOTEDSTRING = 406,
191      ADDRSTRING = 407,
192      ADDRRANGE = 408,
193      UNITTYPE_BYTE = 409,
194      UNITTYPE_KBYTES = 410,
195      UNITTYPE_MBYTES = 411,
196      UNITTYPE_TBYTES = 412,
197      UNITTYPE_SEC = 413,
198      UNITTYPE_MIN = 414,
199      UNITTYPE_HOUR = 415,
200      EOS = 416,
201      BOC = 417,
202      EOC = 418,
203      COMMA = 419
204    };
205 #endif
206 /* Tokens.  */
207 #define PRIVSEP 258
208 #define USER 259
209 #define GROUP 260
210 #define CHROOT 261
211 #define PATH 262
212 #define PATHTYPE 263
213 #define INCLUDE 264
214 #define IDENTIFIER 265
215 #define VENDORID 266
216 #define LOGGING 267
217 #define LOGLEV 268
218 #define PADDING 269
219 #define PAD_RANDOMIZE 270
220 #define PAD_RANDOMIZELEN 271
221 #define PAD_MAXLEN 272
222 #define PAD_STRICT 273
223 #define PAD_EXCLTAIL 274
224 #define LISTEN 275
225 #define X_ISAKMP 276
226 #define X_ISAKMP_NATT 277
227 #define X_ADMIN 278
228 #define STRICT_ADDRESS 279
229 #define ADMINSOCK 280
230 #define DISABLED 281
231 #define LDAPCFG 282
232 #define LDAP_HOST 283
233 #define LDAP_PORT 284
234 #define LDAP_PVER 285
235 #define LDAP_BASE 286
236 #define LDAP_BIND_DN 287
237 #define LDAP_BIND_PW 288
238 #define LDAP_SUBTREE 289
239 #define LDAP_ATTR_USER 290
240 #define LDAP_ATTR_ADDR 291
241 #define LDAP_ATTR_MASK 292
242 #define LDAP_ATTR_GROUP 293
243 #define LDAP_ATTR_MEMBER 294
244 #define MODECFG 295
245 #define CFG_NET4 296
246 #define CFG_MASK4 297
247 #define CFG_DNS4 298
248 #define CFG_NBNS4 299
249 #define CFG_DEFAULT_DOMAIN 300
250 #define CFG_AUTH_SOURCE 301
251 #define CFG_AUTH_GROUPS 302
252 #define CFG_SYSTEM 303
253 #define CFG_RADIUS 304
254 #define CFG_PAM 305
255 #define CFG_LDAP 306
256 #define CFG_LOCAL 307
257 #define CFG_NONE 308
258 #define CFG_GROUP_SOURCE 309
259 #define CFG_ACCOUNTING 310
260 #define CFG_CONF_SOURCE 311
261 #define CFG_MOTD 312
262 #define CFG_POOL_SIZE 313
263 #define CFG_AUTH_THROTTLE 314
264 #define CFG_SPLIT_NETWORK 315
265 #define CFG_SPLIT_LOCAL 316
266 #define CFG_SPLIT_INCLUDE 317
267 #define CFG_SPLIT_DNS 318
268 #define CFG_PFS_GROUP 319
269 #define CFG_SAVE_PASSWD 320
270 #define RETRY 321
271 #define RETRY_COUNTER 322
272 #define RETRY_INTERVAL 323
273 #define RETRY_PERSEND 324
274 #define RETRY_PHASE1 325
275 #define RETRY_PHASE2 326
276 #define NATT_KA 327
277 #define ALGORITHM_CLASS 328
278 #define ALGORITHMTYPE 329
279 #define STRENGTHTYPE 330
280 #define SAINFO 331
281 #define FROM 332
282 #define REMOTE 333
283 #define ANONYMOUS 334
284 #define INHERIT 335
285 #define EXCHANGE_MODE 336
286 #define EXCHANGETYPE 337
287 #define DOI 338
288 #define DOITYPE 339
289 #define SITUATION 340
290 #define SITUATIONTYPE 341
291 #define CERTIFICATE_TYPE 342
292 #define CERTTYPE 343
293 #define PEERS_CERTFILE 344
294 #define CA_TYPE 345
295 #define VERIFY_CERT 346
296 #define SEND_CERT 347
297 #define SEND_CR 348
298 #define IDENTIFIERTYPE 349
299 #define IDENTIFIERQUAL 350
300 #define MY_IDENTIFIER 351
301 #define PEERS_IDENTIFIER 352
302 #define VERIFY_IDENTIFIER 353
303 #define DNSSEC 354
304 #define CERT_X509 355
305 #define CERT_PLAINRSA 356
306 #define NONCE_SIZE 357
307 #define DH_GROUP 358
308 #define KEEPALIVE 359
309 #define PASSIVE 360
310 #define INITIAL_CONTACT 361
311 #define NAT_TRAVERSAL 362
312 #define REMOTE_FORCE_LEVEL 363
313 #define PROPOSAL_CHECK 364
314 #define PROPOSAL_CHECK_LEVEL 365
315 #define GENERATE_POLICY 366
316 #define GENERATE_LEVEL 367
317 #define SUPPORT_PROXY 368
318 #define PROPOSAL 369
319 #define EXEC_PATH 370
320 #define EXEC_COMMAND 371
321 #define EXEC_SUCCESS 372
322 #define EXEC_FAILURE 373
323 #define GSS_ID 374
324 #define GSS_ID_ENC 375
325 #define GSS_ID_ENCTYPE 376
326 #define COMPLEX_BUNDLE 377
327 #define DPD 378
328 #define DPD_DELAY 379
329 #define DPD_RETRY 380
330 #define DPD_MAXFAIL 381
331 #define PH1ID 382
332 #define XAUTH_LOGIN 383
333 #define WEAK_PHASE1_CHECK 384
334 #define PREFIX 385
335 #define PORT 386
336 #define PORTANY 387
337 #define UL_PROTO 388
338 #define ANY 389
339 #define IKE_FRAG 390
340 #define ESP_FRAG 391
341 #define MODE_CFG 392
342 #define PFS_GROUP 393
343 #define LIFETIME 394
344 #define LIFETYPE_TIME 395
345 #define LIFETYPE_BYTE 396
346 #define STRENGTH 397
347 #define REMOTEID 398
348 #define SCRIPT 399
349 #define PHASE1_UP 400
350 #define PHASE1_DOWN 401
351 #define NUMBER 402
352 #define SWITCH 403
353 #define BOOLEAN 404
354 #define HEXSTRING 405
355 #define QUOTEDSTRING 406
356 #define ADDRSTRING 407
357 #define ADDRRANGE 408
358 #define UNITTYPE_BYTE 409
359 #define UNITTYPE_KBYTES 410
360 #define UNITTYPE_MBYTES 411
361 #define UNITTYPE_TBYTES 412
362 #define UNITTYPE_SEC 413
363 #define UNITTYPE_MIN 414
364 #define UNITTYPE_HOUR 415
365 #define EOS 416
366 #define BOC 417
367 #define EOC 418
368 #define COMMA 419
369 
370 
371 
372 
373 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
374 typedef union YYSTYPE
375 #line 174 "cfparse.y"
376 {
377 	unsigned long num;
378 	vchar_t *val;
379 	struct remoteconf *rmconf;
380 	struct sockaddr *saddr;
381 	struct sainfoalg *alg;
382 }
383 /* Line 1489 of yacc.c.  */
384 #line 385 "cfparse.h"
385 	YYSTYPE;
386 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
387 # define YYSTYPE_IS_DECLARED 1
388 # define YYSTYPE_IS_TRIVIAL 1
389 #endif
390 
391 extern YYSTYPE yylval;
392 
393