]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/ntp/ntpd/ntp_parser.h
Fix multiple denial of service in ntpd.
[FreeBSD/FreeBSD.git] / contrib / ntp / ntpd / ntp_parser.h
1 /* A Bison parser, made by GNU Bison 3.0.4.  */
2
3 /* Bison interface for Yacc-like parsers in C
4
5    Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
6
7    This program is free software: you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation, either version 3 of the License, or
10    (at your option) any later version.
11
12    This program is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16
17    You should have received a copy of the GNU General Public License
18    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19
20 /* As a special exception, you may create a larger work that contains
21    part or all of the Bison parser skeleton and distribute that work
22    under terms of your choice, so long as that work isn't itself a
23    parser generator using the skeleton or a modified version thereof
24    as a parser skeleton.  Alternatively, if you modify or redistribute
25    the parser skeleton itself, you may (at your option) remove this
26    special exception, which will cause the skeleton and the resulting
27    Bison output files to be licensed under the GNU General Public
28    License without this special exception.
29
30    This special exception was added by the Free Software Foundation in
31    version 2.2 of Bison.  */
32
33 #ifndef YY_YY__NTPD_NTP_PARSER_H_INCLUDED
34 # define YY_YY__NTPD_NTP_PARSER_H_INCLUDED
35 /* Debug traces.  */
36 #ifndef YYDEBUG
37 # define YYDEBUG 1
38 #endif
39 #if YYDEBUG
40 extern int yydebug;
41 #endif
42
43 /* Token type.  */
44 #ifndef YYTOKENTYPE
45 # define YYTOKENTYPE
46   enum yytokentype
47   {
48     T_Abbrev = 258,
49     T_Age = 259,
50     T_All = 260,
51     T_Allan = 261,
52     T_Allpeers = 262,
53     T_Auth = 263,
54     T_Autokey = 264,
55     T_Automax = 265,
56     T_Average = 266,
57     T_Basedate = 267,
58     T_Bclient = 268,
59     T_Bcpollbstep = 269,
60     T_Beacon = 270,
61     T_Broadcast = 271,
62     T_Broadcastclient = 272,
63     T_Broadcastdelay = 273,
64     T_Burst = 274,
65     T_Calibrate = 275,
66     T_Ceiling = 276,
67     T_Checkhash = 277,
68     T_Clockstats = 278,
69     T_Cohort = 279,
70     T_ControlKey = 280,
71     T_Crypto = 281,
72     T_Cryptostats = 282,
73     T_Ctl = 283,
74     T_Day = 284,
75     T_Default = 285,
76     T_Digest = 286,
77     T_Disable = 287,
78     T_Discard = 288,
79     T_Dispersion = 289,
80     T_Double = 290,
81     T_Driftfile = 291,
82     T_Drop = 292,
83     T_Dscp = 293,
84     T_Ellipsis = 294,
85     T_Enable = 295,
86     T_End = 296,
87     T_Epeer = 297,
88     T_False = 298,
89     T_File = 299,
90     T_Filegen = 300,
91     T_Filenum = 301,
92     T_Flag1 = 302,
93     T_Flag2 = 303,
94     T_Flag3 = 304,
95     T_Flag4 = 305,
96     T_Flake = 306,
97     T_Floor = 307,
98     T_Freq = 308,
99     T_Fudge = 309,
100     T_Fuzz = 310,
101     T_Host = 311,
102     T_Huffpuff = 312,
103     T_Iburst = 313,
104     T_Ident = 314,
105     T_Ignore = 315,
106     T_Ignorehash = 316,
107     T_Incalloc = 317,
108     T_Incmem = 318,
109     T_Initalloc = 319,
110     T_Initmem = 320,
111     T_Includefile = 321,
112     T_Integer = 322,
113     T_Interface = 323,
114     T_Intrange = 324,
115     T_Io = 325,
116     T_Ippeerlimit = 326,
117     T_Ipv4 = 327,
118     T_Ipv4_flag = 328,
119     T_Ipv6 = 329,
120     T_Ipv6_flag = 330,
121     T_Kernel = 331,
122     T_Key = 332,
123     T_Keys = 333,
124     T_Keysdir = 334,
125     T_Kod = 335,
126     T_Leapfile = 336,
127     T_Leapsmearinterval = 337,
128     T_Limited = 338,
129     T_Link = 339,
130     T_Listen = 340,
131     T_Logconfig = 341,
132     T_Logfile = 342,
133     T_Loopstats = 343,
134     T_Lowpriotrap = 344,
135     T_Manycastclient = 345,
136     T_Manycastserver = 346,
137     T_Mask = 347,
138     T_Maxage = 348,
139     T_Maxclock = 349,
140     T_Maxdepth = 350,
141     T_Maxdist = 351,
142     T_Maxmem = 352,
143     T_Maxpoll = 353,
144     T_Mdnstries = 354,
145     T_Mem = 355,
146     T_Memlock = 356,
147     T_Minclock = 357,
148     T_Mindepth = 358,
149     T_Mindist = 359,
150     T_Minimum = 360,
151     T_Minjitter = 361,
152     T_Minpoll = 362,
153     T_Minsane = 363,
154     T_Mode = 364,
155     T_Mode7 = 365,
156     T_Monitor = 366,
157     T_Month = 367,
158     T_Mru = 368,
159     T_Mssntp = 369,
160     T_Multicastclient = 370,
161     T_Nic = 371,
162     T_Nolink = 372,
163     T_Nomodify = 373,
164     T_Nomrulist = 374,
165     T_None = 375,
166     T_Nonvolatile = 376,
167     T_Noepeer = 377,
168     T_Nopeer = 378,
169     T_Noquery = 379,
170     T_Noselect = 380,
171     T_Noserve = 381,
172     T_Notrap = 382,
173     T_Notrust = 383,
174     T_Ntp = 384,
175     T_Ntpport = 385,
176     T_NtpSignDsocket = 386,
177     T_Orphan = 387,
178     T_Orphanwait = 388,
179     T_PCEdigest = 389,
180     T_Panic = 390,
181     T_Peer = 391,
182     T_Peerstats = 392,
183     T_Phone = 393,
184     T_Pid = 394,
185     T_Pidfile = 395,
186     T_Poll = 396,
187     T_PollSkewList = 397,
188     T_Pool = 398,
189     T_Port = 399,
190     T_Preempt = 400,
191     T_Prefer = 401,
192     T_Protostats = 402,
193     T_Pw = 403,
194     T_Randfile = 404,
195     T_Rawstats = 405,
196     T_Refid = 406,
197     T_Requestkey = 407,
198     T_Reset = 408,
199     T_Restrict = 409,
200     T_Revoke = 410,
201     T_Rlimit = 411,
202     T_Saveconfigdir = 412,
203     T_Server = 413,
204     T_Serverresponse = 414,
205     T_ServerresponseFuzz = 415,
206     T_Setvar = 416,
207     T_Source = 417,
208     T_Stacksize = 418,
209     T_Statistics = 419,
210     T_Stats = 420,
211     T_Statsdir = 421,
212     T_Step = 422,
213     T_Stepback = 423,
214     T_Stepfwd = 424,
215     T_Stepout = 425,
216     T_Stratum = 426,
217     T_String = 427,
218     T_Sys = 428,
219     T_Sysstats = 429,
220     T_Tick = 430,
221     T_Time1 = 431,
222     T_Time2 = 432,
223     T_Timer = 433,
224     T_Timingstats = 434,
225     T_Tinker = 435,
226     T_Tos = 436,
227     T_Trap = 437,
228     T_True = 438,
229     T_Trustedkey = 439,
230     T_Ttl = 440,
231     T_Type = 441,
232     T_U_int = 442,
233     T_UEcrypto = 443,
234     T_UEcryptonak = 444,
235     T_UEdigest = 445,
236     T_Unconfig = 446,
237     T_Unpeer = 447,
238     T_Version = 448,
239     T_WanderThreshold = 449,
240     T_Week = 450,
241     T_Wildcard = 451,
242     T_Xleave = 452,
243     T_Xmtnonce = 453,
244     T_Year = 454,
245     T_Flag = 455,
246     T_EOC = 456,
247     T_Simulate = 457,
248     T_Beep_Delay = 458,
249     T_Sim_Duration = 459,
250     T_Server_Offset = 460,
251     T_Duration = 461,
252     T_Freq_Offset = 462,
253     T_Wander = 463,
254     T_Jitter = 464,
255     T_Prop_Delay = 465,
256     T_Proc_Delay = 466
257   };
258 #endif
259 /* Tokens.  */
260 #define T_Abbrev 258
261 #define T_Age 259
262 #define T_All 260
263 #define T_Allan 261
264 #define T_Allpeers 262
265 #define T_Auth 263
266 #define T_Autokey 264
267 #define T_Automax 265
268 #define T_Average 266
269 #define T_Basedate 267
270 #define T_Bclient 268
271 #define T_Bcpollbstep 269
272 #define T_Beacon 270
273 #define T_Broadcast 271
274 #define T_Broadcastclient 272
275 #define T_Broadcastdelay 273
276 #define T_Burst 274
277 #define T_Calibrate 275
278 #define T_Ceiling 276
279 #define T_Checkhash 277
280 #define T_Clockstats 278
281 #define T_Cohort 279
282 #define T_ControlKey 280
283 #define T_Crypto 281
284 #define T_Cryptostats 282
285 #define T_Ctl 283
286 #define T_Day 284
287 #define T_Default 285
288 #define T_Digest 286
289 #define T_Disable 287
290 #define T_Discard 288
291 #define T_Dispersion 289
292 #define T_Double 290
293 #define T_Driftfile 291
294 #define T_Drop 292
295 #define T_Dscp 293
296 #define T_Ellipsis 294
297 #define T_Enable 295
298 #define T_End 296
299 #define T_Epeer 297
300 #define T_False 298
301 #define T_File 299
302 #define T_Filegen 300
303 #define T_Filenum 301
304 #define T_Flag1 302
305 #define T_Flag2 303
306 #define T_Flag3 304
307 #define T_Flag4 305
308 #define T_Flake 306
309 #define T_Floor 307
310 #define T_Freq 308
311 #define T_Fudge 309
312 #define T_Fuzz 310
313 #define T_Host 311
314 #define T_Huffpuff 312
315 #define T_Iburst 313
316 #define T_Ident 314
317 #define T_Ignore 315
318 #define T_Ignorehash 316
319 #define T_Incalloc 317
320 #define T_Incmem 318
321 #define T_Initalloc 319
322 #define T_Initmem 320
323 #define T_Includefile 321
324 #define T_Integer 322
325 #define T_Interface 323
326 #define T_Intrange 324
327 #define T_Io 325
328 #define T_Ippeerlimit 326
329 #define T_Ipv4 327
330 #define T_Ipv4_flag 328
331 #define T_Ipv6 329
332 #define T_Ipv6_flag 330
333 #define T_Kernel 331
334 #define T_Key 332
335 #define T_Keys 333
336 #define T_Keysdir 334
337 #define T_Kod 335
338 #define T_Leapfile 336
339 #define T_Leapsmearinterval 337
340 #define T_Limited 338
341 #define T_Link 339
342 #define T_Listen 340
343 #define T_Logconfig 341
344 #define T_Logfile 342
345 #define T_Loopstats 343
346 #define T_Lowpriotrap 344
347 #define T_Manycastclient 345
348 #define T_Manycastserver 346
349 #define T_Mask 347
350 #define T_Maxage 348
351 #define T_Maxclock 349
352 #define T_Maxdepth 350
353 #define T_Maxdist 351
354 #define T_Maxmem 352
355 #define T_Maxpoll 353
356 #define T_Mdnstries 354
357 #define T_Mem 355
358 #define T_Memlock 356
359 #define T_Minclock 357
360 #define T_Mindepth 358
361 #define T_Mindist 359
362 #define T_Minimum 360
363 #define T_Minjitter 361
364 #define T_Minpoll 362
365 #define T_Minsane 363
366 #define T_Mode 364
367 #define T_Mode7 365
368 #define T_Monitor 366
369 #define T_Month 367
370 #define T_Mru 368
371 #define T_Mssntp 369
372 #define T_Multicastclient 370
373 #define T_Nic 371
374 #define T_Nolink 372
375 #define T_Nomodify 373
376 #define T_Nomrulist 374
377 #define T_None 375
378 #define T_Nonvolatile 376
379 #define T_Noepeer 377
380 #define T_Nopeer 378
381 #define T_Noquery 379
382 #define T_Noselect 380
383 #define T_Noserve 381
384 #define T_Notrap 382
385 #define T_Notrust 383
386 #define T_Ntp 384
387 #define T_Ntpport 385
388 #define T_NtpSignDsocket 386
389 #define T_Orphan 387
390 #define T_Orphanwait 388
391 #define T_PCEdigest 389
392 #define T_Panic 390
393 #define T_Peer 391
394 #define T_Peerstats 392
395 #define T_Phone 393
396 #define T_Pid 394
397 #define T_Pidfile 395
398 #define T_Poll 396
399 #define T_PollSkewList 397
400 #define T_Pool 398
401 #define T_Port 399
402 #define T_Preempt 400
403 #define T_Prefer 401
404 #define T_Protostats 402
405 #define T_Pw 403
406 #define T_Randfile 404
407 #define T_Rawstats 405
408 #define T_Refid 406
409 #define T_Requestkey 407
410 #define T_Reset 408
411 #define T_Restrict 409
412 #define T_Revoke 410
413 #define T_Rlimit 411
414 #define T_Saveconfigdir 412
415 #define T_Server 413
416 #define T_Serverresponse 414
417 #define T_ServerresponseFuzz 415
418 #define T_Setvar 416
419 #define T_Source 417
420 #define T_Stacksize 418
421 #define T_Statistics 419
422 #define T_Stats 420
423 #define T_Statsdir 421
424 #define T_Step 422
425 #define T_Stepback 423
426 #define T_Stepfwd 424
427 #define T_Stepout 425
428 #define T_Stratum 426
429 #define T_String 427
430 #define T_Sys 428
431 #define T_Sysstats 429
432 #define T_Tick 430
433 #define T_Time1 431
434 #define T_Time2 432
435 #define T_Timer 433
436 #define T_Timingstats 434
437 #define T_Tinker 435
438 #define T_Tos 436
439 #define T_Trap 437
440 #define T_True 438
441 #define T_Trustedkey 439
442 #define T_Ttl 440
443 #define T_Type 441
444 #define T_U_int 442
445 #define T_UEcrypto 443
446 #define T_UEcryptonak 444
447 #define T_UEdigest 445
448 #define T_Unconfig 446
449 #define T_Unpeer 447
450 #define T_Version 448
451 #define T_WanderThreshold 449
452 #define T_Week 450
453 #define T_Wildcard 451
454 #define T_Xleave 452
455 #define T_Xmtnonce 453
456 #define T_Year 454
457 #define T_Flag 455
458 #define T_EOC 456
459 #define T_Simulate 457
460 #define T_Beep_Delay 458
461 #define T_Sim_Duration 459
462 #define T_Server_Offset 460
463 #define T_Duration 461
464 #define T_Freq_Offset 462
465 #define T_Wander 463
466 #define T_Jitter 464
467 #define T_Prop_Delay 465
468 #define T_Proc_Delay 466
469
470 /* Value type.  */
471 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
472
473 union YYSTYPE
474 {
475 #line 52 "../../ntpd/ntp_parser.y" /* yacc.c:1909  */
476
477         char *                  String;
478         double                  Double;
479         int                     Integer;
480         unsigned                U_int;
481         gen_fifo *              Generic_fifo;
482         attr_val *              Attr_val;
483         attr_val_fifo *         Attr_val_fifo;
484         int_fifo *              Int_fifo;
485         string_fifo *           String_fifo;
486         address_node *          Address_node;
487         address_fifo *          Address_fifo;
488         setvar_node *           Set_var;
489         server_info *           Sim_server;
490         server_info_fifo *      Sim_server_fifo;
491         script_info *           Sim_script;
492         script_info_fifo *      Sim_script_fifo;
493
494 #line 495 "../../ntpd/ntp_parser.h" /* yacc.c:1909  */
495 };
496
497 typedef union YYSTYPE YYSTYPE;
498 # define YYSTYPE_IS_TRIVIAL 1
499 # define YYSTYPE_IS_DECLARED 1
500 #endif
501
502
503 extern YYSTYPE yylval;
504
505 int yyparse (void);
506
507 #endif /* !YY_YY__NTPD_NTP_PARSER_H_INCLUDED  */