1301301Sdelphij/* A Bison parser, made by GNU Bison 3.0.4.  */
2258945Sroberto
3275970Scy/* Bison implementation for Yacc-like parsers in C
4301301Sdelphij
5301301Sdelphij   Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
6301301Sdelphij
7258945Sroberto   This program is free software: you can redistribute it and/or modify
8258945Sroberto   it under the terms of the GNU General Public License as published by
9258945Sroberto   the Free Software Foundation, either version 3 of the License, or
10258945Sroberto   (at your option) any later version.
11301301Sdelphij
12258945Sroberto   This program is distributed in the hope that it will be useful,
13258945Sroberto   but WITHOUT ANY WARRANTY; without even the implied warranty of
14258945Sroberto   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15258945Sroberto   GNU General Public License for more details.
16301301Sdelphij
17258945Sroberto   You should have received a copy of the GNU General Public License
18258945Sroberto   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19258945Sroberto
20258945Sroberto/* As a special exception, you may create a larger work that contains
21258945Sroberto   part or all of the Bison parser skeleton and distribute that work
22258945Sroberto   under terms of your choice, so long as that work isn't itself a
23258945Sroberto   parser generator using the skeleton or a modified version thereof
24258945Sroberto   as a parser skeleton.  Alternatively, if you modify or redistribute
25258945Sroberto   the parser skeleton itself, you may (at your option) remove this
26258945Sroberto   special exception, which will cause the skeleton and the resulting
27258945Sroberto   Bison output files to be licensed under the GNU General Public
28258945Sroberto   License without this special exception.
29301301Sdelphij
30258945Sroberto   This special exception was added by the Free Software Foundation in
31258945Sroberto   version 2.2 of Bison.  */
32258945Sroberto
33258945Sroberto/* C LALR(1) parser skeleton written by Richard Stallman, by
34258945Sroberto   simplifying the original so-called "semantic" parser.  */
35258945Sroberto
36258945Sroberto/* All symbols defined below should begin with yy or YY, to avoid
37258945Sroberto   infringing on user name space.  This should be done even for local
38258945Sroberto   variables, as they might otherwise be expanded by user macros.
39258945Sroberto   There are some unavoidable exceptions within include files to
40258945Sroberto   define necessary library symbols; they are noted "INFRINGES ON
41258945Sroberto   USER NAME SPACE" below.  */
42258945Sroberto
43258945Sroberto/* Identify Bison output.  */
44258945Sroberto#define YYBISON 1
45258945Sroberto
46258945Sroberto/* Bison version.  */
47301301Sdelphij#define YYBISON_VERSION "3.0.4"
48258945Sroberto
49258945Sroberto/* Skeleton name.  */
50258945Sroberto#define YYSKELETON_NAME "yacc.c"
51258945Sroberto
52258945Sroberto/* Pure parsers.  */
53258945Sroberto#define YYPURE 0
54258945Sroberto
55258945Sroberto/* Push parsers.  */
56258945Sroberto#define YYPUSH 0
57258945Sroberto
58258945Sroberto/* Pull parsers.  */
59258945Sroberto#define YYPULL 1
60258945Sroberto
61258945Sroberto
62258945Sroberto
63258945Sroberto
64258945Sroberto/* Copy the first part of user declarations.  */
65301301Sdelphij#line 11 "../../ntpd/ntp_parser.y" /* yacc.c:339  */
66258945Sroberto
67258945Sroberto  #ifdef HAVE_CONFIG_H
68258945Sroberto  # include <config.h>
69258945Sroberto  #endif
70258945Sroberto
71258945Sroberto  #include "ntp.h"
72258945Sroberto  #include "ntpd.h"
73258945Sroberto  #include "ntp_machine.h"
74258945Sroberto  #include "ntp_stdlib.h"
75258945Sroberto  #include "ntp_filegen.h"
76258945Sroberto  #include "ntp_scanner.h"
77258945Sroberto  #include "ntp_config.h"
78258945Sroberto  #include "ntp_crypto.h"
79258945Sroberto
80258945Sroberto  #include "ntpsim.h"		/* HMS: Do we really want this all the time? */
81258945Sroberto				/* SK: It might be a good idea to always
82258945Sroberto				   include the simulator code. That way
83258945Sroberto				   someone can use the same configuration file
84258945Sroberto				   for both the simulator and the daemon
85258945Sroberto				*/
86258945Sroberto
87258945Sroberto  #define YYMALLOC	emalloc
88258945Sroberto  #define YYFREE	free
89258945Sroberto  #define YYERROR_VERBOSE
90275970Scy  #define YYMAXDEPTH	1000	/* stop the madness sooner */
91290000Sglebius  void yyerror(const char *msg);
92258945Sroberto
93275970Scy  #ifdef SIM
94275970Scy  #  define ONLY_SIM(a)	(a)
95275970Scy  #else
96275970Scy  #  define ONLY_SIM(a)	NULL
97275970Scy  #endif
98258945Sroberto
99310419Sdelphij#line 100 "ntp_parser.c" /* yacc.c:339  */
100258945Sroberto
101301301Sdelphij# ifndef YY_NULLPTR
102275970Scy#  if defined __cplusplus && 201103L <= __cplusplus
103301301Sdelphij#   define YY_NULLPTR nullptr
104275970Scy#  else
105301301Sdelphij#   define YY_NULLPTR 0
106275970Scy#  endif
107275970Scy# endif
108258945Sroberto
109258945Sroberto/* Enabling verbose error messages.  */
110258945Sroberto#ifdef YYERROR_VERBOSE
111258945Sroberto# undef YYERROR_VERBOSE
112258945Sroberto# define YYERROR_VERBOSE 1
113258945Sroberto#else
114258945Sroberto# define YYERROR_VERBOSE 0
115258945Sroberto#endif
116258945Sroberto
117275970Scy/* In a future release of Bison, this section will be replaced
118275970Scy   by #include "y.tab.h".  */
119301301Sdelphij#ifndef YY_YY_Y_TAB_H_INCLUDED
120301301Sdelphij# define YY_YY_Y_TAB_H_INCLUDED
121301301Sdelphij/* Debug traces.  */
122275970Scy#ifndef YYDEBUG
123275970Scy# define YYDEBUG 1
124258945Sroberto#endif
125275970Scy#if YYDEBUG
126275970Scyextern int yydebug;
127275970Scy#endif
128258945Sroberto
129301301Sdelphij/* Token type.  */
130258945Sroberto#ifndef YYTOKENTYPE
131258945Sroberto# define YYTOKENTYPE
132301301Sdelphij  enum yytokentype
133301301Sdelphij  {
134301301Sdelphij    T_Abbrev = 258,
135301301Sdelphij    T_Age = 259,
136301301Sdelphij    T_All = 260,
137301301Sdelphij    T_Allan = 261,
138301301Sdelphij    T_Allpeers = 262,
139301301Sdelphij    T_Auth = 263,
140301301Sdelphij    T_Autokey = 264,
141301301Sdelphij    T_Automax = 265,
142301301Sdelphij    T_Average = 266,
143301301Sdelphij    T_Bclient = 267,
144310419Sdelphij    T_Bcpollbstep = 268,
145310419Sdelphij    T_Beacon = 269,
146310419Sdelphij    T_Broadcast = 270,
147310419Sdelphij    T_Broadcastclient = 271,
148310419Sdelphij    T_Broadcastdelay = 272,
149310419Sdelphij    T_Burst = 273,
150310419Sdelphij    T_Calibrate = 274,
151310419Sdelphij    T_Ceiling = 275,
152310419Sdelphij    T_Clockstats = 276,
153310419Sdelphij    T_Cohort = 277,
154310419Sdelphij    T_ControlKey = 278,
155310419Sdelphij    T_Crypto = 279,
156310419Sdelphij    T_Cryptostats = 280,
157310419Sdelphij    T_Ctl = 281,
158310419Sdelphij    T_Day = 282,
159310419Sdelphij    T_Default = 283,
160310419Sdelphij    T_Digest = 284,
161310419Sdelphij    T_Disable = 285,
162310419Sdelphij    T_Discard = 286,
163310419Sdelphij    T_Dispersion = 287,
164310419Sdelphij    T_Double = 288,
165310419Sdelphij    T_Driftfile = 289,
166310419Sdelphij    T_Drop = 290,
167310419Sdelphij    T_Dscp = 291,
168310419Sdelphij    T_Ellipsis = 292,
169310419Sdelphij    T_Enable = 293,
170310419Sdelphij    T_End = 294,
171310419Sdelphij    T_False = 295,
172310419Sdelphij    T_File = 296,
173310419Sdelphij    T_Filegen = 297,
174310419Sdelphij    T_Filenum = 298,
175310419Sdelphij    T_Flag1 = 299,
176310419Sdelphij    T_Flag2 = 300,
177310419Sdelphij    T_Flag3 = 301,
178310419Sdelphij    T_Flag4 = 302,
179310419Sdelphij    T_Flake = 303,
180310419Sdelphij    T_Floor = 304,
181310419Sdelphij    T_Freq = 305,
182310419Sdelphij    T_Fudge = 306,
183310419Sdelphij    T_Host = 307,
184310419Sdelphij    T_Huffpuff = 308,
185310419Sdelphij    T_Iburst = 309,
186310419Sdelphij    T_Ident = 310,
187310419Sdelphij    T_Ignore = 311,
188310419Sdelphij    T_Incalloc = 312,
189310419Sdelphij    T_Incmem = 313,
190310419Sdelphij    T_Initalloc = 314,
191310419Sdelphij    T_Initmem = 315,
192310419Sdelphij    T_Includefile = 316,
193310419Sdelphij    T_Integer = 317,
194310419Sdelphij    T_Interface = 318,
195310419Sdelphij    T_Intrange = 319,
196310419Sdelphij    T_Io = 320,
197310419Sdelphij    T_Ipv4 = 321,
198310419Sdelphij    T_Ipv4_flag = 322,
199310419Sdelphij    T_Ipv6 = 323,
200310419Sdelphij    T_Ipv6_flag = 324,
201310419Sdelphij    T_Kernel = 325,
202310419Sdelphij    T_Key = 326,
203310419Sdelphij    T_Keys = 327,
204310419Sdelphij    T_Keysdir = 328,
205310419Sdelphij    T_Kod = 329,
206310419Sdelphij    T_Mssntp = 330,
207310419Sdelphij    T_Leapfile = 331,
208310419Sdelphij    T_Leapsmearinterval = 332,
209310419Sdelphij    T_Limited = 333,
210310419Sdelphij    T_Link = 334,
211310419Sdelphij    T_Listen = 335,
212310419Sdelphij    T_Logconfig = 336,
213310419Sdelphij    T_Logfile = 337,
214310419Sdelphij    T_Loopstats = 338,
215310419Sdelphij    T_Lowpriotrap = 339,
216310419Sdelphij    T_Manycastclient = 340,
217310419Sdelphij    T_Manycastserver = 341,
218310419Sdelphij    T_Mask = 342,
219310419Sdelphij    T_Maxage = 343,
220310419Sdelphij    T_Maxclock = 344,
221310419Sdelphij    T_Maxdepth = 345,
222310419Sdelphij    T_Maxdist = 346,
223310419Sdelphij    T_Maxmem = 347,
224310419Sdelphij    T_Maxpoll = 348,
225310419Sdelphij    T_Mdnstries = 349,
226310419Sdelphij    T_Mem = 350,
227310419Sdelphij    T_Memlock = 351,
228310419Sdelphij    T_Minclock = 352,
229310419Sdelphij    T_Mindepth = 353,
230310419Sdelphij    T_Mindist = 354,
231310419Sdelphij    T_Minimum = 355,
232310419Sdelphij    T_Minpoll = 356,
233310419Sdelphij    T_Minsane = 357,
234310419Sdelphij    T_Mode = 358,
235310419Sdelphij    T_Mode7 = 359,
236310419Sdelphij    T_Monitor = 360,
237310419Sdelphij    T_Month = 361,
238310419Sdelphij    T_Mru = 362,
239310419Sdelphij    T_Multicastclient = 363,
240310419Sdelphij    T_Nic = 364,
241310419Sdelphij    T_Nolink = 365,
242310419Sdelphij    T_Nomodify = 366,
243310419Sdelphij    T_Nomrulist = 367,
244310419Sdelphij    T_None = 368,
245310419Sdelphij    T_Nonvolatile = 369,
246310419Sdelphij    T_Nopeer = 370,
247310419Sdelphij    T_Noquery = 371,
248310419Sdelphij    T_Noselect = 372,
249310419Sdelphij    T_Noserve = 373,
250310419Sdelphij    T_Notrap = 374,
251310419Sdelphij    T_Notrust = 375,
252310419Sdelphij    T_Ntp = 376,
253310419Sdelphij    T_Ntpport = 377,
254310419Sdelphij    T_NtpSignDsocket = 378,
255310419Sdelphij    T_Orphan = 379,
256310419Sdelphij    T_Orphanwait = 380,
257310419Sdelphij    T_PCEdigest = 381,
258310419Sdelphij    T_Panic = 382,
259310419Sdelphij    T_Peer = 383,
260310419Sdelphij    T_Peerstats = 384,
261310419Sdelphij    T_Phone = 385,
262310419Sdelphij    T_Pid = 386,
263310419Sdelphij    T_Pidfile = 387,
264310419Sdelphij    T_Pool = 388,
265310419Sdelphij    T_Port = 389,
266310419Sdelphij    T_Preempt = 390,
267310419Sdelphij    T_Prefer = 391,
268310419Sdelphij    T_Protostats = 392,
269310419Sdelphij    T_Pw = 393,
270310419Sdelphij    T_Randfile = 394,
271310419Sdelphij    T_Rawstats = 395,
272310419Sdelphij    T_Refid = 396,
273310419Sdelphij    T_Requestkey = 397,
274310419Sdelphij    T_Reset = 398,
275310419Sdelphij    T_Restrict = 399,
276310419Sdelphij    T_Revoke = 400,
277310419Sdelphij    T_Rlimit = 401,
278310419Sdelphij    T_Saveconfigdir = 402,
279310419Sdelphij    T_Server = 403,
280310419Sdelphij    T_Setvar = 404,
281310419Sdelphij    T_Source = 405,
282310419Sdelphij    T_Stacksize = 406,
283310419Sdelphij    T_Statistics = 407,
284310419Sdelphij    T_Stats = 408,
285310419Sdelphij    T_Statsdir = 409,
286310419Sdelphij    T_Step = 410,
287310419Sdelphij    T_Stepback = 411,
288310419Sdelphij    T_Stepfwd = 412,
289310419Sdelphij    T_Stepout = 413,
290310419Sdelphij    T_Stratum = 414,
291310419Sdelphij    T_String = 415,
292310419Sdelphij    T_Sys = 416,
293310419Sdelphij    T_Sysstats = 417,
294310419Sdelphij    T_Tick = 418,
295310419Sdelphij    T_Time1 = 419,
296310419Sdelphij    T_Time2 = 420,
297310419Sdelphij    T_Timer = 421,
298310419Sdelphij    T_Timingstats = 422,
299310419Sdelphij    T_Tinker = 423,
300310419Sdelphij    T_Tos = 424,
301310419Sdelphij    T_Trap = 425,
302310419Sdelphij    T_True = 426,
303310419Sdelphij    T_Trustedkey = 427,
304310419Sdelphij    T_Ttl = 428,
305310419Sdelphij    T_Type = 429,
306310419Sdelphij    T_U_int = 430,
307310419Sdelphij    T_UEcrypto = 431,
308310419Sdelphij    T_UEcryptonak = 432,
309310419Sdelphij    T_UEdigest = 433,
310310419Sdelphij    T_Unconfig = 434,
311310419Sdelphij    T_Unpeer = 435,
312310419Sdelphij    T_Version = 436,
313310419Sdelphij    T_WanderThreshold = 437,
314310419Sdelphij    T_Week = 438,
315310419Sdelphij    T_Wildcard = 439,
316310419Sdelphij    T_Xleave = 440,
317310419Sdelphij    T_Year = 441,
318310419Sdelphij    T_Flag = 442,
319310419Sdelphij    T_EOC = 443,
320310419Sdelphij    T_Simulate = 444,
321310419Sdelphij    T_Beep_Delay = 445,
322310419Sdelphij    T_Sim_Duration = 446,
323310419Sdelphij    T_Server_Offset = 447,
324310419Sdelphij    T_Duration = 448,
325310419Sdelphij    T_Freq_Offset = 449,
326310419Sdelphij    T_Wander = 450,
327310419Sdelphij    T_Jitter = 451,
328310419Sdelphij    T_Prop_Delay = 452,
329310419Sdelphij    T_Proc_Delay = 453
330301301Sdelphij  };
331258945Sroberto#endif
332258945Sroberto/* Tokens.  */
333275970Scy#define T_Abbrev 258
334275970Scy#define T_Age 259
335275970Scy#define T_All 260
336275970Scy#define T_Allan 261
337275970Scy#define T_Allpeers 262
338275970Scy#define T_Auth 263
339275970Scy#define T_Autokey 264
340275970Scy#define T_Automax 265
341275970Scy#define T_Average 266
342275970Scy#define T_Bclient 267
343310419Sdelphij#define T_Bcpollbstep 268
344310419Sdelphij#define T_Beacon 269
345310419Sdelphij#define T_Broadcast 270
346310419Sdelphij#define T_Broadcastclient 271
347310419Sdelphij#define T_Broadcastdelay 272
348310419Sdelphij#define T_Burst 273
349310419Sdelphij#define T_Calibrate 274
350310419Sdelphij#define T_Ceiling 275
351310419Sdelphij#define T_Clockstats 276
352310419Sdelphij#define T_Cohort 277
353310419Sdelphij#define T_ControlKey 278
354310419Sdelphij#define T_Crypto 279
355310419Sdelphij#define T_Cryptostats 280
356310419Sdelphij#define T_Ctl 281
357310419Sdelphij#define T_Day 282
358310419Sdelphij#define T_Default 283
359310419Sdelphij#define T_Digest 284
360310419Sdelphij#define T_Disable 285
361310419Sdelphij#define T_Discard 286
362310419Sdelphij#define T_Dispersion 287
363310419Sdelphij#define T_Double 288
364310419Sdelphij#define T_Driftfile 289
365310419Sdelphij#define T_Drop 290
366310419Sdelphij#define T_Dscp 291
367310419Sdelphij#define T_Ellipsis 292
368310419Sdelphij#define T_Enable 293
369310419Sdelphij#define T_End 294
370310419Sdelphij#define T_False 295
371310419Sdelphij#define T_File 296
372310419Sdelphij#define T_Filegen 297
373310419Sdelphij#define T_Filenum 298
374310419Sdelphij#define T_Flag1 299
375310419Sdelphij#define T_Flag2 300
376310419Sdelphij#define T_Flag3 301
377310419Sdelphij#define T_Flag4 302
378310419Sdelphij#define T_Flake 303
379310419Sdelphij#define T_Floor 304
380310419Sdelphij#define T_Freq 305
381310419Sdelphij#define T_Fudge 306
382310419Sdelphij#define T_Host 307
383310419Sdelphij#define T_Huffpuff 308
384310419Sdelphij#define T_Iburst 309
385310419Sdelphij#define T_Ident 310
386310419Sdelphij#define T_Ignore 311
387310419Sdelphij#define T_Incalloc 312
388310419Sdelphij#define T_Incmem 313
389310419Sdelphij#define T_Initalloc 314
390310419Sdelphij#define T_Initmem 315
391310419Sdelphij#define T_Includefile 316
392310419Sdelphij#define T_Integer 317
393310419Sdelphij#define T_Interface 318
394310419Sdelphij#define T_Intrange 319
395310419Sdelphij#define T_Io 320
396310419Sdelphij#define T_Ipv4 321
397310419Sdelphij#define T_Ipv4_flag 322
398310419Sdelphij#define T_Ipv6 323
399310419Sdelphij#define T_Ipv6_flag 324
400310419Sdelphij#define T_Kernel 325
401310419Sdelphij#define T_Key 326
402310419Sdelphij#define T_Keys 327
403310419Sdelphij#define T_Keysdir 328
404310419Sdelphij#define T_Kod 329
405310419Sdelphij#define T_Mssntp 330
406310419Sdelphij#define T_Leapfile 331
407310419Sdelphij#define T_Leapsmearinterval 332
408310419Sdelphij#define T_Limited 333
409310419Sdelphij#define T_Link 334
410310419Sdelphij#define T_Listen 335
411310419Sdelphij#define T_Logconfig 336
412310419Sdelphij#define T_Logfile 337
413310419Sdelphij#define T_Loopstats 338
414310419Sdelphij#define T_Lowpriotrap 339
415310419Sdelphij#define T_Manycastclient 340
416310419Sdelphij#define T_Manycastserver 341
417310419Sdelphij#define T_Mask 342
418310419Sdelphij#define T_Maxage 343
419310419Sdelphij#define T_Maxclock 344
420310419Sdelphij#define T_Maxdepth 345
421310419Sdelphij#define T_Maxdist 346
422310419Sdelphij#define T_Maxmem 347
423310419Sdelphij#define T_Maxpoll 348
424310419Sdelphij#define T_Mdnstries 349
425310419Sdelphij#define T_Mem 350
426310419Sdelphij#define T_Memlock 351
427310419Sdelphij#define T_Minclock 352
428310419Sdelphij#define T_Mindepth 353
429310419Sdelphij#define T_Mindist 354
430310419Sdelphij#define T_Minimum 355
431310419Sdelphij#define T_Minpoll 356
432310419Sdelphij#define T_Minsane 357
433310419Sdelphij#define T_Mode 358
434310419Sdelphij#define T_Mode7 359
435310419Sdelphij#define T_Monitor 360
436310419Sdelphij#define T_Month 361
437310419Sdelphij#define T_Mru 362
438310419Sdelphij#define T_Multicastclient 363
439310419Sdelphij#define T_Nic 364
440310419Sdelphij#define T_Nolink 365
441310419Sdelphij#define T_Nomodify 366
442310419Sdelphij#define T_Nomrulist 367
443310419Sdelphij#define T_None 368
444310419Sdelphij#define T_Nonvolatile 369
445310419Sdelphij#define T_Nopeer 370
446310419Sdelphij#define T_Noquery 371
447310419Sdelphij#define T_Noselect 372
448310419Sdelphij#define T_Noserve 373
449310419Sdelphij#define T_Notrap 374
450310419Sdelphij#define T_Notrust 375
451310419Sdelphij#define T_Ntp 376
452310419Sdelphij#define T_Ntpport 377
453310419Sdelphij#define T_NtpSignDsocket 378
454310419Sdelphij#define T_Orphan 379
455310419Sdelphij#define T_Orphanwait 380
456310419Sdelphij#define T_PCEdigest 381
457310419Sdelphij#define T_Panic 382
458310419Sdelphij#define T_Peer 383
459310419Sdelphij#define T_Peerstats 384
460310419Sdelphij#define T_Phone 385
461310419Sdelphij#define T_Pid 386
462310419Sdelphij#define T_Pidfile 387
463310419Sdelphij#define T_Pool 388
464310419Sdelphij#define T_Port 389
465310419Sdelphij#define T_Preempt 390
466310419Sdelphij#define T_Prefer 391
467310419Sdelphij#define T_Protostats 392
468310419Sdelphij#define T_Pw 393
469310419Sdelphij#define T_Randfile 394
470310419Sdelphij#define T_Rawstats 395
471310419Sdelphij#define T_Refid 396
472310419Sdelphij#define T_Requestkey 397
473310419Sdelphij#define T_Reset 398
474310419Sdelphij#define T_Restrict 399
475310419Sdelphij#define T_Revoke 400
476310419Sdelphij#define T_Rlimit 401
477310419Sdelphij#define T_Saveconfigdir 402
478310419Sdelphij#define T_Server 403
479310419Sdelphij#define T_Setvar 404
480310419Sdelphij#define T_Source 405
481310419Sdelphij#define T_Stacksize 406
482310419Sdelphij#define T_Statistics 407
483310419Sdelphij#define T_Stats 408
484310419Sdelphij#define T_Statsdir 409
485310419Sdelphij#define T_Step 410
486310419Sdelphij#define T_Stepback 411
487310419Sdelphij#define T_Stepfwd 412
488310419Sdelphij#define T_Stepout 413
489310419Sdelphij#define T_Stratum 414
490310419Sdelphij#define T_String 415
491310419Sdelphij#define T_Sys 416
492310419Sdelphij#define T_Sysstats 417
493310419Sdelphij#define T_Tick 418
494310419Sdelphij#define T_Time1 419
495310419Sdelphij#define T_Time2 420
496310419Sdelphij#define T_Timer 421
497310419Sdelphij#define T_Timingstats 422
498310419Sdelphij#define T_Tinker 423
499310419Sdelphij#define T_Tos 424
500310419Sdelphij#define T_Trap 425
501310419Sdelphij#define T_True 426
502310419Sdelphij#define T_Trustedkey 427
503310419Sdelphij#define T_Ttl 428
504310419Sdelphij#define T_Type 429
505310419Sdelphij#define T_U_int 430
506310419Sdelphij#define T_UEcrypto 431
507310419Sdelphij#define T_UEcryptonak 432
508310419Sdelphij#define T_UEdigest 433
509310419Sdelphij#define T_Unconfig 434
510310419Sdelphij#define T_Unpeer 435
511310419Sdelphij#define T_Version 436
512310419Sdelphij#define T_WanderThreshold 437
513310419Sdelphij#define T_Week 438
514310419Sdelphij#define T_Wildcard 439
515310419Sdelphij#define T_Xleave 440
516310419Sdelphij#define T_Year 441
517310419Sdelphij#define T_Flag 442
518310419Sdelphij#define T_EOC 443
519310419Sdelphij#define T_Simulate 444
520310419Sdelphij#define T_Beep_Delay 445
521310419Sdelphij#define T_Sim_Duration 446
522310419Sdelphij#define T_Server_Offset 447
523310419Sdelphij#define T_Duration 448
524310419Sdelphij#define T_Freq_Offset 449
525310419Sdelphij#define T_Wander 450
526310419Sdelphij#define T_Jitter 451
527310419Sdelphij#define T_Prop_Delay 452
528310419Sdelphij#define T_Proc_Delay 453
529258945Sroberto
530301301Sdelphij/* Value type.  */
531301301Sdelphij#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
532294904Sdelphij
533301301Sdelphijunion YYSTYPE
534258945Sroberto{
535301301Sdelphij#line 51 "../../ntpd/ntp_parser.y" /* yacc.c:355  */
536258945Sroberto
537275970Scy	char *			String;
538275970Scy	double			Double;
539275970Scy	int			Integer;
540275970Scy	unsigned		U_int;
541275970Scy	gen_fifo *		Generic_fifo;
542275970Scy	attr_val *		Attr_val;
543275970Scy	attr_val_fifo *		Attr_val_fifo;
544275970Scy	int_fifo *		Int_fifo;
545275970Scy	string_fifo *		String_fifo;
546275970Scy	address_node *		Address_node;
547275970Scy	address_fifo *		Address_fifo;
548275970Scy	setvar_node *		Set_var;
549275970Scy	server_info *		Sim_server;
550275970Scy	server_info_fifo *	Sim_server_fifo;
551275970Scy	script_info *		Sim_script;
552275970Scy	script_info_fifo *	Sim_script_fifo;
553258945Sroberto
554310419Sdelphij#line 555 "ntp_parser.c" /* yacc.c:355  */
555301301Sdelphij};
556294904Sdelphij
557301301Sdelphijtypedef union YYSTYPE YYSTYPE;
558275970Scy# define YYSTYPE_IS_TRIVIAL 1
559275970Scy# define YYSTYPE_IS_DECLARED 1
560275970Scy#endif
561258945Sroberto
562301301Sdelphij
563275970Scyextern YYSTYPE yylval;
564258945Sroberto
565290000Sglebiusint yyparse (void);
566258945Sroberto
567301301Sdelphij#endif /* !YY_YY_Y_TAB_H_INCLUDED  */
568258945Sroberto
569258945Sroberto/* Copy the second part of user declarations.  */
570258945Sroberto
571310419Sdelphij#line 572 "ntp_parser.c" /* yacc.c:358  */
572258945Sroberto
573258945Sroberto#ifdef short
574258945Sroberto# undef short
575258945Sroberto#endif
576258945Sroberto
577258945Sroberto#ifdef YYTYPE_UINT8
578258945Srobertotypedef YYTYPE_UINT8 yytype_uint8;
579258945Sroberto#else
580258945Srobertotypedef unsigned char yytype_uint8;
581258945Sroberto#endif
582258945Sroberto
583258945Sroberto#ifdef YYTYPE_INT8
584258945Srobertotypedef YYTYPE_INT8 yytype_int8;
585301301Sdelphij#else
586294904Sdelphijtypedef signed char yytype_int8;
587258945Sroberto#endif
588258945Sroberto
589258945Sroberto#ifdef YYTYPE_UINT16
590258945Srobertotypedef YYTYPE_UINT16 yytype_uint16;
591258945Sroberto#else
592258945Srobertotypedef unsigned short int yytype_uint16;
593258945Sroberto#endif
594258945Sroberto
595258945Sroberto#ifdef YYTYPE_INT16
596258945Srobertotypedef YYTYPE_INT16 yytype_int16;
597258945Sroberto#else
598258945Srobertotypedef short int yytype_int16;
599258945Sroberto#endif
600258945Sroberto
601258945Sroberto#ifndef YYSIZE_T
602258945Sroberto# ifdef __SIZE_TYPE__
603258945Sroberto#  define YYSIZE_T __SIZE_TYPE__
604258945Sroberto# elif defined size_t
605258945Sroberto#  define YYSIZE_T size_t
606301301Sdelphij# elif ! defined YYSIZE_T
607258945Sroberto#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
608258945Sroberto#  define YYSIZE_T size_t
609258945Sroberto# else
610258945Sroberto#  define YYSIZE_T unsigned int
611258945Sroberto# endif
612258945Sroberto#endif
613258945Sroberto
614258945Sroberto#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
615258945Sroberto
616258945Sroberto#ifndef YY_
617258945Sroberto# if defined YYENABLE_NLS && YYENABLE_NLS
618258945Sroberto#  if ENABLE_NLS
619258945Sroberto#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
620275970Scy#   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
621258945Sroberto#  endif
622258945Sroberto# endif
623258945Sroberto# ifndef YY_
624275970Scy#  define YY_(Msgid) Msgid
625258945Sroberto# endif
626258945Sroberto#endif
627258945Sroberto
628301301Sdelphij#ifndef YY_ATTRIBUTE
629301301Sdelphij# if (defined __GNUC__                                               \
630301301Sdelphij      && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__)))  \
631301301Sdelphij     || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
632301301Sdelphij#  define YY_ATTRIBUTE(Spec) __attribute__(Spec)
633301301Sdelphij# else
634301301Sdelphij#  define YY_ATTRIBUTE(Spec) /* empty */
635275970Scy# endif
636275970Scy#endif
637275970Scy
638301301Sdelphij#ifndef YY_ATTRIBUTE_PURE
639301301Sdelphij# define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
640301301Sdelphij#endif
641301301Sdelphij
642301301Sdelphij#ifndef YY_ATTRIBUTE_UNUSED
643301301Sdelphij# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
644301301Sdelphij#endif
645301301Sdelphij
646301301Sdelphij#if !defined _Noreturn \
647301301Sdelphij     && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
648301301Sdelphij# if defined _MSC_VER && 1200 <= _MSC_VER
649301301Sdelphij#  define _Noreturn __declspec (noreturn)
650301301Sdelphij# else
651301301Sdelphij#  define _Noreturn YY_ATTRIBUTE ((__noreturn__))
652301301Sdelphij# endif
653301301Sdelphij#endif
654301301Sdelphij
655258945Sroberto/* Suppress unused-variable warnings by "using" E.  */
656258945Sroberto#if ! defined lint || defined __GNUC__
657275970Scy# define YYUSE(E) ((void) (E))
658258945Sroberto#else
659275970Scy# define YYUSE(E) /* empty */
660258945Sroberto#endif
661258945Sroberto
662301301Sdelphij#if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
663301301Sdelphij/* Suppress an incorrect diagnostic about yylval being uninitialized.  */
664301301Sdelphij# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
665301301Sdelphij    _Pragma ("GCC diagnostic push") \
666301301Sdelphij    _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
667301301Sdelphij    _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
668301301Sdelphij# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
669301301Sdelphij    _Pragma ("GCC diagnostic pop")
670258945Sroberto#else
671301301Sdelphij# define YY_INITIAL_VALUE(Value) Value
672258945Sroberto#endif
673301301Sdelphij#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
674301301Sdelphij# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
675301301Sdelphij# define YY_IGNORE_MAYBE_UNINITIALIZED_END
676258945Sroberto#endif
677301301Sdelphij#ifndef YY_INITIAL_VALUE
678301301Sdelphij# define YY_INITIAL_VALUE(Value) /* Nothing. */
679301301Sdelphij#endif
680258945Sroberto
681301301Sdelphij
682258945Sroberto#if ! defined yyoverflow || YYERROR_VERBOSE
683258945Sroberto
684258945Sroberto/* The parser invokes alloca or malloc; define the necessary symbols.  */
685258945Sroberto
686258945Sroberto# ifdef YYSTACK_USE_ALLOCA
687258945Sroberto#  if YYSTACK_USE_ALLOCA
688258945Sroberto#   ifdef __GNUC__
689258945Sroberto#    define YYSTACK_ALLOC __builtin_alloca
690258945Sroberto#   elif defined __BUILTIN_VA_ARG_INCR
691258945Sroberto#    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
692258945Sroberto#   elif defined _AIX
693258945Sroberto#    define YYSTACK_ALLOC __alloca
694258945Sroberto#   elif defined _MSC_VER
695258945Sroberto#    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
696258945Sroberto#    define alloca _alloca
697258945Sroberto#   else
698258945Sroberto#    define YYSTACK_ALLOC alloca
699301301Sdelphij#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
700258945Sroberto#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
701275970Scy      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
702275970Scy#     ifndef EXIT_SUCCESS
703275970Scy#      define EXIT_SUCCESS 0
704258945Sroberto#     endif
705258945Sroberto#    endif
706258945Sroberto#   endif
707258945Sroberto#  endif
708258945Sroberto# endif
709258945Sroberto
710258945Sroberto# ifdef YYSTACK_ALLOC
711301301Sdelphij   /* Pacify GCC's 'empty if-body' warning.  */
712301301Sdelphij#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
713258945Sroberto#  ifndef YYSTACK_ALLOC_MAXIMUM
714258945Sroberto    /* The OS might guarantee only one guard page at the bottom of the stack,
715258945Sroberto       and a page size can be as small as 4096 bytes.  So we cannot safely
716258945Sroberto       invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
717258945Sroberto       to allow for a few compiler-allocated temporary stack slots.  */
718258945Sroberto#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
719258945Sroberto#  endif
720258945Sroberto# else
721258945Sroberto#  define YYSTACK_ALLOC YYMALLOC
722258945Sroberto#  define YYSTACK_FREE YYFREE
723258945Sroberto#  ifndef YYSTACK_ALLOC_MAXIMUM
724258945Sroberto#   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
725258945Sroberto#  endif
726275970Scy#  if (defined __cplusplus && ! defined EXIT_SUCCESS \
727258945Sroberto       && ! ((defined YYMALLOC || defined malloc) \
728301301Sdelphij             && (defined YYFREE || defined free)))
729258945Sroberto#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
730275970Scy#   ifndef EXIT_SUCCESS
731275970Scy#    define EXIT_SUCCESS 0
732258945Sroberto#   endif
733258945Sroberto#  endif
734258945Sroberto#  ifndef YYMALLOC
735258945Sroberto#   define YYMALLOC malloc
736301301Sdelphij#   if ! defined malloc && ! defined EXIT_SUCCESS
737258945Srobertovoid *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
738258945Sroberto#   endif
739258945Sroberto#  endif
740258945Sroberto#  ifndef YYFREE
741258945Sroberto#   define YYFREE free
742301301Sdelphij#   if ! defined free && ! defined EXIT_SUCCESS
743258945Srobertovoid free (void *); /* INFRINGES ON USER NAME SPACE */
744258945Sroberto#   endif
745258945Sroberto#  endif
746258945Sroberto# endif
747258945Sroberto#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
748258945Sroberto
749258945Sroberto
750258945Sroberto#if (! defined yyoverflow \
751258945Sroberto     && (! defined __cplusplus \
752301301Sdelphij         || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
753258945Sroberto
754258945Sroberto/* A type that is properly aligned for any stack member.  */
755258945Srobertounion yyalloc
756258945Sroberto{
757258945Sroberto  yytype_int16 yyss_alloc;
758258945Sroberto  YYSTYPE yyvs_alloc;
759258945Sroberto};
760258945Sroberto
761258945Sroberto/* The size of the maximum gap between one aligned stack and the next.  */
762258945Sroberto# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
763258945Sroberto
764258945Sroberto/* The size of an array large to enough to hold all stacks, each with
765258945Sroberto   N elements.  */
766258945Sroberto# define YYSTACK_BYTES(N) \
767258945Sroberto     ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
768258945Sroberto      + YYSTACK_GAP_MAXIMUM)
769258945Sroberto
770275970Scy# define YYCOPY_NEEDED 1
771258945Sroberto
772258945Sroberto/* Relocate STACK from its old location to the new one.  The
773258945Sroberto   local variables YYSIZE and YYSTACKSIZE give the old and new number of
774258945Sroberto   elements in the stack, and YYPTR gives the new location of the
775258945Sroberto   stack.  Advance YYPTR to a properly aligned location for the next
776258945Sroberto   stack.  */
777301301Sdelphij# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
778301301Sdelphij    do                                                                  \
779301301Sdelphij      {                                                                 \
780301301Sdelphij        YYSIZE_T yynewbytes;                                            \
781301301Sdelphij        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
782301301Sdelphij        Stack = &yyptr->Stack_alloc;                                    \
783301301Sdelphij        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
784301301Sdelphij        yyptr += yynewbytes / sizeof (*yyptr);                          \
785301301Sdelphij      }                                                                 \
786301301Sdelphij    while (0)
787258945Sroberto
788258945Sroberto#endif
789258945Sroberto
790275970Scy#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
791275970Scy/* Copy COUNT objects from SRC to DST.  The source and destination do
792275970Scy   not overlap.  */
793275970Scy# ifndef YYCOPY
794275970Scy#  if defined __GNUC__ && 1 < __GNUC__
795275970Scy#   define YYCOPY(Dst, Src, Count) \
796275970Scy      __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
797275970Scy#  else
798275970Scy#   define YYCOPY(Dst, Src, Count)              \
799275970Scy      do                                        \
800275970Scy        {                                       \
801275970Scy          YYSIZE_T yyi;                         \
802275970Scy          for (yyi = 0; yyi < (Count); yyi++)   \
803275970Scy            (Dst)[yyi] = (Src)[yyi];            \
804275970Scy        }                                       \
805301301Sdelphij      while (0)
806275970Scy#  endif
807275970Scy# endif
808275970Scy#endif /* !YYCOPY_NEEDED */
809275970Scy
810258945Sroberto/* YYFINAL -- State number of the termination state.  */
811310419Sdelphij#define YYFINAL  215
812258945Sroberto/* YYLAST -- Last index in YYTABLE.  */
813310419Sdelphij#define YYLAST   654
814258945Sroberto
815258945Sroberto/* YYNTOKENS -- Number of terminals.  */
816310419Sdelphij#define YYNTOKENS  204
817258945Sroberto/* YYNNTS -- Number of nonterminals.  */
818290000Sglebius#define YYNNTS  105
819258945Sroberto/* YYNRULES -- Number of rules.  */
820310419Sdelphij#define YYNRULES  318
821301301Sdelphij/* YYNSTATES -- Number of states.  */
822310419Sdelphij#define YYNSTATES  424
823258945Sroberto
824301301Sdelphij/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
825301301Sdelphij   by yylex, with out-of-bounds checking.  */
826258945Sroberto#define YYUNDEFTOK  2
827310419Sdelphij#define YYMAXUTOK   453
828258945Sroberto
829301301Sdelphij#define YYTRANSLATE(YYX)                                                \
830258945Sroberto  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
831258945Sroberto
832301301Sdelphij/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
833301301Sdelphij   as returned by yylex, without out-of-bounds checking.  */
834258945Srobertostatic const yytype_uint8 yytranslate[] =
835258945Sroberto{
836258945Sroberto       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
837258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
838258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
839258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
840310419Sdelphij     200,   201,     2,     2,     2,     2,     2,     2,     2,     2,
841258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
842310419Sdelphij       2,   199,     2,     2,     2,     2,     2,     2,     2,     2,
843258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
844258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
845258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
846258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
847258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
848310419Sdelphij       2,     2,     2,   202,     2,   203,     2,     2,     2,     2,
849258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
850258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
851258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
852258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
853258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
854258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
855258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
856258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
857258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
858258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
859258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
860258945Sroberto       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
861258945Sroberto       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
862258945Sroberto       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
863258945Sroberto      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
864258945Sroberto      25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
865258945Sroberto      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
866258945Sroberto      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
867258945Sroberto      55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
868258945Sroberto      65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
869258945Sroberto      75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
870258945Sroberto      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
871258945Sroberto      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
872258945Sroberto     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
873258945Sroberto     115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
874258945Sroberto     125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
875258945Sroberto     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
876258945Sroberto     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
877258945Sroberto     155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
878275970Scy     165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
879275970Scy     175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
880294904Sdelphij     185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
881310419Sdelphij     195,   196,   197,   198
882258945Sroberto};
883258945Sroberto
884258945Sroberto#if YYDEBUG
885301301Sdelphij  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
886258945Srobertostatic const yytype_uint16 yyrline[] =
887258945Sroberto{
888310419Sdelphij       0,   371,   371,   375,   376,   377,   392,   393,   394,   395,
889310419Sdelphij     396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
890310419Sdelphij     413,   423,   424,   425,   426,   427,   431,   432,   437,   442,
891310419Sdelphij     444,   450,   451,   459,   460,   461,   465,   470,   471,   472,
892310419Sdelphij     473,   474,   475,   476,   477,   481,   483,   488,   489,   490,
893310419Sdelphij     491,   492,   493,   497,   502,   511,   521,   522,   532,   534,
894310419Sdelphij     536,   538,   549,   556,   558,   563,   565,   567,   569,   571,
895310419Sdelphij     580,   586,   587,   595,   597,   609,   610,   611,   612,   613,
896310419Sdelphij     622,   627,   632,   640,   642,   644,   649,   650,   651,   652,
897310419Sdelphij     653,   654,   655,   659,   660,   661,   662,   671,   673,   682,
898310419Sdelphij     692,   697,   705,   706,   707,   708,   709,   710,   711,   712,
899310419Sdelphij     717,   718,   726,   736,   745,   760,   765,   766,   770,   771,
900310419Sdelphij     775,   776,   777,   778,   779,   780,   781,   790,   794,   798,
901310419Sdelphij     806,   814,   822,   837,   852,   865,   866,   874,   875,   876,
902310419Sdelphij     877,   878,   879,   880,   881,   882,   883,   884,   885,   886,
903310419Sdelphij     887,   888,   892,   897,   905,   910,   911,   912,   916,   921,
904310419Sdelphij     929,   934,   935,   936,   937,   938,   939,   940,   941,   949,
905310419Sdelphij     959,   964,   972,   974,   976,   985,   987,   992,   993,   997,
906310419Sdelphij     998,   999,  1000,  1008,  1013,  1018,  1026,  1031,  1032,  1033,
907310419Sdelphij    1042,  1044,  1049,  1054,  1062,  1064,  1081,  1082,  1083,  1084,
908310419Sdelphij    1085,  1086,  1090,  1091,  1092,  1093,  1094,  1095,  1103,  1108,
909310419Sdelphij    1113,  1121,  1126,  1127,  1128,  1129,  1130,  1131,  1132,  1133,
910310419Sdelphij    1134,  1135,  1144,  1145,  1146,  1153,  1160,  1167,  1183,  1202,
911310419Sdelphij    1204,  1206,  1208,  1210,  1212,  1219,  1224,  1225,  1226,  1230,
912310419Sdelphij    1234,  1243,  1244,  1248,  1249,  1250,  1254,  1265,  1279,  1291,
913310419Sdelphij    1296,  1298,  1303,  1304,  1312,  1314,  1322,  1327,  1335,  1360,
914310419Sdelphij    1367,  1377,  1378,  1382,  1383,  1384,  1385,  1389,  1390,  1391,
915310419Sdelphij    1395,  1400,  1405,  1413,  1414,  1415,  1416,  1417,  1418,  1419,
916310419Sdelphij    1429,  1434,  1442,  1447,  1455,  1457,  1461,  1466,  1471,  1479,
917310419Sdelphij    1484,  1492,  1501,  1502,  1506,  1507,  1516,  1534,  1538,  1543,
918310419Sdelphij    1551,  1556,  1557,  1561,  1566,  1574,  1579,  1584,  1589,  1594,
919310419Sdelphij    1602,  1607,  1612,  1620,  1625,  1626,  1627,  1628,  1629
920258945Sroberto};
921258945Sroberto#endif
922258945Sroberto
923275970Scy#if YYDEBUG || YYERROR_VERBOSE || 1
924258945Sroberto/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
925258945Sroberto   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
926258945Srobertostatic const char *const yytname[] =
927258945Sroberto{
928275970Scy  "$end", "error", "$undefined", "T_Abbrev", "T_Age", "T_All", "T_Allan",
929275970Scy  "T_Allpeers", "T_Auth", "T_Autokey", "T_Automax", "T_Average",
930310419Sdelphij  "T_Bclient", "T_Bcpollbstep", "T_Beacon", "T_Broadcast",
931310419Sdelphij  "T_Broadcastclient", "T_Broadcastdelay", "T_Burst", "T_Calibrate",
932310419Sdelphij  "T_Ceiling", "T_Clockstats", "T_Cohort", "T_ControlKey", "T_Crypto",
933310419Sdelphij  "T_Cryptostats", "T_Ctl", "T_Day", "T_Default", "T_Digest", "T_Disable",
934310419Sdelphij  "T_Discard", "T_Dispersion", "T_Double", "T_Driftfile", "T_Drop",
935310419Sdelphij  "T_Dscp", "T_Ellipsis", "T_Enable", "T_End", "T_False", "T_File",
936310419Sdelphij  "T_Filegen", "T_Filenum", "T_Flag1", "T_Flag2", "T_Flag3", "T_Flag4",
937310419Sdelphij  "T_Flake", "T_Floor", "T_Freq", "T_Fudge", "T_Host", "T_Huffpuff",
938310419Sdelphij  "T_Iburst", "T_Ident", "T_Ignore", "T_Incalloc", "T_Incmem",
939310419Sdelphij  "T_Initalloc", "T_Initmem", "T_Includefile", "T_Integer", "T_Interface",
940310419Sdelphij  "T_Intrange", "T_Io", "T_Ipv4", "T_Ipv4_flag", "T_Ipv6", "T_Ipv6_flag",
941310419Sdelphij  "T_Kernel", "T_Key", "T_Keys", "T_Keysdir", "T_Kod", "T_Mssntp",
942310419Sdelphij  "T_Leapfile", "T_Leapsmearinterval", "T_Limited", "T_Link", "T_Listen",
943310419Sdelphij  "T_Logconfig", "T_Logfile", "T_Loopstats", "T_Lowpriotrap",
944310419Sdelphij  "T_Manycastclient", "T_Manycastserver", "T_Mask", "T_Maxage",
945310419Sdelphij  "T_Maxclock", "T_Maxdepth", "T_Maxdist", "T_Maxmem", "T_Maxpoll",
946310419Sdelphij  "T_Mdnstries", "T_Mem", "T_Memlock", "T_Minclock", "T_Mindepth",
947310419Sdelphij  "T_Mindist", "T_Minimum", "T_Minpoll", "T_Minsane", "T_Mode", "T_Mode7",
948310419Sdelphij  "T_Monitor", "T_Month", "T_Mru", "T_Multicastclient", "T_Nic",
949310419Sdelphij  "T_Nolink", "T_Nomodify", "T_Nomrulist", "T_None", "T_Nonvolatile",
950310419Sdelphij  "T_Nopeer", "T_Noquery", "T_Noselect", "T_Noserve", "T_Notrap",
951310419Sdelphij  "T_Notrust", "T_Ntp", "T_Ntpport", "T_NtpSignDsocket", "T_Orphan",
952310419Sdelphij  "T_Orphanwait", "T_PCEdigest", "T_Panic", "T_Peer", "T_Peerstats",
953310419Sdelphij  "T_Phone", "T_Pid", "T_Pidfile", "T_Pool", "T_Port", "T_Preempt",
954310419Sdelphij  "T_Prefer", "T_Protostats", "T_Pw", "T_Randfile", "T_Rawstats",
955310419Sdelphij  "T_Refid", "T_Requestkey", "T_Reset", "T_Restrict", "T_Revoke",
956310419Sdelphij  "T_Rlimit", "T_Saveconfigdir", "T_Server", "T_Setvar", "T_Source",
957310419Sdelphij  "T_Stacksize", "T_Statistics", "T_Stats", "T_Statsdir", "T_Step",
958310419Sdelphij  "T_Stepback", "T_Stepfwd", "T_Stepout", "T_Stratum", "T_String", "T_Sys",
959310419Sdelphij  "T_Sysstats", "T_Tick", "T_Time1", "T_Time2", "T_Timer", "T_Timingstats",
960310419Sdelphij  "T_Tinker", "T_Tos", "T_Trap", "T_True", "T_Trustedkey", "T_Ttl",
961310419Sdelphij  "T_Type", "T_U_int", "T_UEcrypto", "T_UEcryptonak", "T_UEdigest",
962310419Sdelphij  "T_Unconfig", "T_Unpeer", "T_Version", "T_WanderThreshold", "T_Week",
963310419Sdelphij  "T_Wildcard", "T_Xleave", "T_Year", "T_Flag", "T_EOC", "T_Simulate",
964310419Sdelphij  "T_Beep_Delay", "T_Sim_Duration", "T_Server_Offset", "T_Duration",
965310419Sdelphij  "T_Freq_Offset", "T_Wander", "T_Jitter", "T_Prop_Delay", "T_Proc_Delay",
966310419Sdelphij  "'='", "'('", "')'", "'{'", "'}'", "$accept", "configuration",
967310419Sdelphij  "command_list", "command", "server_command", "client_type", "address",
968310419Sdelphij  "ip_address", "address_fam", "option_list", "option", "option_flag",
969310419Sdelphij  "option_flag_keyword", "option_int", "option_int_keyword", "option_str",
970310419Sdelphij  "option_str_keyword", "unpeer_command", "unpeer_keyword",
971310419Sdelphij  "other_mode_command", "authentication_command", "crypto_command_list",
972310419Sdelphij  "crypto_command", "crypto_str_keyword", "orphan_mode_command",
973310419Sdelphij  "tos_option_list", "tos_option", "tos_option_int_keyword",
974310419Sdelphij  "tos_option_dbl_keyword", "monitoring_command", "stats_list", "stat",
975310419Sdelphij  "filegen_option_list", "filegen_option", "link_nolink", "enable_disable",
976310419Sdelphij  "filegen_type", "access_control_command", "ac_flag_list",
977310419Sdelphij  "access_control_flag", "discard_option_list", "discard_option",
978310419Sdelphij  "discard_option_keyword", "mru_option_list", "mru_option",
979310419Sdelphij  "mru_option_keyword", "fudge_command", "fudge_factor_list",
980310419Sdelphij  "fudge_factor", "fudge_factor_dbl_keyword", "fudge_factor_bool_keyword",
981310419Sdelphij  "rlimit_command", "rlimit_option_list", "rlimit_option",
982310419Sdelphij  "rlimit_option_keyword", "system_option_command", "system_option_list",
983310419Sdelphij  "system_option", "system_option_flag_keyword",
984275970Scy  "system_option_local_flag_keyword", "tinker_command",
985275970Scy  "tinker_option_list", "tinker_option", "tinker_option_keyword",
986290000Sglebius  "miscellaneous_command", "misc_cmd_dbl_keyword", "misc_cmd_int_keyword",
987290000Sglebius  "misc_cmd_str_keyword", "misc_cmd_str_lcl_keyword", "drift_parm",
988290000Sglebius  "variable_assign", "t_default_or_zero", "trap_option_list",
989290000Sglebius  "trap_option", "log_config_list", "log_config_command",
990290000Sglebius  "interface_command", "interface_nic", "nic_rule_class",
991290000Sglebius  "nic_rule_action", "reset_command", "counter_set_list",
992290000Sglebius  "counter_set_keyword", "integer_list", "integer_list_range",
993290000Sglebius  "integer_list_range_elt", "integer_range", "string_list", "address_list",
994290000Sglebius  "boolean", "number", "simulate_command", "sim_conf_start",
995290000Sglebius  "sim_init_statement_list", "sim_init_statement", "sim_init_keyword",
996290000Sglebius  "sim_server_list", "sim_server", "sim_server_offset", "sim_server_name",
997290000Sglebius  "sim_act_list", "sim_act", "sim_act_stmt_list", "sim_act_stmt",
998301301Sdelphij  "sim_act_keyword", YY_NULLPTR
999258945Sroberto};
1000258945Sroberto#endif
1001258945Sroberto
1002258945Sroberto# ifdef YYPRINT
1003301301Sdelphij/* YYTOKNUM[NUM] -- (External) token number corresponding to the
1004301301Sdelphij   (internal) symbol number NUM (which must be that of a token).  */
1005258945Srobertostatic const yytype_uint16 yytoknum[] =
1006258945Sroberto{
1007258945Sroberto       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1008258945Sroberto     265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
1009258945Sroberto     275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
1010258945Sroberto     285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
1011258945Sroberto     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
1012258945Sroberto     305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
1013258945Sroberto     315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
1014258945Sroberto     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
1015258945Sroberto     335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
1016258945Sroberto     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
1017258945Sroberto     355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
1018258945Sroberto     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
1019258945Sroberto     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1020258945Sroberto     385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
1021258945Sroberto     395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
1022258945Sroberto     405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
1023275970Scy     415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
1024275970Scy     425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
1025278284Scy     435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
1026310419Sdelphij     445,   446,   447,   448,   449,   450,   451,   452,   453,    61,
1027310419Sdelphij      40,    41,   123,   125
1028258945Sroberto};
1029258945Sroberto# endif
1030258945Sroberto
1031301301Sdelphij#define YYPACT_NINF -189
1032258945Sroberto
1033301301Sdelphij#define yypact_value_is_default(Yystate) \
1034301301Sdelphij  (!!((Yystate) == (-189)))
1035301301Sdelphij
1036301301Sdelphij#define YYTABLE_NINF -7
1037301301Sdelphij
1038301301Sdelphij#define yytable_value_is_error(Yytable_value) \
1039301301Sdelphij  0
1040301301Sdelphij
1041301301Sdelphij  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1042301301Sdelphij     STATE-NUM.  */
1043301301Sdelphijstatic const yytype_int16 yypact[] =
1044258945Sroberto{
1045310419Sdelphij      18,  -177,   -45,  -189,  -189,  -189,   -40,  -189,    32,     5,
1046310419Sdelphij    -129,  -189,    32,  -189,   204,   -44,  -189,  -117,  -189,  -110,
1047310419Sdelphij    -101,  -189,  -189,   -97,  -189,  -189,   -44,    -4,   495,   -44,
1048310419Sdelphij    -189,  -189,   -96,  -189,   -94,  -189,  -189,     8,    54,   258,
1049310419Sdelphij      10,   -28,  -189,  -189,   -89,   204,   -86,  -189,   270,   529,
1050310419Sdelphij     -85,   -56,    14,  -189,  -189,  -189,    83,   207,   -95,  -189,
1051310419Sdelphij     -44,  -189,   -44,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1052310419Sdelphij    -189,  -189,  -189,    -7,    24,   -73,   -68,  -189,    -3,  -189,
1053310419Sdelphij    -189,  -106,  -189,  -189,  -189,   313,  -189,  -189,  -189,  -189,
1054310419Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,    32,  -189,
1055310419Sdelphij    -189,  -189,  -189,  -189,  -189,     5,  -189,    35,    65,  -189,
1056310419Sdelphij      32,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1057310419Sdelphij    -189,  -189,  -189,   110,  -189,   -59,   368,  -189,  -189,  -189,
1058310419Sdelphij     -97,  -189,  -189,   -44,  -189,  -189,  -189,  -189,  -189,  -189,
1059310419Sdelphij    -189,  -189,  -189,   495,  -189,    44,   -44,  -189,  -189,   -51,
1060310419Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,    54,  -189,
1061310419Sdelphij    -189,    86,    89,  -189,  -189,    33,  -189,  -189,  -189,  -189,
1062310419Sdelphij     -28,  -189,    49,   -75,  -189,   204,  -189,  -189,  -189,  -189,
1063310419Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,   270,  -189,
1064310419Sdelphij      -7,  -189,  -189,  -189,   -33,  -189,  -189,  -189,  -189,  -189,
1065310419Sdelphij    -189,  -189,  -189,   529,  -189,    66,    -7,  -189,  -189,    67,
1066310419Sdelphij     -56,  -189,  -189,  -189,    68,  -189,   -53,  -189,  -189,  -189,
1067310419Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,    16,
1068310419Sdelphij    -153,  -189,  -189,  -189,  -189,  -189,    77,  -189,   -18,  -189,
1069310419Sdelphij    -189,  -189,  -189,   226,   -13,  -189,  -189,  -189,  -189,    -8,
1070310419Sdelphij      97,  -189,  -189,   110,  -189,    -7,   -33,  -189,  -189,  -189,
1071310419Sdelphij    -189,  -189,  -189,  -189,  -189,   449,  -189,  -189,   449,   449,
1072310419Sdelphij     -85,  -189,  -189,    11,  -189,  -189,  -189,  -189,  -189,  -189,
1073310419Sdelphij    -189,  -189,  -189,  -189,   -49,   108,  -189,  -189,  -189,   125,
1074310419Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -102,   -20,
1075310419Sdelphij     -30,  -189,  -189,  -189,  -189,    13,  -189,  -189,     9,  -189,
1076301301Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1077301301Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1078310419Sdelphij    -189,  -189,  -189,  -189,   449,   449,  -189,   146,   -85,   113,
1079310419Sdelphij    -189,   116,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1080301301Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1081310419Sdelphij    -189,   -54,  -189,    23,   -10,     6,  -138,  -189,    -9,  -189,
1082310419Sdelphij      -7,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1083310419Sdelphij     449,  -189,  -189,  -189,  -189,   -17,  -189,  -189,  -189,   -44,
1084310419Sdelphij    -189,  -189,  -189,    20,  -189,  -189,  -189,     0,    21,    -7,
1085310419Sdelphij      22,  -173,  -189,    25,    -7,  -189,  -189,  -189,    17,     7,
1086310419Sdelphij    -189,  -189,  -189,  -189,  -189,   217,    39,    36,  -189,    46,
1087310419Sdelphij    -189,    -7,  -189,  -189
1088258945Sroberto};
1089258945Sroberto
1090301301Sdelphij  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
1091301301Sdelphij     Performed when YYTABLE does not specify something else to do.  Zero
1092301301Sdelphij     means the default is an error.  */
1093258945Srobertostatic const yytype_uint16 yydefact[] =
1094258945Sroberto{
1095310419Sdelphij       0,     0,     0,    24,    58,   236,     0,    71,     0,     0,
1096310419Sdelphij     248,   239,     0,   229,     0,     0,   241,     0,   261,     0,
1097310419Sdelphij       0,   242,   240,     0,   243,    25,     0,     0,     0,     0,
1098310419Sdelphij     262,   237,     0,    23,     0,   244,    22,     0,     0,     0,
1099310419Sdelphij       0,     0,   245,    21,     0,     0,     0,   238,     0,     0,
1100310419Sdelphij       0,     0,     0,    56,    57,   297,     0,     2,     0,     7,
1101290000Sglebius       0,     8,     0,     9,    10,    13,    11,    12,    14,    15,
1102310419Sdelphij      16,    17,    18,     0,     0,     0,     0,   222,     0,   223,
1103310419Sdelphij      19,     0,     5,    62,    63,    64,   196,   197,   198,   199,
1104310419Sdelphij     202,   200,   201,   203,   204,   205,   206,   207,   191,   193,
1105310419Sdelphij     194,   195,   155,   156,   157,   127,   153,     0,   246,   230,
1106310419Sdelphij     190,   102,   103,   104,   105,   109,   106,   107,   108,   110,
1107310419Sdelphij      29,    30,    28,     0,    26,     0,     6,    65,    66,   258,
1108310419Sdelphij     231,   257,   290,    59,    61,   161,   162,   163,   164,   165,
1109310419Sdelphij     166,   167,   168,   128,   159,     0,    60,    70,   288,   232,
1110310419Sdelphij      67,   273,   274,   275,   276,   277,   278,   279,   270,   272,
1111310419Sdelphij     135,    29,    30,   135,   135,    26,    68,   189,   187,   188,
1112310419Sdelphij     183,   185,     0,     0,   233,    97,   101,    98,   212,   213,
1113310419Sdelphij     214,   215,   216,   217,   218,   219,   220,   221,   208,   210,
1114310419Sdelphij       0,    86,    92,    87,     0,    88,    96,    94,    95,    93,
1115310419Sdelphij      91,    89,    90,    80,    82,     0,     0,   252,   284,     0,
1116310419Sdelphij      69,   283,   285,   281,   235,     1,     0,     4,    31,    55,
1117310419Sdelphij     295,   294,   224,   225,   226,   227,   269,   268,   267,     0,
1118310419Sdelphij       0,    79,    75,    76,    77,    78,     0,    72,     0,   192,
1119310419Sdelphij     152,   154,   247,    99,     0,   179,   180,   181,   182,     0,
1120310419Sdelphij       0,   177,   178,   169,   171,     0,     0,    27,   228,   256,
1121310419Sdelphij     289,   158,   160,   287,   271,   131,   135,   135,   134,   129,
1122310419Sdelphij       0,   184,   186,     0,   100,   209,   211,   293,   291,   292,
1123310419Sdelphij      85,    81,    83,    84,   234,     0,   282,   280,     3,    20,
1124310419Sdelphij     263,   264,   265,   260,   266,   259,   301,   302,     0,     0,
1125310419Sdelphij       0,    74,    73,   119,   118,     0,   116,   117,     0,   111,
1126310419Sdelphij     114,   115,   175,   176,   174,   170,   172,   173,   137,   138,
1127301301Sdelphij     139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
1128310419Sdelphij     149,   150,   151,   136,   132,   133,   135,   251,     0,     0,
1129310419Sdelphij     253,     0,    37,    38,    39,    54,    47,    49,    48,    51,
1130310419Sdelphij      40,    41,    42,    43,    50,    52,    44,    32,    33,    36,
1131310419Sdelphij      34,     0,    35,     0,     0,     0,     0,   304,     0,   299,
1132310419Sdelphij       0,   112,   126,   122,   124,   120,   121,   123,   125,   113,
1133310419Sdelphij     130,   250,   249,   255,   254,     0,    45,    46,    53,     0,
1134310419Sdelphij     298,   296,   303,     0,   300,   286,   307,     0,     0,     0,
1135310419Sdelphij       0,     0,   309,     0,     0,   305,   308,   306,     0,     0,
1136310419Sdelphij     314,   315,   316,   317,   318,     0,     0,     0,   310,     0,
1137310419Sdelphij     312,     0,   311,   313
1138258945Sroberto};
1139258945Sroberto
1140301301Sdelphij  /* YYPGOTO[NTERM-NUM].  */
1141301301Sdelphijstatic const yytype_int16 yypgoto[] =
1142258945Sroberto{
1143310419Sdelphij    -189,  -189,  -189,   -48,  -189,  -189,   -15,   -38,  -189,  -189,
1144301301Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1145310419Sdelphij    -189,  -189,  -189,  -189,  -189,  -189,    37,  -189,  -189,  -189,
1146310419Sdelphij    -189,   -42,  -189,  -189,  -189,  -189,  -189,  -189,  -159,  -189,
1147310419Sdelphij    -189,   131,  -189,  -189,    96,  -189,  -189,  -189,    -6,  -189,
1148310419Sdelphij    -189,  -189,  -189,    74,  -189,  -189,   236,   -71,  -189,  -189,
1149310419Sdelphij    -189,  -189,    62,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1150310419Sdelphij    -189,  -189,  -189,  -189,  -189,   122,  -189,  -189,  -189,  -189,
1151310419Sdelphij    -189,  -189,    95,  -189,  -189,    45,  -189,  -189,   225,     1,
1152310419Sdelphij    -188,  -189,  -189,  -189,   -39,  -189,  -189,  -103,  -189,  -189,
1153310419Sdelphij    -189,  -136,  -189,  -149,  -189
1154258945Sroberto};
1155258945Sroberto
1156301301Sdelphij  /* YYDEFGOTO[NTERM-NUM].  */
1157301301Sdelphijstatic const yytype_int16 yydefgoto[] =
1158258945Sroberto{
1159310419Sdelphij      -1,    56,    57,    58,    59,    60,   132,   124,   125,   289,
1160310419Sdelphij     357,   358,   359,   360,   361,   362,   363,    61,    62,    63,
1161310419Sdelphij      64,    85,   237,   238,    65,   203,   204,   205,   206,    66,
1162310419Sdelphij     175,   119,   243,   309,   310,   311,   379,    67,   265,   333,
1163310419Sdelphij     105,   106,   107,   143,   144,   145,    68,   253,   254,   255,
1164310419Sdelphij     256,    69,   170,   171,   172,    70,    98,    99,   100,   101,
1165301301Sdelphij      71,   188,   189,   190,    72,    73,    74,    75,    76,   109,
1166310419Sdelphij     174,   382,   284,   340,   130,   131,    77,    78,   295,   229,
1167310419Sdelphij      79,   158,   159,   214,   210,   211,   212,   149,   133,   280,
1168310419Sdelphij     222,    80,    81,   298,   299,   300,   366,   367,   398,   368,
1169310419Sdelphij     401,   402,   415,   416,   417
1170258945Sroberto};
1171258945Sroberto
1172301301Sdelphij  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
1173301301Sdelphij     positive, shift that token.  If negative, reduce the rule whose
1174301301Sdelphij     number is the opposite.  If YYTABLE_NINF, syntax error.  */
1175258945Srobertostatic const yytype_int16 yytable[] =
1176258945Sroberto{
1177310419Sdelphij     123,   165,   276,   176,   268,   269,   208,   277,   386,   216,
1178310419Sdelphij     364,    82,   207,   372,   338,   167,   102,    83,   283,     1,
1179310419Sdelphij     400,   290,    84,   120,   164,   121,   220,   239,     2,   278,
1180310419Sdelphij     405,   108,   226,     3,     4,     5,   373,   296,   297,   239,
1181310419Sdelphij      86,     6,     7,   126,    87,   218,   364,   219,     8,     9,
1182310419Sdelphij     127,    88,    10,   227,    11,   221,    12,    13,   134,   128,
1183310419Sdelphij      14,   151,   152,   129,   147,   391,   148,   316,   168,    15,
1184310419Sdelphij     150,   173,   166,    16,   177,   122,   213,   228,   258,    17,
1185310419Sdelphij     153,    18,   291,   215,   292,   339,   223,   224,   296,   297,
1186310419Sdelphij      19,    20,   225,   217,    21,    22,   230,   241,   242,    23,
1187310419Sdelphij      24,   257,    89,    25,    26,   103,   262,   334,   335,   263,
1188310419Sdelphij     104,   272,    27,   244,   266,   374,   122,   267,   260,   154,
1189310419Sdelphij     270,   387,   375,   169,   273,    28,    29,    30,   282,   285,
1190310419Sdelphij     287,   260,    31,   274,   342,   288,    90,    91,   279,   301,
1191310419Sdelphij     376,    32,   302,   343,   209,   341,    33,   312,    34,   155,
1192310419Sdelphij      35,    36,   313,    92,   245,   246,   247,   248,    93,   314,
1193310419Sdelphij      37,    38,    39,    40,    41,    42,    43,    44,   369,   370,
1194310419Sdelphij      45,   337,    46,   371,   381,   384,   293,   380,   385,   344,
1195310419Sdelphij     345,    47,   394,   388,   395,    94,    48,    49,    50,   389,
1196310419Sdelphij      51,    52,   377,   393,   390,   378,   346,    53,    54,   399,
1197310419Sdelphij     294,   410,   411,   412,   413,   414,    -6,    55,    95,    96,
1198310419Sdelphij      97,   403,   397,   407,   400,   156,   408,     2,   347,   409,
1199310419Sdelphij     157,   404,     3,     4,     5,   111,   348,   420,   349,   112,
1200310419Sdelphij       6,     7,   336,   423,   422,   421,   240,     8,     9,   261,
1201310419Sdelphij     281,    10,   350,    11,   271,    12,    13,   315,   110,    14,
1202310419Sdelphij     275,   249,   259,   264,   146,   286,   303,   317,    15,   365,
1203310419Sdelphij     351,   352,    16,   392,   304,   406,   419,   305,    17,   250,
1204310419Sdelphij      18,     0,     0,     0,   251,   252,   178,     0,     0,    19,
1205310419Sdelphij      20,     0,     0,    21,    22,     0,   160,   113,    23,    24,
1206310419Sdelphij       0,     0,    25,    26,     0,     0,   353,     0,   354,     0,
1207310419Sdelphij     383,    27,   179,     0,     0,   306,   355,     0,     0,     0,
1208310419Sdelphij     356,     0,     0,     0,    28,    29,    30,     0,     0,     0,
1209310419Sdelphij     180,    31,     0,   181,     0,   161,     0,   162,     0,     0,
1210310419Sdelphij      32,     0,     0,   114,     0,    33,   307,    34,     0,    35,
1211310419Sdelphij      36,   115,   231,     0,   116,     0,     0,     0,     0,    37,
1212310419Sdelphij      38,    39,    40,    41,    42,    43,    44,     0,     0,    45,
1213310419Sdelphij       0,    46,     0,     0,     0,   232,   117,     0,   233,     0,
1214310419Sdelphij      47,   118,     0,     0,   396,    48,    49,    50,     2,    51,
1215310419Sdelphij      52,     0,     0,     3,     4,     5,    53,    54,     0,     0,
1216310419Sdelphij       0,     6,     7,     0,     0,    -6,    55,   182,     8,     9,
1217310419Sdelphij     308,     0,    10,     0,    11,     0,    12,    13,   163,     0,
1218310419Sdelphij      14,   410,   411,   412,   413,   414,     0,     0,   122,    15,
1219310419Sdelphij     418,     0,     0,    16,     0,   183,   184,   185,   186,    17,
1220310419Sdelphij       0,    18,     0,   187,     0,     0,     0,     0,     0,     0,
1221310419Sdelphij      19,    20,     0,     0,    21,    22,     0,     0,     0,    23,
1222310419Sdelphij      24,   234,   235,    25,    26,     0,     0,     0,   236,     0,
1223310419Sdelphij       0,     0,    27,     0,     0,     0,     0,     0,     0,     0,
1224310419Sdelphij       0,     0,     0,     0,     0,    28,    29,    30,     0,     0,
1225310419Sdelphij       0,     0,    31,     0,     0,     0,     0,     0,     0,     0,
1226310419Sdelphij       0,    32,     0,     0,     0,     0,    33,   318,    34,     0,
1227310419Sdelphij      35,    36,     0,     0,     0,   319,     0,     0,     0,     0,
1228310419Sdelphij      37,    38,    39,    40,    41,    42,    43,    44,     0,     0,
1229310419Sdelphij      45,     0,    46,   320,   321,     0,     0,   322,     0,     0,
1230310419Sdelphij       0,    47,     0,   323,     0,     0,    48,    49,    50,     0,
1231310419Sdelphij      51,    52,   191,   192,     0,     0,     0,    53,    54,   193,
1232310419Sdelphij       0,   194,   135,   136,   137,   138,     0,    55,     0,     0,
1233310419Sdelphij     324,   325,     0,     0,   326,   327,     0,   328,   329,   330,
1234310419Sdelphij       0,   331,     0,     0,     0,     0,     0,     0,   195,     0,
1235310419Sdelphij       0,     0,     0,   139,     0,   140,     0,   141,     0,     0,
1236310419Sdelphij       0,     0,     0,   142,     0,     0,     0,     0,     0,     0,
1237258945Sroberto       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1238310419Sdelphij       0,     0,     0,     0,     0,     0,     0,     0,   196,     0,
1239310419Sdelphij     197,     0,     0,     0,     0,     0,   198,     0,   199,     0,
1240310419Sdelphij     332,   200,     0,     0,     0,     0,     0,     0,     0,     0,
1241294904Sdelphij       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1242310419Sdelphij       0,     0,     0,   201,   202
1243258945Sroberto};
1244258945Sroberto
1245258945Srobertostatic const yytype_int16 yycheck[] =
1246258945Sroberto{
1247310419Sdelphij      15,    39,   190,    45,   163,   164,    62,    40,    62,    57,
1248310419Sdelphij     148,   188,    50,     4,    63,    43,    11,    62,   206,     1,
1249310419Sdelphij     193,     5,    62,    67,    39,    69,    33,    98,    10,    62,
1250310419Sdelphij     203,   160,    35,    15,    16,    17,    27,   190,   191,   110,
1251310419Sdelphij       8,    23,    24,   160,    12,    60,   148,    62,    30,    31,
1252310419Sdelphij     160,    19,    34,    56,    36,    62,    38,    39,    62,   160,
1253310419Sdelphij      42,     7,     8,   160,   160,   203,   160,   255,    96,    51,
1254310419Sdelphij      62,   160,    62,    55,   160,   160,    62,    80,   126,    61,
1255310419Sdelphij      26,    63,    66,     0,    68,   134,    62,   160,   190,   191,
1256310419Sdelphij      72,    73,   160,   188,    76,    77,   202,    62,    33,    81,
1257310419Sdelphij      82,   160,    70,    85,    86,   100,    62,   266,   267,   160,
1258310419Sdelphij     105,    62,    94,     3,    28,   106,   160,    28,   133,    65,
1259310419Sdelphij      87,   175,   113,   151,   199,   107,   108,   109,    62,    62,
1260310419Sdelphij      62,   146,   114,   175,     9,   188,   104,   105,   171,    62,
1261310419Sdelphij     131,   123,   160,    18,   200,    37,   128,   160,   130,    95,
1262310419Sdelphij     132,   133,   160,   121,    44,    45,    46,    47,   126,    62,
1263310419Sdelphij     142,   143,   144,   145,   146,   147,   148,   149,   188,   199,
1264310419Sdelphij     152,   160,   154,   160,    28,    62,   160,   336,    62,    54,
1265310419Sdelphij      55,   163,   370,   160,   201,   153,   168,   169,   170,   199,
1266310419Sdelphij     172,   173,   183,   202,   188,   186,    71,   179,   180,   199,
1267310419Sdelphij     184,   194,   195,   196,   197,   198,   188,   189,   176,   177,
1268310419Sdelphij     178,   399,   192,   188,   193,   161,   404,    10,    93,   202,
1269310419Sdelphij     166,   199,    15,    16,    17,    21,   101,   188,   103,    25,
1270310419Sdelphij      23,    24,   270,   421,   188,   199,   105,    30,    31,   143,
1271310419Sdelphij     203,    34,   117,    36,   170,    38,    39,   253,    12,    42,
1272310419Sdelphij     188,   141,   130,   158,    29,   210,    30,   256,    51,   298,
1273310419Sdelphij     135,   136,    55,   366,    38,   401,   415,    41,    61,   159,
1274310419Sdelphij      63,    -1,    -1,    -1,   164,   165,     6,    -1,    -1,    72,
1275310419Sdelphij      73,    -1,    -1,    76,    77,    -1,    28,    83,    81,    82,
1276310419Sdelphij      -1,    -1,    85,    86,    -1,    -1,   171,    -1,   173,    -1,
1277310419Sdelphij     338,    94,    32,    -1,    -1,    79,   181,    -1,    -1,    -1,
1278310419Sdelphij     185,    -1,    -1,    -1,   107,   108,   109,    -1,    -1,    -1,
1279310419Sdelphij      50,   114,    -1,    53,    -1,    67,    -1,    69,    -1,    -1,
1280310419Sdelphij     123,    -1,    -1,   129,    -1,   128,   110,   130,    -1,   132,
1281310419Sdelphij     133,   137,    29,    -1,   140,    -1,    -1,    -1,    -1,   142,
1282310419Sdelphij     143,   144,   145,   146,   147,   148,   149,    -1,    -1,   152,
1283310419Sdelphij      -1,   154,    -1,    -1,    -1,    52,   162,    -1,    55,    -1,
1284310419Sdelphij     163,   167,    -1,    -1,   389,   168,   169,   170,    10,   172,
1285310419Sdelphij     173,    -1,    -1,    15,    16,    17,   179,   180,    -1,    -1,
1286310419Sdelphij      -1,    23,    24,    -1,    -1,   188,   189,   127,    30,    31,
1287310419Sdelphij     174,    -1,    34,    -1,    36,    -1,    38,    39,   150,    -1,
1288310419Sdelphij      42,   194,   195,   196,   197,   198,    -1,    -1,   160,    51,
1289310419Sdelphij     203,    -1,    -1,    55,    -1,   155,   156,   157,   158,    61,
1290310419Sdelphij      -1,    63,    -1,   163,    -1,    -1,    -1,    -1,    -1,    -1,
1291310419Sdelphij      72,    73,    -1,    -1,    76,    77,    -1,    -1,    -1,    81,
1292310419Sdelphij      82,   138,   139,    85,    86,    -1,    -1,    -1,   145,    -1,
1293310419Sdelphij      -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1294310419Sdelphij      -1,    -1,    -1,    -1,    -1,   107,   108,   109,    -1,    -1,
1295310419Sdelphij      -1,    -1,   114,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1296310419Sdelphij      -1,   123,    -1,    -1,    -1,    -1,   128,    48,   130,    -1,
1297310419Sdelphij     132,   133,    -1,    -1,    -1,    56,    -1,    -1,    -1,    -1,
1298310419Sdelphij     142,   143,   144,   145,   146,   147,   148,   149,    -1,    -1,
1299310419Sdelphij     152,    -1,   154,    74,    75,    -1,    -1,    78,    -1,    -1,
1300310419Sdelphij      -1,   163,    -1,    84,    -1,    -1,   168,   169,   170,    -1,
1301310419Sdelphij     172,   173,    13,    14,    -1,    -1,    -1,   179,   180,    20,
1302310419Sdelphij      -1,    22,    57,    58,    59,    60,    -1,   189,    -1,    -1,
1303310419Sdelphij     111,   112,    -1,    -1,   115,   116,    -1,   118,   119,   120,
1304310419Sdelphij      -1,   122,    -1,    -1,    -1,    -1,    -1,    -1,    49,    -1,
1305310419Sdelphij      -1,    -1,    -1,    88,    -1,    90,    -1,    92,    -1,    -1,
1306310419Sdelphij      -1,    -1,    -1,    98,    -1,    -1,    -1,    -1,    -1,    -1,
1307301301Sdelphij      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1308310419Sdelphij      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    89,    -1,
1309310419Sdelphij      91,    -1,    -1,    -1,    -1,    -1,    97,    -1,    99,    -1,
1310310419Sdelphij     181,   102,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1311301301Sdelphij      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1312310419Sdelphij      -1,    -1,    -1,   124,   125
1313258945Sroberto};
1314258945Sroberto
1315301301Sdelphij  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1316301301Sdelphij     symbol of state STATE-NUM.  */
1317258945Srobertostatic const yytype_uint16 yystos[] =
1318258945Sroberto{
1319310419Sdelphij       0,     1,    10,    15,    16,    17,    23,    24,    30,    31,
1320310419Sdelphij      34,    36,    38,    39,    42,    51,    55,    61,    63,    72,
1321310419Sdelphij      73,    76,    77,    81,    82,    85,    86,    94,   107,   108,
1322310419Sdelphij     109,   114,   123,   128,   130,   132,   133,   142,   143,   144,
1323310419Sdelphij     145,   146,   147,   148,   149,   152,   154,   163,   168,   169,
1324310419Sdelphij     170,   172,   173,   179,   180,   189,   205,   206,   207,   208,
1325310419Sdelphij     209,   221,   222,   223,   224,   228,   233,   241,   250,   255,
1326310419Sdelphij     259,   264,   268,   269,   270,   271,   272,   280,   281,   284,
1327310419Sdelphij     295,   296,   188,    62,    62,   225,     8,    12,    19,    70,
1328310419Sdelphij     104,   105,   121,   126,   153,   176,   177,   178,   260,   261,
1329310419Sdelphij     262,   263,    11,   100,   105,   244,   245,   246,   160,   273,
1330310419Sdelphij     260,    21,    25,    83,   129,   137,   140,   162,   167,   235,
1331310419Sdelphij      67,    69,   160,   210,   211,   212,   160,   160,   160,   160,
1332310419Sdelphij     278,   279,   210,   292,    62,    57,    58,    59,    60,    88,
1333310419Sdelphij      90,    92,    98,   247,   248,   249,   292,   160,   160,   291,
1334310419Sdelphij      62,     7,     8,    26,    65,    95,   161,   166,   285,   286,
1335310419Sdelphij      28,    67,    69,   150,   210,   211,    62,    43,    96,   151,
1336310419Sdelphij     256,   257,   258,   160,   274,   234,   235,   160,     6,    32,
1337310419Sdelphij      50,    53,   127,   155,   156,   157,   158,   163,   265,   266,
1338310419Sdelphij     267,    13,    14,    20,    22,    49,    89,    91,    97,    99,
1339310419Sdelphij     102,   124,   125,   229,   230,   231,   232,   211,    62,   200,
1340310419Sdelphij     288,   289,   290,    62,   287,     0,   207,   188,   210,   210,
1341310419Sdelphij      33,    62,   294,    62,   160,   160,    35,    56,    80,   283,
1342310419Sdelphij     202,    29,    52,    55,   138,   139,   145,   226,   227,   261,
1343310419Sdelphij     245,    62,    33,   236,     3,    44,    45,    46,    47,   141,
1344310419Sdelphij     159,   164,   165,   251,   252,   253,   254,   160,   207,   279,
1345310419Sdelphij     210,   248,    62,   160,   286,   242,    28,    28,   242,   242,
1346310419Sdelphij      87,   257,    62,   199,   235,   266,   294,    40,    62,   171,
1347310419Sdelphij     293,   230,    62,   294,   276,    62,   289,    62,   188,   213,
1348310419Sdelphij       5,    66,    68,   160,   184,   282,   190,   191,   297,   298,
1349310419Sdelphij     299,    62,   160,    30,    38,    41,    79,   110,   174,   237,
1350310419Sdelphij     238,   239,   160,   160,    62,   252,   294,   293,    48,    56,
1351310419Sdelphij      74,    75,    78,    84,   111,   112,   115,   116,   118,   119,
1352310419Sdelphij     120,   122,   181,   243,   242,   242,   211,   160,    63,   134,
1353310419Sdelphij     277,    37,     9,    18,    54,    55,    71,    93,   101,   103,
1354310419Sdelphij     117,   135,   136,   171,   173,   181,   185,   214,   215,   216,
1355310419Sdelphij     217,   218,   219,   220,   148,   298,   300,   301,   303,   188,
1356310419Sdelphij     199,   160,     4,    27,   106,   113,   131,   183,   186,   240,
1357310419Sdelphij     242,    28,   275,   211,    62,    62,    62,   175,   160,   199,
1358310419Sdelphij     188,   203,   301,   202,   294,   201,   210,   192,   302,   199,
1359310419Sdelphij     193,   304,   305,   294,   199,   203,   305,   188,   294,   202,
1360310419Sdelphij     194,   195,   196,   197,   198,   306,   307,   308,   203,   307,
1361310419Sdelphij     188,   199,   188,   294
1362258945Sroberto};
1363258945Sroberto
1364301301Sdelphij  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
1365301301Sdelphijstatic const yytype_uint16 yyr1[] =
1366301301Sdelphij{
1367310419Sdelphij       0,   204,   205,   206,   206,   206,   207,   207,   207,   207,
1368310419Sdelphij     207,   207,   207,   207,   207,   207,   207,   207,   207,   207,
1369310419Sdelphij     208,   209,   209,   209,   209,   209,   210,   210,   211,   212,
1370310419Sdelphij     212,   213,   213,   214,   214,   214,   215,   216,   216,   216,
1371310419Sdelphij     216,   216,   216,   216,   216,   217,   217,   218,   218,   218,
1372310419Sdelphij     218,   218,   218,   219,   220,   221,   222,   222,   223,   223,
1373310419Sdelphij     223,   223,   224,   224,   224,   224,   224,   224,   224,   224,
1374310419Sdelphij     224,   225,   225,   226,   226,   227,   227,   227,   227,   227,
1375310419Sdelphij     228,   229,   229,   230,   230,   230,   231,   231,   231,   231,
1376310419Sdelphij     231,   231,   231,   232,   232,   232,   232,   233,   233,   233,
1377310419Sdelphij     234,   234,   235,   235,   235,   235,   235,   235,   235,   235,
1378310419Sdelphij     236,   236,   237,   237,   237,   237,   238,   238,   239,   239,
1379310419Sdelphij     240,   240,   240,   240,   240,   240,   240,   241,   241,   241,
1380310419Sdelphij     241,   241,   241,   241,   241,   242,   242,   243,   243,   243,
1381310419Sdelphij     243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
1382310419Sdelphij     243,   243,   244,   244,   245,   246,   246,   246,   247,   247,
1383310419Sdelphij     248,   249,   249,   249,   249,   249,   249,   249,   249,   250,
1384310419Sdelphij     251,   251,   252,   252,   252,   252,   252,   253,   253,   254,
1385310419Sdelphij     254,   254,   254,   255,   256,   256,   257,   258,   258,   258,
1386310419Sdelphij     259,   259,   260,   260,   261,   261,   262,   262,   262,   262,
1387310419Sdelphij     262,   262,   263,   263,   263,   263,   263,   263,   264,   265,
1388310419Sdelphij     265,   266,   267,   267,   267,   267,   267,   267,   267,   267,
1389310419Sdelphij     267,   267,   268,   268,   268,   268,   268,   268,   268,   268,
1390310419Sdelphij     268,   268,   268,   268,   268,   268,   269,   269,   269,   270,
1391310419Sdelphij     270,   271,   271,   272,   272,   272,   273,   273,   273,   274,
1392310419Sdelphij     275,   275,   276,   276,   277,   277,   278,   278,   279,   280,
1393310419Sdelphij     280,   281,   281,   282,   282,   282,   282,   283,   283,   283,
1394310419Sdelphij     284,   285,   285,   286,   286,   286,   286,   286,   286,   286,
1395310419Sdelphij     287,   287,   288,   288,   289,   289,   290,   291,   291,   292,
1396310419Sdelphij     292,   293,   293,   293,   294,   294,   295,   296,   297,   297,
1397310419Sdelphij     298,   299,   299,   300,   300,   301,   302,   303,   304,   304,
1398310419Sdelphij     305,   306,   306,   307,   308,   308,   308,   308,   308
1399301301Sdelphij};
1400258945Sroberto
1401301301Sdelphij  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
1402301301Sdelphijstatic const yytype_uint8 yyr2[] =
1403301301Sdelphij{
1404301301Sdelphij       0,     2,     1,     3,     2,     2,     0,     1,     1,     1,
1405301301Sdelphij       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1406301301Sdelphij       3,     1,     1,     1,     1,     1,     1,     2,     1,     1,
1407301301Sdelphij       1,     0,     2,     1,     1,     1,     1,     1,     1,     1,
1408301301Sdelphij       1,     1,     1,     1,     1,     2,     2,     1,     1,     1,
1409301301Sdelphij       1,     1,     1,     2,     1,     2,     1,     1,     1,     2,
1410301301Sdelphij       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1411301301Sdelphij       2,     0,     2,     2,     2,     1,     1,     1,     1,     1,
1412301301Sdelphij       2,     2,     1,     2,     2,     2,     1,     1,     1,     1,
1413310419Sdelphij       1,     1,     1,     1,     1,     1,     1,     2,     2,     3,
1414310419Sdelphij       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1415310419Sdelphij       0,     2,     2,     2,     1,     1,     1,     1,     1,     1,
1416310419Sdelphij       1,     1,     1,     1,     1,     1,     1,     2,     2,     3,
1417310419Sdelphij       5,     3,     4,     4,     3,     0,     2,     1,     1,     1,
1418310419Sdelphij       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1419310419Sdelphij       1,     1,     2,     1,     2,     1,     1,     1,     2,     1,
1420310419Sdelphij       2,     1,     1,     1,     1,     1,     1,     1,     1,     3,
1421310419Sdelphij       2,     1,     2,     2,     2,     2,     2,     1,     1,     1,
1422310419Sdelphij       1,     1,     1,     2,     2,     1,     2,     1,     1,     1,
1423301301Sdelphij       2,     2,     2,     1,     1,     1,     1,     1,     1,     1,
1424310419Sdelphij       1,     1,     1,     1,     1,     1,     1,     1,     2,     2,
1425310419Sdelphij       1,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1426310419Sdelphij       1,     1,     1,     1,     2,     2,     2,     2,     3,     1,
1427310419Sdelphij       2,     2,     2,     2,     3,     2,     1,     1,     1,     1,
1428310419Sdelphij       1,     1,     1,     1,     1,     1,     1,     2,     0,     4,
1429310419Sdelphij       1,     0,     0,     2,     2,     2,     2,     1,     1,     3,
1430310419Sdelphij       3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1431301301Sdelphij       2,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1432310419Sdelphij       2,     1,     2,     1,     1,     1,     5,     2,     1,     2,
1433310419Sdelphij       1,     1,     1,     1,     1,     1,     5,     1,     3,     2,
1434310419Sdelphij       3,     1,     1,     2,     1,     5,     4,     3,     2,     1,
1435310419Sdelphij       6,     3,     2,     3,     1,     1,     1,     1,     1
1436301301Sdelphij};
1437258945Sroberto
1438258945Sroberto
1439301301Sdelphij#define yyerrok         (yyerrstatus = 0)
1440301301Sdelphij#define yyclearin       (yychar = YYEMPTY)
1441301301Sdelphij#define YYEMPTY         (-2)
1442301301Sdelphij#define YYEOF           0
1443258945Sroberto
1444301301Sdelphij#define YYACCEPT        goto yyacceptlab
1445301301Sdelphij#define YYABORT         goto yyabortlab
1446301301Sdelphij#define YYERROR         goto yyerrorlab
1447258945Sroberto
1448301301Sdelphij
1449258945Sroberto#define YYRECOVERING()  (!!yyerrstatus)
1450258945Sroberto
1451275970Scy#define YYBACKUP(Token, Value)                                  \
1452275970Scydo                                                              \
1453275970Scy  if (yychar == YYEMPTY)                                        \
1454275970Scy    {                                                           \
1455275970Scy      yychar = (Token);                                         \
1456275970Scy      yylval = (Value);                                         \
1457275970Scy      YYPOPSTACK (yylen);                                       \
1458275970Scy      yystate = *yyssp;                                         \
1459275970Scy      goto yybackup;                                            \
1460275970Scy    }                                                           \
1461275970Scy  else                                                          \
1462275970Scy    {                                                           \
1463290000Sglebius      yyerror (YY_("syntax error: cannot back up")); \
1464301301Sdelphij      YYERROR;                                                  \
1465301301Sdelphij    }                                                           \
1466301301Sdelphijwhile (0)
1467258945Sroberto
1468275970Scy/* Error token number */
1469301301Sdelphij#define YYTERROR        1
1470301301Sdelphij#define YYERRCODE       256
1471258945Sroberto
1472258945Sroberto
1473258945Sroberto
1474258945Sroberto/* Enable debugging if requested.  */
1475258945Sroberto#if YYDEBUG
1476258945Sroberto
1477258945Sroberto# ifndef YYFPRINTF
1478258945Sroberto#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1479258945Sroberto#  define YYFPRINTF fprintf
1480258945Sroberto# endif
1481258945Sroberto
1482301301Sdelphij# define YYDPRINTF(Args)                        \
1483301301Sdelphijdo {                                            \
1484301301Sdelphij  if (yydebug)                                  \
1485301301Sdelphij    YYFPRINTF Args;                             \
1486301301Sdelphij} while (0)
1487258945Sroberto
1488301301Sdelphij/* This macro is provided for backward compatibility. */
1489301301Sdelphij#ifndef YY_LOCATION_PRINT
1490301301Sdelphij# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1491301301Sdelphij#endif
1492258945Sroberto
1493258945Sroberto
1494301301Sdelphij# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
1495301301Sdelphijdo {                                                                      \
1496301301Sdelphij  if (yydebug)                                                            \
1497301301Sdelphij    {                                                                     \
1498301301Sdelphij      YYFPRINTF (stderr, "%s ", Title);                                   \
1499301301Sdelphij      yy_symbol_print (stderr,                                            \
1500301301Sdelphij                  Type, Value); \
1501301301Sdelphij      YYFPRINTF (stderr, "\n");                                           \
1502301301Sdelphij    }                                                                     \
1503301301Sdelphij} while (0)
1504258945Sroberto
1505301301Sdelphij
1506301301Sdelphij/*----------------------------------------.
1507301301Sdelphij| Print this symbol's value on YYOUTPUT.  |
1508301301Sdelphij`----------------------------------------*/
1509301301Sdelphij
1510258945Srobertostatic void
1511290000Sglebiusyy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
1512258945Sroberto{
1513275970Scy  FILE *yyo = yyoutput;
1514275970Scy  YYUSE (yyo);
1515258945Sroberto  if (!yyvaluep)
1516258945Sroberto    return;
1517258945Sroberto# ifdef YYPRINT
1518258945Sroberto  if (yytype < YYNTOKENS)
1519258945Sroberto    YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1520258945Sroberto# endif
1521275970Scy  YYUSE (yytype);
1522258945Sroberto}
1523258945Sroberto
1524258945Sroberto
1525258945Sroberto/*--------------------------------.
1526258945Sroberto| Print this symbol on YYOUTPUT.  |
1527258945Sroberto`--------------------------------*/
1528258945Sroberto
1529258945Srobertostatic void
1530290000Sglebiusyy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
1531258945Sroberto{
1532301301Sdelphij  YYFPRINTF (yyoutput, "%s %s (",
1533301301Sdelphij             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
1534258945Sroberto
1535290000Sglebius  yy_symbol_value_print (yyoutput, yytype, yyvaluep);
1536258945Sroberto  YYFPRINTF (yyoutput, ")");
1537258945Sroberto}
1538258945Sroberto
1539258945Sroberto/*------------------------------------------------------------------.
1540258945Sroberto| yy_stack_print -- Print the state stack from its BOTTOM up to its |
1541258945Sroberto| TOP (included).                                                   |
1542258945Sroberto`------------------------------------------------------------------*/
1543258945Sroberto
1544258945Srobertostatic void
1545258945Srobertoyy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
1546258945Sroberto{
1547258945Sroberto  YYFPRINTF (stderr, "Stack now");
1548258945Sroberto  for (; yybottom <= yytop; yybottom++)
1549258945Sroberto    {
1550258945Sroberto      int yybot = *yybottom;
1551258945Sroberto      YYFPRINTF (stderr, " %d", yybot);
1552258945Sroberto    }
1553258945Sroberto  YYFPRINTF (stderr, "\n");
1554258945Sroberto}
1555258945Sroberto
1556301301Sdelphij# define YY_STACK_PRINT(Bottom, Top)                            \
1557301301Sdelphijdo {                                                            \
1558301301Sdelphij  if (yydebug)                                                  \
1559301301Sdelphij    yy_stack_print ((Bottom), (Top));                           \
1560301301Sdelphij} while (0)
1561258945Sroberto
1562258945Sroberto
1563258945Sroberto/*------------------------------------------------.
1564258945Sroberto| Report that the YYRULE is going to be reduced.  |
1565258945Sroberto`------------------------------------------------*/
1566258945Sroberto
1567258945Srobertostatic void
1568301301Sdelphijyy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule)
1569258945Sroberto{
1570301301Sdelphij  unsigned long int yylno = yyrline[yyrule];
1571258945Sroberto  int yynrhs = yyr2[yyrule];
1572258945Sroberto  int yyi;
1573258945Sroberto  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
1574301301Sdelphij             yyrule - 1, yylno);
1575258945Sroberto  /* The symbols being reduced.  */
1576258945Sroberto  for (yyi = 0; yyi < yynrhs; yyi++)
1577258945Sroberto    {
1578258945Sroberto      YYFPRINTF (stderr, "   $%d = ", yyi + 1);
1579301301Sdelphij      yy_symbol_print (stderr,
1580301301Sdelphij                       yystos[yyssp[yyi + 1 - yynrhs]],
1581301301Sdelphij                       &(yyvsp[(yyi + 1) - (yynrhs)])
1582301301Sdelphij                                              );
1583258945Sroberto      YYFPRINTF (stderr, "\n");
1584258945Sroberto    }
1585258945Sroberto}
1586258945Sroberto
1587301301Sdelphij# define YY_REDUCE_PRINT(Rule)          \
1588301301Sdelphijdo {                                    \
1589301301Sdelphij  if (yydebug)                          \
1590301301Sdelphij    yy_reduce_print (yyssp, yyvsp, Rule); \
1591301301Sdelphij} while (0)
1592258945Sroberto
1593258945Sroberto/* Nonzero means print parse trace.  It is left uninitialized so that
1594258945Sroberto   multiple parsers can coexist.  */
1595258945Srobertoint yydebug;
1596258945Sroberto#else /* !YYDEBUG */
1597258945Sroberto# define YYDPRINTF(Args)
1598258945Sroberto# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1599258945Sroberto# define YY_STACK_PRINT(Bottom, Top)
1600258945Sroberto# define YY_REDUCE_PRINT(Rule)
1601258945Sroberto#endif /* !YYDEBUG */
1602258945Sroberto
1603258945Sroberto
1604258945Sroberto/* YYINITDEPTH -- initial size of the parser's stacks.  */
1605301301Sdelphij#ifndef YYINITDEPTH
1606258945Sroberto# define YYINITDEPTH 200
1607258945Sroberto#endif
1608258945Sroberto
1609258945Sroberto/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
1610258945Sroberto   if the built-in stack extension method is used).
1611258945Sroberto
1612258945Sroberto   Do not make this value too large; the results are undefined if
1613258945Sroberto   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
1614258945Sroberto   evaluated with infinite-precision integer arithmetic.  */
1615258945Sroberto
1616258945Sroberto#ifndef YYMAXDEPTH
1617258945Sroberto# define YYMAXDEPTH 10000
1618258945Sroberto#endif
1619258945Sroberto
1620258945Sroberto
1621258945Sroberto#if YYERROR_VERBOSE
1622258945Sroberto
1623258945Sroberto# ifndef yystrlen
1624258945Sroberto#  if defined __GLIBC__ && defined _STRING_H
1625258945Sroberto#   define yystrlen strlen
1626258945Sroberto#  else
1627258945Sroberto/* Return the length of YYSTR.  */
1628258945Srobertostatic YYSIZE_T
1629258945Srobertoyystrlen (const char *yystr)
1630258945Sroberto{
1631258945Sroberto  YYSIZE_T yylen;
1632258945Sroberto  for (yylen = 0; yystr[yylen]; yylen++)
1633258945Sroberto    continue;
1634258945Sroberto  return yylen;
1635258945Sroberto}
1636258945Sroberto#  endif
1637258945Sroberto# endif
1638258945Sroberto
1639258945Sroberto# ifndef yystpcpy
1640258945Sroberto#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
1641258945Sroberto#   define yystpcpy stpcpy
1642258945Sroberto#  else
1643258945Sroberto/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
1644258945Sroberto   YYDEST.  */
1645258945Srobertostatic char *
1646258945Srobertoyystpcpy (char *yydest, const char *yysrc)
1647258945Sroberto{
1648258945Sroberto  char *yyd = yydest;
1649258945Sroberto  const char *yys = yysrc;
1650258945Sroberto
1651258945Sroberto  while ((*yyd++ = *yys++) != '\0')
1652258945Sroberto    continue;
1653258945Sroberto
1654258945Sroberto  return yyd - 1;
1655258945Sroberto}
1656258945Sroberto#  endif
1657258945Sroberto# endif
1658258945Sroberto
1659258945Sroberto# ifndef yytnamerr
1660258945Sroberto/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
1661258945Sroberto   quotes and backslashes, so that it's suitable for yyerror.  The
1662258945Sroberto   heuristic is that double-quoting is unnecessary unless the string
1663258945Sroberto   contains an apostrophe, a comma, or backslash (other than
1664258945Sroberto   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
1665258945Sroberto   null, do not copy; instead, return the length of what the result
1666258945Sroberto   would have been.  */
1667258945Srobertostatic YYSIZE_T
1668258945Srobertoyytnamerr (char *yyres, const char *yystr)
1669258945Sroberto{
1670258945Sroberto  if (*yystr == '"')
1671258945Sroberto    {
1672258945Sroberto      YYSIZE_T yyn = 0;
1673258945Sroberto      char const *yyp = yystr;
1674258945Sroberto
1675258945Sroberto      for (;;)
1676301301Sdelphij        switch (*++yyp)
1677301301Sdelphij          {
1678301301Sdelphij          case '\'':
1679301301Sdelphij          case ',':
1680301301Sdelphij            goto do_not_strip_quotes;
1681258945Sroberto
1682301301Sdelphij          case '\\':
1683301301Sdelphij            if (*++yyp != '\\')
1684301301Sdelphij              goto do_not_strip_quotes;
1685301301Sdelphij            /* Fall through.  */
1686301301Sdelphij          default:
1687301301Sdelphij            if (yyres)
1688301301Sdelphij              yyres[yyn] = *yyp;
1689301301Sdelphij            yyn++;
1690301301Sdelphij            break;
1691258945Sroberto
1692301301Sdelphij          case '"':
1693301301Sdelphij            if (yyres)
1694301301Sdelphij              yyres[yyn] = '\0';
1695301301Sdelphij            return yyn;
1696301301Sdelphij          }
1697258945Sroberto    do_not_strip_quotes: ;
1698258945Sroberto    }
1699258945Sroberto
1700258945Sroberto  if (! yyres)
1701258945Sroberto    return yystrlen (yystr);
1702258945Sroberto
1703258945Sroberto  return yystpcpy (yyres, yystr) - yyres;
1704258945Sroberto}
1705258945Sroberto# endif
1706258945Sroberto
1707275970Scy/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
1708275970Scy   about the unexpected token YYTOKEN for the state stack whose top is
1709275970Scy   YYSSP.
1710275970Scy
1711275970Scy   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
1712275970Scy   not large enough to hold the message.  In that case, also set
1713275970Scy   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
1714275970Scy   required number of bytes is too large to store.  */
1715275970Scystatic int
1716275970Scyyysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
1717275970Scy                yytype_int16 *yyssp, int yytoken)
1718258945Sroberto{
1719301301Sdelphij  YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
1720275970Scy  YYSIZE_T yysize = yysize0;
1721275970Scy  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1722275970Scy  /* Internationalized format string. */
1723301301Sdelphij  const char *yyformat = YY_NULLPTR;
1724275970Scy  /* Arguments of yyformat. */
1725275970Scy  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1726275970Scy  /* Number of reported tokens (one for the "unexpected", one per
1727275970Scy     "expected"). */
1728275970Scy  int yycount = 0;
1729258945Sroberto
1730275970Scy  /* There are many possibilities here to consider:
1731275970Scy     - If this state is a consistent state with a default action, then
1732275970Scy       the only way this function was invoked is if the default action
1733275970Scy       is an error action.  In that case, don't check for expected
1734275970Scy       tokens because there are none.
1735275970Scy     - The only way there can be no lookahead present (in yychar) is if
1736275970Scy       this state is a consistent state with a default action.  Thus,
1737275970Scy       detecting the absence of a lookahead is sufficient to determine
1738275970Scy       that there is no unexpected or expected token to report.  In that
1739275970Scy       case, just report a simple "syntax error".
1740275970Scy     - Don't assume there isn't a lookahead just because this state is a
1741275970Scy       consistent state with a default action.  There might have been a
1742275970Scy       previous inconsistent state, consistent state with a non-default
1743275970Scy       action, or user semantic action that manipulated yychar.
1744275970Scy     - Of course, the expected token list depends on states to have
1745275970Scy       correct lookahead information, and it depends on the parser not
1746275970Scy       to perform extra reductions after fetching a lookahead from the
1747275970Scy       scanner and before detecting a syntax error.  Thus, state merging
1748275970Scy       (from LALR or IELR) and default reductions corrupt the expected
1749275970Scy       token list.  However, the list is correct for canonical LR with
1750275970Scy       one exception: it will still contain any token that will not be
1751275970Scy       accepted due to an error action in a later state.
1752275970Scy  */
1753275970Scy  if (yytoken != YYEMPTY)
1754258945Sroberto    {
1755275970Scy      int yyn = yypact[*yyssp];
1756275970Scy      yyarg[yycount++] = yytname[yytoken];
1757275970Scy      if (!yypact_value_is_default (yyn))
1758275970Scy        {
1759275970Scy          /* Start YYX at -YYN if negative to avoid negative indexes in
1760275970Scy             YYCHECK.  In other words, skip the first -YYN actions for
1761275970Scy             this state because they are default actions.  */
1762275970Scy          int yyxbegin = yyn < 0 ? -yyn : 0;
1763275970Scy          /* Stay within bounds of both yycheck and yytname.  */
1764275970Scy          int yychecklim = YYLAST - yyn + 1;
1765275970Scy          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
1766275970Scy          int yyx;
1767258945Sroberto
1768275970Scy          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1769275970Scy            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
1770275970Scy                && !yytable_value_is_error (yytable[yyx + yyn]))
1771275970Scy              {
1772275970Scy                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1773275970Scy                  {
1774275970Scy                    yycount = 1;
1775275970Scy                    yysize = yysize0;
1776275970Scy                    break;
1777275970Scy                  }
1778275970Scy                yyarg[yycount++] = yytname[yyx];
1779275970Scy                {
1780301301Sdelphij                  YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
1781275970Scy                  if (! (yysize <= yysize1
1782275970Scy                         && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
1783275970Scy                    return 2;
1784275970Scy                  yysize = yysize1;
1785275970Scy                }
1786275970Scy              }
1787275970Scy        }
1788275970Scy    }
1789258945Sroberto
1790275970Scy  switch (yycount)
1791275970Scy    {
1792275970Scy# define YYCASE_(N, S)                      \
1793275970Scy      case N:                               \
1794275970Scy        yyformat = S;                       \
1795275970Scy      break
1796275970Scy      YYCASE_(0, YY_("syntax error"));
1797275970Scy      YYCASE_(1, YY_("syntax error, unexpected %s"));
1798275970Scy      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
1799275970Scy      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
1800275970Scy      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
1801275970Scy      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
1802275970Scy# undef YYCASE_
1803275970Scy    }
1804258945Sroberto
1805275970Scy  {
1806275970Scy    YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
1807275970Scy    if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
1808275970Scy      return 2;
1809275970Scy    yysize = yysize1;
1810275970Scy  }
1811258945Sroberto
1812275970Scy  if (*yymsg_alloc < yysize)
1813275970Scy    {
1814275970Scy      *yymsg_alloc = 2 * yysize;
1815275970Scy      if (! (yysize <= *yymsg_alloc
1816275970Scy             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
1817275970Scy        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
1818275970Scy      return 1;
1819275970Scy    }
1820258945Sroberto
1821275970Scy  /* Avoid sprintf, as that infringes on the user's name space.
1822275970Scy     Don't have undefined behavior even if the translation
1823275970Scy     produced a string with the wrong number of "%s"s.  */
1824275970Scy  {
1825275970Scy    char *yyp = *yymsg;
1826275970Scy    int yyi = 0;
1827275970Scy    while ((*yyp = *yyformat) != '\0')
1828275970Scy      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
1829275970Scy        {
1830275970Scy          yyp += yytnamerr (yyp, yyarg[yyi++]);
1831275970Scy          yyformat += 2;
1832275970Scy        }
1833275970Scy      else
1834275970Scy        {
1835275970Scy          yyp++;
1836275970Scy          yyformat++;
1837275970Scy        }
1838275970Scy  }
1839275970Scy  return 0;
1840258945Sroberto}
1841258945Sroberto#endif /* YYERROR_VERBOSE */
1842258945Sroberto
1843258945Sroberto/*-----------------------------------------------.
1844258945Sroberto| Release the memory associated to this symbol.  |
1845258945Sroberto`-----------------------------------------------*/
1846258945Sroberto
1847258945Srobertostatic void
1848290000Sglebiusyydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
1849258945Sroberto{
1850258945Sroberto  YYUSE (yyvaluep);
1851258945Sroberto  if (!yymsg)
1852258945Sroberto    yymsg = "Deleting";
1853258945Sroberto  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
1854258945Sroberto
1855301301Sdelphij  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1856275970Scy  YYUSE (yytype);
1857301301Sdelphij  YY_IGNORE_MAYBE_UNINITIALIZED_END
1858258945Sroberto}
1859258945Sroberto
1860258945Sroberto
1861258945Sroberto
1862275970Scy
1863258945Sroberto/* The lookahead symbol.  */
1864258945Srobertoint yychar;
1865258945Sroberto
1866258945Sroberto/* The semantic value of the lookahead symbol.  */
1867301301SdelphijYYSTYPE yylval;
1868258945Sroberto/* Number of syntax errors so far.  */
1869258945Srobertoint yynerrs;
1870258945Sroberto
1871258945Sroberto
1872275970Scy/*----------.
1873275970Scy| yyparse.  |
1874275970Scy`----------*/
1875258945Sroberto
1876258945Srobertoint
1877290000Sglebiusyyparse (void)
1878258945Sroberto{
1879258945Sroberto    int yystate;
1880258945Sroberto    /* Number of tokens to shift before error messages enabled.  */
1881258945Sroberto    int yyerrstatus;
1882258945Sroberto
1883258945Sroberto    /* The stacks and their tools:
1884301301Sdelphij       'yyss': related to states.
1885301301Sdelphij       'yyvs': related to semantic values.
1886258945Sroberto
1887275970Scy       Refer to the stacks through separate pointers, to allow yyoverflow
1888258945Sroberto       to reallocate them elsewhere.  */
1889258945Sroberto
1890258945Sroberto    /* The state stack.  */
1891258945Sroberto    yytype_int16 yyssa[YYINITDEPTH];
1892258945Sroberto    yytype_int16 *yyss;
1893258945Sroberto    yytype_int16 *yyssp;
1894258945Sroberto
1895258945Sroberto    /* The semantic value stack.  */
1896258945Sroberto    YYSTYPE yyvsa[YYINITDEPTH];
1897258945Sroberto    YYSTYPE *yyvs;
1898258945Sroberto    YYSTYPE *yyvsp;
1899258945Sroberto
1900258945Sroberto    YYSIZE_T yystacksize;
1901258945Sroberto
1902258945Sroberto  int yyn;
1903258945Sroberto  int yyresult;
1904258945Sroberto  /* Lookahead token as an internal (translated) token number.  */
1905275970Scy  int yytoken = 0;
1906258945Sroberto  /* The variables used to return semantic value and location from the
1907258945Sroberto     action routines.  */
1908258945Sroberto  YYSTYPE yyval;
1909258945Sroberto
1910258945Sroberto#if YYERROR_VERBOSE
1911258945Sroberto  /* Buffer for error messages, and its allocated size.  */
1912258945Sroberto  char yymsgbuf[128];
1913258945Sroberto  char *yymsg = yymsgbuf;
1914258945Sroberto  YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
1915258945Sroberto#endif
1916258945Sroberto
1917258945Sroberto#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
1918258945Sroberto
1919258945Sroberto  /* The number of symbols on the RHS of the reduced rule.
1920258945Sroberto     Keep to zero when no symbol should be popped.  */
1921258945Sroberto  int yylen = 0;
1922258945Sroberto
1923275970Scy  yyssp = yyss = yyssa;
1924275970Scy  yyvsp = yyvs = yyvsa;
1925258945Sroberto  yystacksize = YYINITDEPTH;
1926258945Sroberto
1927258945Sroberto  YYDPRINTF ((stderr, "Starting parse\n"));
1928258945Sroberto
1929258945Sroberto  yystate = 0;
1930258945Sroberto  yyerrstatus = 0;
1931258945Sroberto  yynerrs = 0;
1932258945Sroberto  yychar = YYEMPTY; /* Cause a token to be read.  */
1933258945Sroberto  goto yysetstate;
1934258945Sroberto
1935258945Sroberto/*------------------------------------------------------------.
1936258945Sroberto| yynewstate -- Push a new state, which is found in yystate.  |
1937258945Sroberto`------------------------------------------------------------*/
1938258945Sroberto yynewstate:
1939258945Sroberto  /* In all cases, when you get here, the value and location stacks
1940258945Sroberto     have just been pushed.  So pushing a state here evens the stacks.  */
1941258945Sroberto  yyssp++;
1942258945Sroberto
1943258945Sroberto yysetstate:
1944258945Sroberto  *yyssp = yystate;
1945258945Sroberto
1946258945Sroberto  if (yyss + yystacksize - 1 <= yyssp)
1947258945Sroberto    {
1948258945Sroberto      /* Get the current used size of the three stacks, in elements.  */
1949258945Sroberto      YYSIZE_T yysize = yyssp - yyss + 1;
1950258945Sroberto
1951258945Sroberto#ifdef yyoverflow
1952258945Sroberto      {
1953301301Sdelphij        /* Give user a chance to reallocate the stack.  Use copies of
1954301301Sdelphij           these so that the &'s don't force the real ones into
1955301301Sdelphij           memory.  */
1956301301Sdelphij        YYSTYPE *yyvs1 = yyvs;
1957301301Sdelphij        yytype_int16 *yyss1 = yyss;
1958258945Sroberto
1959301301Sdelphij        /* Each stack pointer address is followed by the size of the
1960301301Sdelphij           data in use in that stack, in bytes.  This used to be a
1961301301Sdelphij           conditional around just the two extra args, but that might
1962301301Sdelphij           be undefined if yyoverflow is a macro.  */
1963301301Sdelphij        yyoverflow (YY_("memory exhausted"),
1964301301Sdelphij                    &yyss1, yysize * sizeof (*yyssp),
1965301301Sdelphij                    &yyvs1, yysize * sizeof (*yyvsp),
1966301301Sdelphij                    &yystacksize);
1967258945Sroberto
1968301301Sdelphij        yyss = yyss1;
1969301301Sdelphij        yyvs = yyvs1;
1970258945Sroberto      }
1971258945Sroberto#else /* no yyoverflow */
1972258945Sroberto# ifndef YYSTACK_RELOCATE
1973258945Sroberto      goto yyexhaustedlab;
1974258945Sroberto# else
1975258945Sroberto      /* Extend the stack our own way.  */
1976258945Sroberto      if (YYMAXDEPTH <= yystacksize)
1977301301Sdelphij        goto yyexhaustedlab;
1978258945Sroberto      yystacksize *= 2;
1979258945Sroberto      if (YYMAXDEPTH < yystacksize)
1980301301Sdelphij        yystacksize = YYMAXDEPTH;
1981258945Sroberto
1982258945Sroberto      {
1983301301Sdelphij        yytype_int16 *yyss1 = yyss;
1984301301Sdelphij        union yyalloc *yyptr =
1985301301Sdelphij          (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
1986301301Sdelphij        if (! yyptr)
1987301301Sdelphij          goto yyexhaustedlab;
1988301301Sdelphij        YYSTACK_RELOCATE (yyss_alloc, yyss);
1989301301Sdelphij        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
1990258945Sroberto#  undef YYSTACK_RELOCATE
1991301301Sdelphij        if (yyss1 != yyssa)
1992301301Sdelphij          YYSTACK_FREE (yyss1);
1993258945Sroberto      }
1994258945Sroberto# endif
1995258945Sroberto#endif /* no yyoverflow */
1996258945Sroberto
1997258945Sroberto      yyssp = yyss + yysize - 1;
1998258945Sroberto      yyvsp = yyvs + yysize - 1;
1999258945Sroberto
2000258945Sroberto      YYDPRINTF ((stderr, "Stack size increased to %lu\n",
2001301301Sdelphij                  (unsigned long int) yystacksize));
2002258945Sroberto
2003258945Sroberto      if (yyss + yystacksize - 1 <= yyssp)
2004301301Sdelphij        YYABORT;
2005258945Sroberto    }
2006258945Sroberto
2007258945Sroberto  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
2008258945Sroberto
2009258945Sroberto  if (yystate == YYFINAL)
2010258945Sroberto    YYACCEPT;
2011258945Sroberto
2012258945Sroberto  goto yybackup;
2013258945Sroberto
2014258945Sroberto/*-----------.
2015258945Sroberto| yybackup.  |
2016258945Sroberto`-----------*/
2017258945Srobertoyybackup:
2018258945Sroberto
2019258945Sroberto  /* Do appropriate processing given the current state.  Read a
2020258945Sroberto     lookahead token if we need one and don't already have one.  */
2021258945Sroberto
2022258945Sroberto  /* First try to decide what to do without reference to lookahead token.  */
2023258945Sroberto  yyn = yypact[yystate];
2024275970Scy  if (yypact_value_is_default (yyn))
2025258945Sroberto    goto yydefault;
2026258945Sroberto
2027258945Sroberto  /* Not known => get a lookahead token if don't already have one.  */
2028258945Sroberto
2029258945Sroberto  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
2030258945Sroberto  if (yychar == YYEMPTY)
2031258945Sroberto    {
2032258945Sroberto      YYDPRINTF ((stderr, "Reading a token: "));
2033301301Sdelphij      yychar = yylex ();
2034258945Sroberto    }
2035258945Sroberto
2036258945Sroberto  if (yychar <= YYEOF)
2037258945Sroberto    {
2038258945Sroberto      yychar = yytoken = YYEOF;
2039258945Sroberto      YYDPRINTF ((stderr, "Now at end of input.\n"));
2040258945Sroberto    }
2041258945Sroberto  else
2042258945Sroberto    {
2043258945Sroberto      yytoken = YYTRANSLATE (yychar);
2044258945Sroberto      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
2045258945Sroberto    }
2046258945Sroberto
2047258945Sroberto  /* If the proper action on seeing token YYTOKEN is to reduce or to
2048258945Sroberto     detect an error, take that action.  */
2049258945Sroberto  yyn += yytoken;
2050258945Sroberto  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
2051258945Sroberto    goto yydefault;
2052258945Sroberto  yyn = yytable[yyn];
2053258945Sroberto  if (yyn <= 0)
2054258945Sroberto    {
2055275970Scy      if (yytable_value_is_error (yyn))
2056275970Scy        goto yyerrlab;
2057258945Sroberto      yyn = -yyn;
2058258945Sroberto      goto yyreduce;
2059258945Sroberto    }
2060258945Sroberto
2061258945Sroberto  /* Count tokens shifted since error; after three, turn off error
2062258945Sroberto     status.  */
2063258945Sroberto  if (yyerrstatus)
2064258945Sroberto    yyerrstatus--;
2065258945Sroberto
2066258945Sroberto  /* Shift the lookahead token.  */
2067258945Sroberto  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
2068258945Sroberto
2069258945Sroberto  /* Discard the shifted token.  */
2070258945Sroberto  yychar = YYEMPTY;
2071258945Sroberto
2072258945Sroberto  yystate = yyn;
2073275970Scy  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
2074258945Sroberto  *++yyvsp = yylval;
2075275970Scy  YY_IGNORE_MAYBE_UNINITIALIZED_END
2076258945Sroberto
2077258945Sroberto  goto yynewstate;
2078258945Sroberto
2079258945Sroberto
2080258945Sroberto/*-----------------------------------------------------------.
2081258945Sroberto| yydefault -- do the default action for the current state.  |
2082258945Sroberto`-----------------------------------------------------------*/
2083258945Srobertoyydefault:
2084258945Sroberto  yyn = yydefact[yystate];
2085258945Sroberto  if (yyn == 0)
2086258945Sroberto    goto yyerrlab;
2087258945Sroberto  goto yyreduce;
2088258945Sroberto
2089258945Sroberto
2090258945Sroberto/*-----------------------------.
2091258945Sroberto| yyreduce -- Do a reduction.  |
2092258945Sroberto`-----------------------------*/
2093258945Srobertoyyreduce:
2094258945Sroberto  /* yyn is the number of a rule to reduce with.  */
2095258945Sroberto  yylen = yyr2[yyn];
2096258945Sroberto
2097258945Sroberto  /* If YYLEN is nonzero, implement the default value of the action:
2098301301Sdelphij     '$$ = $1'.
2099258945Sroberto
2100258945Sroberto     Otherwise, the following line sets YYVAL to garbage.
2101258945Sroberto     This behavior is undocumented and Bison
2102258945Sroberto     users should not rely upon it.  Assigning to YYVAL
2103258945Sroberto     unconditionally makes the parser a bit smaller, and it avoids a
2104258945Sroberto     GCC warning that YYVAL may be used uninitialized.  */
2105258945Sroberto  yyval = yyvsp[1-yylen];
2106258945Sroberto
2107258945Sroberto
2108258945Sroberto  YY_REDUCE_PRINT (yyn);
2109258945Sroberto  switch (yyn)
2110258945Sroberto    {
2111258945Sroberto        case 5:
2112310419Sdelphij#line 378 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2113258945Sroberto    {
2114258945Sroberto			/* I will need to incorporate much more fine grained
2115258945Sroberto			 * error messages. The following should suffice for
2116258945Sroberto			 * the time being.
2117258945Sroberto			 */
2118290000Sglebius			struct FILE_INFO * ip_ctx = lex_current();
2119290000Sglebius			msyslog(LOG_ERR,
2120258945Sroberto				"syntax error in %s line %d, column %d",
2121290000Sglebius				ip_ctx->fname,
2122290000Sglebius				ip_ctx->errpos.nline,
2123290000Sglebius				ip_ctx->errpos.ncol);
2124258945Sroberto		}
2125310419Sdelphij#line 2126 "ntp_parser.c" /* yacc.c:1646  */
2126258945Sroberto    break;
2127258945Sroberto
2128275970Scy  case 20:
2129310419Sdelphij#line 414 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2130258945Sroberto    {
2131275970Scy			peer_node *my_node;
2132258945Sroberto
2133301301Sdelphij			my_node = create_peer_node((yyvsp[-2].Integer), (yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
2134275970Scy			APPEND_G_FIFO(cfgt.peers, my_node);
2135258945Sroberto		}
2136310419Sdelphij#line 2137 "ntp_parser.c" /* yacc.c:1646  */
2137258945Sroberto    break;
2138258945Sroberto
2139258945Sroberto  case 27:
2140310419Sdelphij#line 433 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2141301301Sdelphij    { (yyval.Address_node) = create_address_node((yyvsp[0].String), (yyvsp[-1].Integer)); }
2142310419Sdelphij#line 2143 "ntp_parser.c" /* yacc.c:1646  */
2143258945Sroberto    break;
2144258945Sroberto
2145258945Sroberto  case 28:
2146310419Sdelphij#line 438 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2147301301Sdelphij    { (yyval.Address_node) = create_address_node((yyvsp[0].String), AF_UNSPEC); }
2148310419Sdelphij#line 2149 "ntp_parser.c" /* yacc.c:1646  */
2149258945Sroberto    break;
2150258945Sroberto
2151258945Sroberto  case 29:
2152310419Sdelphij#line 443 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2153258945Sroberto    { (yyval.Integer) = AF_INET; }
2154310419Sdelphij#line 2155 "ntp_parser.c" /* yacc.c:1646  */
2155258945Sroberto    break;
2156258945Sroberto
2157258945Sroberto  case 30:
2158310419Sdelphij#line 445 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2159258945Sroberto    { (yyval.Integer) = AF_INET6; }
2160310419Sdelphij#line 2161 "ntp_parser.c" /* yacc.c:1646  */
2161258945Sroberto    break;
2162258945Sroberto
2163258945Sroberto  case 31:
2164310419Sdelphij#line 450 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2165275970Scy    { (yyval.Attr_val_fifo) = NULL; }
2166310419Sdelphij#line 2167 "ntp_parser.c" /* yacc.c:1646  */
2167258945Sroberto    break;
2168258945Sroberto
2169258945Sroberto  case 32:
2170310419Sdelphij#line 452 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2171275970Scy    {
2172301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2173301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2174275970Scy		}
2175310419Sdelphij#line 2176 "ntp_parser.c" /* yacc.c:1646  */
2176258945Sroberto    break;
2177258945Sroberto
2178258945Sroberto  case 36:
2179310419Sdelphij#line 466 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2180301301Sdelphij    { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
2181310419Sdelphij#line 2182 "ntp_parser.c" /* yacc.c:1646  */
2182258945Sroberto    break;
2183258945Sroberto
2184258945Sroberto  case 45:
2185310419Sdelphij#line 482 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2186301301Sdelphij    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2187310419Sdelphij#line 2188 "ntp_parser.c" /* yacc.c:1646  */
2188275970Scy    break;
2189258945Sroberto
2190275970Scy  case 46:
2191310419Sdelphij#line 484 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2192301301Sdelphij    { (yyval.Attr_val) = create_attr_uval((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2193310419Sdelphij#line 2194 "ntp_parser.c" /* yacc.c:1646  */
2194258945Sroberto    break;
2195258945Sroberto
2196275970Scy  case 53:
2197310419Sdelphij#line 498 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2198301301Sdelphij    { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2199310419Sdelphij#line 2200 "ntp_parser.c" /* yacc.c:1646  */
2200275970Scy    break;
2201258945Sroberto
2202275970Scy  case 55:
2203310419Sdelphij#line 512 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2204258945Sroberto    {
2205275970Scy			unpeer_node *my_node;
2206290000Sglebius
2207301301Sdelphij			my_node = create_unpeer_node((yyvsp[0].Address_node));
2208258945Sroberto			if (my_node)
2209275970Scy				APPEND_G_FIFO(cfgt.unpeers, my_node);
2210258945Sroberto		}
2211310419Sdelphij#line 2212 "ntp_parser.c" /* yacc.c:1646  */
2212258945Sroberto    break;
2213258945Sroberto
2214275970Scy  case 58:
2215310419Sdelphij#line 533 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2216258945Sroberto    { cfgt.broadcastclient = 1; }
2217310419Sdelphij#line 2218 "ntp_parser.c" /* yacc.c:1646  */
2218258945Sroberto    break;
2219258945Sroberto
2220258945Sroberto  case 59:
2221310419Sdelphij#line 535 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2222301301Sdelphij    { CONCAT_G_FIFOS(cfgt.manycastserver, (yyvsp[0].Address_fifo)); }
2223310419Sdelphij#line 2224 "ntp_parser.c" /* yacc.c:1646  */
2224258945Sroberto    break;
2225258945Sroberto
2226258945Sroberto  case 60:
2227310419Sdelphij#line 537 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2228301301Sdelphij    { CONCAT_G_FIFOS(cfgt.multicastclient, (yyvsp[0].Address_fifo)); }
2229310419Sdelphij#line 2230 "ntp_parser.c" /* yacc.c:1646  */
2230258945Sroberto    break;
2231258945Sroberto
2232258945Sroberto  case 61:
2233310419Sdelphij#line 539 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2234301301Sdelphij    { cfgt.mdnstries = (yyvsp[0].Integer); }
2235310419Sdelphij#line 2236 "ntp_parser.c" /* yacc.c:1646  */
2236278284Scy    break;
2237278284Scy
2238278284Scy  case 62:
2239310419Sdelphij#line 550 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2240275970Scy    {
2241275970Scy			attr_val *atrv;
2242290000Sglebius
2243301301Sdelphij			atrv = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
2244275970Scy			APPEND_G_FIFO(cfgt.vars, atrv);
2245275970Scy		}
2246310419Sdelphij#line 2247 "ntp_parser.c" /* yacc.c:1646  */
2247258945Sroberto    break;
2248258945Sroberto
2249278284Scy  case 63:
2250310419Sdelphij#line 557 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2251301301Sdelphij    { cfgt.auth.control_key = (yyvsp[0].Integer); }
2252310419Sdelphij#line 2253 "ntp_parser.c" /* yacc.c:1646  */
2253258945Sroberto    break;
2254258945Sroberto
2255278284Scy  case 64:
2256310419Sdelphij#line 559 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2257290000Sglebius    {
2258275970Scy			cfgt.auth.cryptosw++;
2259301301Sdelphij			CONCAT_G_FIFOS(cfgt.auth.crypto_cmd_list, (yyvsp[0].Attr_val_fifo));
2260275970Scy		}
2261310419Sdelphij#line 2262 "ntp_parser.c" /* yacc.c:1646  */
2262258945Sroberto    break;
2263258945Sroberto
2264278284Scy  case 65:
2265310419Sdelphij#line 564 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2266301301Sdelphij    { cfgt.auth.keys = (yyvsp[0].String); }
2267310419Sdelphij#line 2268 "ntp_parser.c" /* yacc.c:1646  */
2268258945Sroberto    break;
2269258945Sroberto
2270278284Scy  case 66:
2271310419Sdelphij#line 566 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2272301301Sdelphij    { cfgt.auth.keysdir = (yyvsp[0].String); }
2273310419Sdelphij#line 2274 "ntp_parser.c" /* yacc.c:1646  */
2274258945Sroberto    break;
2275258945Sroberto
2276278284Scy  case 67:
2277310419Sdelphij#line 568 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2278301301Sdelphij    { cfgt.auth.request_key = (yyvsp[0].Integer); }
2279310419Sdelphij#line 2280 "ntp_parser.c" /* yacc.c:1646  */
2280258945Sroberto    break;
2281258945Sroberto
2282278284Scy  case 68:
2283310419Sdelphij#line 570 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2284301301Sdelphij    { cfgt.auth.revoke = (yyvsp[0].Integer); }
2285310419Sdelphij#line 2286 "ntp_parser.c" /* yacc.c:1646  */
2286258945Sroberto    break;
2287258945Sroberto
2288278284Scy  case 69:
2289310419Sdelphij#line 572 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2290275970Scy    {
2291301301Sdelphij			cfgt.auth.trusted_key_list = (yyvsp[0].Attr_val_fifo);
2292258945Sroberto
2293275970Scy			// if (!cfgt.auth.trusted_key_list)
2294275970Scy			// 	cfgt.auth.trusted_key_list = $2;
2295275970Scy			// else
2296275970Scy			// 	LINK_SLIST(cfgt.auth.trusted_key_list, $2, link);
2297258945Sroberto		}
2298310419Sdelphij#line 2299 "ntp_parser.c" /* yacc.c:1646  */
2299258945Sroberto    break;
2300258945Sroberto
2301278284Scy  case 70:
2302310419Sdelphij#line 581 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2303301301Sdelphij    { cfgt.auth.ntp_signd_socket = (yyvsp[0].String); }
2304310419Sdelphij#line 2305 "ntp_parser.c" /* yacc.c:1646  */
2305258945Sroberto    break;
2306258945Sroberto
2307278284Scy  case 71:
2308310419Sdelphij#line 586 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2309275970Scy    { (yyval.Attr_val_fifo) = NULL; }
2310310419Sdelphij#line 2311 "ntp_parser.c" /* yacc.c:1646  */
2311275970Scy    break;
2312258945Sroberto
2313278284Scy  case 72:
2314310419Sdelphij#line 588 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2315258945Sroberto    {
2316301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2317301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2318275970Scy		}
2319310419Sdelphij#line 2320 "ntp_parser.c" /* yacc.c:1646  */
2320275970Scy    break;
2321275970Scy
2322278284Scy  case 73:
2323310419Sdelphij#line 596 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2324301301Sdelphij    { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2325310419Sdelphij#line 2326 "ntp_parser.c" /* yacc.c:1646  */
2326275970Scy    break;
2327275970Scy
2328278284Scy  case 74:
2329310419Sdelphij#line 598 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2330275970Scy    {
2331258945Sroberto			(yyval.Attr_val) = NULL;
2332301301Sdelphij			cfgt.auth.revoke = (yyvsp[0].Integer);
2333258945Sroberto			msyslog(LOG_WARNING,
2334258945Sroberto				"'crypto revoke %d' is deprecated, "
2335258945Sroberto				"please use 'revoke %d' instead.",
2336258945Sroberto				cfgt.auth.revoke, cfgt.auth.revoke);
2337258945Sroberto		}
2338310419Sdelphij#line 2339 "ntp_parser.c" /* yacc.c:1646  */
2339258945Sroberto    break;
2340258945Sroberto
2341278284Scy  case 80:
2342310419Sdelphij#line 623 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2343301301Sdelphij    { CONCAT_G_FIFOS(cfgt.orphan_cmds, (yyvsp[0].Attr_val_fifo)); }
2344310419Sdelphij#line 2345 "ntp_parser.c" /* yacc.c:1646  */
2345258945Sroberto    break;
2346258945Sroberto
2347278284Scy  case 81:
2348310419Sdelphij#line 628 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2349275970Scy    {
2350301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2351301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2352275970Scy		}
2353310419Sdelphij#line 2354 "ntp_parser.c" /* yacc.c:1646  */
2354258945Sroberto    break;
2355258945Sroberto
2356278284Scy  case 82:
2357310419Sdelphij#line 633 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2358290000Sglebius    {
2359275970Scy			(yyval.Attr_val_fifo) = NULL;
2360301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2361275970Scy		}
2362310419Sdelphij#line 2363 "ntp_parser.c" /* yacc.c:1646  */
2363258945Sroberto    break;
2364258945Sroberto
2365278284Scy  case 83:
2366310419Sdelphij#line 641 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2367301301Sdelphij    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); }
2368310419Sdelphij#line 2369 "ntp_parser.c" /* yacc.c:1646  */
2369275970Scy    break;
2370258945Sroberto
2371278284Scy  case 84:
2372310419Sdelphij#line 643 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2373301301Sdelphij    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
2374310419Sdelphij#line 2375 "ntp_parser.c" /* yacc.c:1646  */
2375258945Sroberto    break;
2376258945Sroberto
2377278284Scy  case 85:
2378310419Sdelphij#line 645 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2379301301Sdelphij    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); }
2380310419Sdelphij#line 2381 "ntp_parser.c" /* yacc.c:1646  */
2381275970Scy    break;
2382258945Sroberto
2383310419Sdelphij  case 97:
2384310419Sdelphij#line 672 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2385301301Sdelphij    { CONCAT_G_FIFOS(cfgt.stats_list, (yyvsp[0].Int_fifo)); }
2386310419Sdelphij#line 2387 "ntp_parser.c" /* yacc.c:1646  */
2387258945Sroberto    break;
2388258945Sroberto
2389310419Sdelphij  case 98:
2390310419Sdelphij#line 674 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2391258945Sroberto    {
2392290000Sglebius			if (lex_from_file()) {
2393301301Sdelphij				cfgt.stats_dir = (yyvsp[0].String);
2394258945Sroberto			} else {
2395301301Sdelphij				YYFREE((yyvsp[0].String));
2396290000Sglebius				yyerror("statsdir remote configuration ignored");
2397258945Sroberto			}
2398258945Sroberto		}
2399310419Sdelphij#line 2400 "ntp_parser.c" /* yacc.c:1646  */
2400258945Sroberto    break;
2401258945Sroberto
2402310419Sdelphij  case 99:
2403310419Sdelphij#line 683 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2404258945Sroberto    {
2405275970Scy			filegen_node *fgn;
2406290000Sglebius
2407301301Sdelphij			fgn = create_filegen_node((yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo));
2408275970Scy			APPEND_G_FIFO(cfgt.filegen_opts, fgn);
2409258945Sroberto		}
2410310419Sdelphij#line 2411 "ntp_parser.c" /* yacc.c:1646  */
2411258945Sroberto    break;
2412258945Sroberto
2413310419Sdelphij  case 100:
2414310419Sdelphij#line 693 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2415275970Scy    {
2416301301Sdelphij			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
2417301301Sdelphij			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
2418275970Scy		}
2419310419Sdelphij#line 2420 "ntp_parser.c" /* yacc.c:1646  */
2420258945Sroberto    break;
2421258945Sroberto
2422310419Sdelphij  case 101:
2423310419Sdelphij#line 698 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2424275970Scy    {
2425275970Scy			(yyval.Int_fifo) = NULL;
2426301301Sdelphij			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
2427275970Scy		}
2428310419Sdelphij#line 2429 "ntp_parser.c" /* yacc.c:1646  */
2429258945Sroberto    break;
2430258945Sroberto
2431310419Sdelphij  case 110:
2432310419Sdelphij#line 717 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2433275970Scy    { (yyval.Attr_val_fifo) = NULL; }
2434310419Sdelphij#line 2435 "ntp_parser.c" /* yacc.c:1646  */
2435258945Sroberto    break;
2436258945Sroberto
2437310419Sdelphij  case 111:
2438310419Sdelphij#line 719 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2439258945Sroberto    {
2440301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2441301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2442258945Sroberto		}
2443310419Sdelphij#line 2444 "ntp_parser.c" /* yacc.c:1646  */
2444258945Sroberto    break;
2445258945Sroberto
2446310419Sdelphij  case 112:
2447310419Sdelphij#line 727 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2448258945Sroberto    {
2449290000Sglebius			if (lex_from_file()) {
2450301301Sdelphij				(yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
2451258945Sroberto			} else {
2452258945Sroberto				(yyval.Attr_val) = NULL;
2453301301Sdelphij				YYFREE((yyvsp[0].String));
2454290000Sglebius				yyerror("filegen file remote config ignored");
2455258945Sroberto			}
2456258945Sroberto		}
2457310419Sdelphij#line 2458 "ntp_parser.c" /* yacc.c:1646  */
2458258945Sroberto    break;
2459258945Sroberto
2460310419Sdelphij  case 113:
2461310419Sdelphij#line 737 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2462258945Sroberto    {
2463290000Sglebius			if (lex_from_file()) {
2464301301Sdelphij				(yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
2465258945Sroberto			} else {
2466258945Sroberto				(yyval.Attr_val) = NULL;
2467290000Sglebius				yyerror("filegen type remote config ignored");
2468258945Sroberto			}
2469258945Sroberto		}
2470310419Sdelphij#line 2471 "ntp_parser.c" /* yacc.c:1646  */
2471258945Sroberto    break;
2472258945Sroberto
2473310419Sdelphij  case 114:
2474310419Sdelphij#line 746 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2475258945Sroberto    {
2476258945Sroberto			const char *err;
2477290000Sglebius
2478290000Sglebius			if (lex_from_file()) {
2479301301Sdelphij				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer));
2480258945Sroberto			} else {
2481258945Sroberto				(yyval.Attr_val) = NULL;
2482301301Sdelphij				if (T_Link == (yyvsp[0].Integer))
2483258945Sroberto					err = "filegen link remote config ignored";
2484258945Sroberto				else
2485258945Sroberto					err = "filegen nolink remote config ignored";
2486290000Sglebius				yyerror(err);
2487258945Sroberto			}
2488258945Sroberto		}
2489310419Sdelphij#line 2490 "ntp_parser.c" /* yacc.c:1646  */
2490258945Sroberto    break;
2491258945Sroberto
2492310419Sdelphij  case 115:
2493310419Sdelphij#line 761 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2494301301Sdelphij    { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
2495310419Sdelphij#line 2496 "ntp_parser.c" /* yacc.c:1646  */
2496275970Scy    break;
2497258945Sroberto
2498310419Sdelphij  case 127:
2499310419Sdelphij#line 791 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2500275970Scy    {
2501301301Sdelphij			CONCAT_G_FIFOS(cfgt.discard_opts, (yyvsp[0].Attr_val_fifo));
2502275970Scy		}
2503310419Sdelphij#line 2504 "ntp_parser.c" /* yacc.c:1646  */
2504258945Sroberto    break;
2505258945Sroberto
2506310419Sdelphij  case 128:
2507310419Sdelphij#line 795 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2508258945Sroberto    {
2509301301Sdelphij			CONCAT_G_FIFOS(cfgt.mru_opts, (yyvsp[0].Attr_val_fifo));
2510258945Sroberto		}
2511310419Sdelphij#line 2512 "ntp_parser.c" /* yacc.c:1646  */
2512258945Sroberto    break;
2513258945Sroberto
2514310419Sdelphij  case 129:
2515310419Sdelphij#line 799 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2516275970Scy    {
2517275970Scy			restrict_node *rn;
2518258945Sroberto
2519301301Sdelphij			rn = create_restrict_node((yyvsp[-1].Address_node), NULL, (yyvsp[0].Int_fifo),
2520290000Sglebius						  lex_current()->curpos.nline);
2521275970Scy			APPEND_G_FIFO(cfgt.restrict_opts, rn);
2522258945Sroberto		}
2523310419Sdelphij#line 2524 "ntp_parser.c" /* yacc.c:1646  */
2524258945Sroberto    break;
2525258945Sroberto
2526310419Sdelphij  case 130:
2527310419Sdelphij#line 807 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2528275970Scy    {
2529275970Scy			restrict_node *rn;
2530258945Sroberto
2531301301Sdelphij			rn = create_restrict_node((yyvsp[-3].Address_node), (yyvsp[-1].Address_node), (yyvsp[0].Int_fifo),
2532290000Sglebius						  lex_current()->curpos.nline);
2533275970Scy			APPEND_G_FIFO(cfgt.restrict_opts, rn);
2534258945Sroberto		}
2535310419Sdelphij#line 2536 "ntp_parser.c" /* yacc.c:1646  */
2536258945Sroberto    break;
2537258945Sroberto
2538310419Sdelphij  case 131:
2539310419Sdelphij#line 815 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2540275970Scy    {
2541275970Scy			restrict_node *rn;
2542258945Sroberto
2543301301Sdelphij			rn = create_restrict_node(NULL, NULL, (yyvsp[0].Int_fifo),
2544290000Sglebius						  lex_current()->curpos.nline);
2545275970Scy			APPEND_G_FIFO(cfgt.restrict_opts, rn);
2546258945Sroberto		}
2547310419Sdelphij#line 2548 "ntp_parser.c" /* yacc.c:1646  */
2548258945Sroberto    break;
2549258945Sroberto
2550310419Sdelphij  case 132:
2551310419Sdelphij#line 823 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2552275970Scy    {
2553275970Scy			restrict_node *rn;
2554258945Sroberto
2555275970Scy			rn = create_restrict_node(
2556275970Scy				create_address_node(
2557290000Sglebius					estrdup("0.0.0.0"),
2558275970Scy					AF_INET),
2559275970Scy				create_address_node(
2560290000Sglebius					estrdup("0.0.0.0"),
2561275970Scy					AF_INET),
2562301301Sdelphij				(yyvsp[0].Int_fifo),
2563290000Sglebius				lex_current()->curpos.nline);
2564275970Scy			APPEND_G_FIFO(cfgt.restrict_opts, rn);
2565258945Sroberto		}
2566310419Sdelphij#line 2567 "ntp_parser.c" /* yacc.c:1646  */
2567258945Sroberto    break;
2568258945Sroberto
2569310419Sdelphij  case 133:
2570310419Sdelphij#line 838 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2571258945Sroberto    {
2572275970Scy			restrict_node *rn;
2573290000Sglebius
2574275970Scy			rn = create_restrict_node(
2575275970Scy				create_address_node(
2576290000Sglebius					estrdup("::"),
2577275970Scy					AF_INET6),
2578275970Scy				create_address_node(
2579290000Sglebius					estrdup("::"),
2580275970Scy					AF_INET6),
2581301301Sdelphij				(yyvsp[0].Int_fifo),
2582290000Sglebius				lex_current()->curpos.nline);
2583275970Scy			APPEND_G_FIFO(cfgt.restrict_opts, rn);
2584258945Sroberto		}
2585310419Sdelphij#line 2586 "ntp_parser.c" /* yacc.c:1646  */
2586258945Sroberto    break;
2587258945Sroberto
2588310419Sdelphij  case 134:
2589310419Sdelphij#line 853 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2590275970Scy    {
2591275970Scy			restrict_node *	rn;
2592258945Sroberto
2593301301Sdelphij			APPEND_G_FIFO((yyvsp[0].Int_fifo), create_int_node((yyvsp[-1].Integer)));
2594275970Scy			rn = create_restrict_node(
2595301301Sdelphij				NULL, NULL, (yyvsp[0].Int_fifo), lex_current()->curpos.nline);
2596275970Scy			APPEND_G_FIFO(cfgt.restrict_opts, rn);
2597275970Scy		}
2598310419Sdelphij#line 2599 "ntp_parser.c" /* yacc.c:1646  */
2599258945Sroberto    break;
2600258945Sroberto
2601310419Sdelphij  case 135:
2602310419Sdelphij#line 865 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2603275970Scy    { (yyval.Int_fifo) = NULL; }
2604310419Sdelphij#line 2605 "ntp_parser.c" /* yacc.c:1646  */
2605275970Scy    break;
2606258945Sroberto
2607310419Sdelphij  case 136:
2608310419Sdelphij#line 867 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2609275970Scy    {
2610301301Sdelphij			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
2611301301Sdelphij			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
2612275970Scy		}
2613310419Sdelphij#line 2614 "ntp_parser.c" /* yacc.c:1646  */
2614258945Sroberto    break;
2615258945Sroberto
2616310419Sdelphij  case 152:
2617310419Sdelphij#line 893 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2618275970Scy    {
2619301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2620301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2621275970Scy		}
2622310419Sdelphij#line 2623 "ntp_parser.c" /* yacc.c:1646  */
2623275970Scy    break;
2624258945Sroberto
2625310419Sdelphij  case 153:
2626310419Sdelphij#line 898 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2627275970Scy    {
2628275970Scy			(yyval.Attr_val_fifo) = NULL;
2629301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2630275970Scy		}
2631310419Sdelphij#line 2632 "ntp_parser.c" /* yacc.c:1646  */
2632258945Sroberto    break;
2633258945Sroberto
2634310419Sdelphij  case 154:
2635310419Sdelphij#line 906 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2636301301Sdelphij    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2637310419Sdelphij#line 2638 "ntp_parser.c" /* yacc.c:1646  */
2638275970Scy    break;
2639258945Sroberto
2640310419Sdelphij  case 158:
2641310419Sdelphij#line 917 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2642275970Scy    {
2643301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2644301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2645275970Scy		}
2646310419Sdelphij#line 2647 "ntp_parser.c" /* yacc.c:1646  */
2647258945Sroberto    break;
2648258945Sroberto
2649310419Sdelphij  case 159:
2650310419Sdelphij#line 922 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2651275970Scy    {
2652275970Scy			(yyval.Attr_val_fifo) = NULL;
2653301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2654275970Scy		}
2655310419Sdelphij#line 2656 "ntp_parser.c" /* yacc.c:1646  */
2656275970Scy    break;
2657258945Sroberto
2658310419Sdelphij  case 160:
2659310419Sdelphij#line 930 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2660301301Sdelphij    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2661310419Sdelphij#line 2662 "ntp_parser.c" /* yacc.c:1646  */
2662258945Sroberto    break;
2663258945Sroberto
2664310419Sdelphij  case 169:
2665310419Sdelphij#line 950 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2666275970Scy    {
2667275970Scy			addr_opts_node *aon;
2668290000Sglebius
2669301301Sdelphij			aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
2670275970Scy			APPEND_G_FIFO(cfgt.fudge, aon);
2671275970Scy		}
2672310419Sdelphij#line 2673 "ntp_parser.c" /* yacc.c:1646  */
2673275970Scy    break;
2674258945Sroberto
2675310419Sdelphij  case 170:
2676310419Sdelphij#line 960 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2677275970Scy    {
2678301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2679301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2680275970Scy		}
2681310419Sdelphij#line 2682 "ntp_parser.c" /* yacc.c:1646  */
2682258945Sroberto    break;
2683258945Sroberto
2684310419Sdelphij  case 171:
2685310419Sdelphij#line 965 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2686275970Scy    {
2687275970Scy			(yyval.Attr_val_fifo) = NULL;
2688301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2689275970Scy		}
2690310419Sdelphij#line 2691 "ntp_parser.c" /* yacc.c:1646  */
2691275970Scy    break;
2692258945Sroberto
2693310419Sdelphij  case 172:
2694310419Sdelphij#line 973 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2695301301Sdelphij    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
2696310419Sdelphij#line 2697 "ntp_parser.c" /* yacc.c:1646  */
2697258945Sroberto    break;
2698258945Sroberto
2699310419Sdelphij  case 173:
2700310419Sdelphij#line 975 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2701301301Sdelphij    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2702310419Sdelphij#line 2703 "ntp_parser.c" /* yacc.c:1646  */
2703275970Scy    break;
2704258945Sroberto
2705310419Sdelphij  case 174:
2706310419Sdelphij#line 977 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2707293894Sglebius    {
2708301301Sdelphij			if ((yyvsp[0].Integer) >= 0 && (yyvsp[0].Integer) <= 16) {
2709301301Sdelphij				(yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
2710293894Sglebius			} else {
2711293894Sglebius				(yyval.Attr_val) = NULL;
2712293894Sglebius				yyerror("fudge factor: stratum value not in [0..16], ignored");
2713293894Sglebius			}
2714293894Sglebius		}
2715310419Sdelphij#line 2716 "ntp_parser.c" /* yacc.c:1646  */
2716258945Sroberto    break;
2717258945Sroberto
2718310419Sdelphij  case 175:
2719310419Sdelphij#line 986 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2720301301Sdelphij    { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2721310419Sdelphij#line 2722 "ntp_parser.c" /* yacc.c:1646  */
2722275970Scy    break;
2723258945Sroberto
2724310419Sdelphij  case 176:
2725310419Sdelphij#line 988 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2726301301Sdelphij    { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2727310419Sdelphij#line 2728 "ntp_parser.c" /* yacc.c:1646  */
2728258945Sroberto    break;
2729258945Sroberto
2730310419Sdelphij  case 183:
2731310419Sdelphij#line 1009 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2732301301Sdelphij    { CONCAT_G_FIFOS(cfgt.rlimit, (yyvsp[0].Attr_val_fifo)); }
2733310419Sdelphij#line 2734 "ntp_parser.c" /* yacc.c:1646  */
2734275970Scy    break;
2735258945Sroberto
2736310419Sdelphij  case 184:
2737310419Sdelphij#line 1014 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2738275970Scy    {
2739301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2740301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2741275970Scy		}
2742310419Sdelphij#line 2743 "ntp_parser.c" /* yacc.c:1646  */
2743258945Sroberto    break;
2744258945Sroberto
2745310419Sdelphij  case 185:
2746310419Sdelphij#line 1019 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2747275970Scy    {
2748275970Scy			(yyval.Attr_val_fifo) = NULL;
2749301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2750275970Scy		}
2751310419Sdelphij#line 2752 "ntp_parser.c" /* yacc.c:1646  */
2752258945Sroberto    break;
2753258945Sroberto
2754310419Sdelphij  case 186:
2755310419Sdelphij#line 1027 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2756301301Sdelphij    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2757310419Sdelphij#line 2758 "ntp_parser.c" /* yacc.c:1646  */
2758258945Sroberto    break;
2759258945Sroberto
2760310419Sdelphij  case 190:
2761310419Sdelphij#line 1043 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2762301301Sdelphij    { CONCAT_G_FIFOS(cfgt.enable_opts, (yyvsp[0].Attr_val_fifo)); }
2763310419Sdelphij#line 2764 "ntp_parser.c" /* yacc.c:1646  */
2764258945Sroberto    break;
2765258945Sroberto
2766310419Sdelphij  case 191:
2767310419Sdelphij#line 1045 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2768301301Sdelphij    { CONCAT_G_FIFOS(cfgt.disable_opts, (yyvsp[0].Attr_val_fifo)); }
2769310419Sdelphij#line 2770 "ntp_parser.c" /* yacc.c:1646  */
2770258945Sroberto    break;
2771258945Sroberto
2772310419Sdelphij  case 192:
2773310419Sdelphij#line 1050 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2774258945Sroberto    {
2775301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2776301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2777258945Sroberto		}
2778310419Sdelphij#line 2779 "ntp_parser.c" /* yacc.c:1646  */
2779258945Sroberto    break;
2780258945Sroberto
2781310419Sdelphij  case 193:
2782310419Sdelphij#line 1055 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2783258945Sroberto    {
2784275970Scy			(yyval.Attr_val_fifo) = NULL;
2785301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2786258945Sroberto		}
2787310419Sdelphij#line 2788 "ntp_parser.c" /* yacc.c:1646  */
2788258945Sroberto    break;
2789258945Sroberto
2790310419Sdelphij  case 194:
2791310419Sdelphij#line 1063 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2792301301Sdelphij    { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
2793310419Sdelphij#line 2794 "ntp_parser.c" /* yacc.c:1646  */
2794258945Sroberto    break;
2795258945Sroberto
2796310419Sdelphij  case 195:
2797310419Sdelphij#line 1065 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2798290000Sglebius    {
2799290000Sglebius			if (lex_from_file()) {
2800301301Sdelphij				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer));
2801258945Sroberto			} else {
2802275970Scy				char err_str[128];
2803290000Sglebius
2804258945Sroberto				(yyval.Attr_val) = NULL;
2805275970Scy				snprintf(err_str, sizeof(err_str),
2806275970Scy					 "enable/disable %s remote configuration ignored",
2807301301Sdelphij					 keyword((yyvsp[0].Integer)));
2808290000Sglebius				yyerror(err_str);
2809258945Sroberto			}
2810258945Sroberto		}
2811310419Sdelphij#line 2812 "ntp_parser.c" /* yacc.c:1646  */
2812258945Sroberto    break;
2813258945Sroberto
2814310419Sdelphij  case 208:
2815310419Sdelphij#line 1104 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2816301301Sdelphij    { CONCAT_G_FIFOS(cfgt.tinker, (yyvsp[0].Attr_val_fifo)); }
2817310419Sdelphij#line 2818 "ntp_parser.c" /* yacc.c:1646  */
2818258945Sroberto    break;
2819258945Sroberto
2820310419Sdelphij  case 209:
2821310419Sdelphij#line 1109 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2822275970Scy    {
2823301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2824301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2825275970Scy		}
2826310419Sdelphij#line 2827 "ntp_parser.c" /* yacc.c:1646  */
2827258945Sroberto    break;
2828258945Sroberto
2829310419Sdelphij  case 210:
2830310419Sdelphij#line 1114 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2831275970Scy    {
2832275970Scy			(yyval.Attr_val_fifo) = NULL;
2833301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2834275970Scy		}
2835310419Sdelphij#line 2836 "ntp_parser.c" /* yacc.c:1646  */
2836258945Sroberto    break;
2837258945Sroberto
2838310419Sdelphij  case 211:
2839310419Sdelphij#line 1122 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2840301301Sdelphij    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
2841310419Sdelphij#line 2842 "ntp_parser.c" /* yacc.c:1646  */
2842258945Sroberto    break;
2843258945Sroberto
2844310419Sdelphij  case 224:
2845310419Sdelphij#line 1147 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2846258945Sroberto    {
2847275970Scy			attr_val *av;
2848290000Sglebius
2849301301Sdelphij			av = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double));
2850275970Scy			APPEND_G_FIFO(cfgt.vars, av);
2851258945Sroberto		}
2852310419Sdelphij#line 2853 "ntp_parser.c" /* yacc.c:1646  */
2853258945Sroberto    break;
2854258945Sroberto
2855310419Sdelphij  case 225:
2856310419Sdelphij#line 1154 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2857258945Sroberto    {
2858275970Scy			attr_val *av;
2859290000Sglebius
2860301301Sdelphij			av = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
2861290000Sglebius			APPEND_G_FIFO(cfgt.vars, av);
2862290000Sglebius		}
2863310419Sdelphij#line 2864 "ntp_parser.c" /* yacc.c:1646  */
2864290000Sglebius    break;
2865290000Sglebius
2866310419Sdelphij  case 226:
2867310419Sdelphij#line 1161 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2868290000Sglebius    {
2869290000Sglebius			attr_val *av;
2870290000Sglebius
2871301301Sdelphij			av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
2872275970Scy			APPEND_G_FIFO(cfgt.vars, av);
2873258945Sroberto		}
2874310419Sdelphij#line 2875 "ntp_parser.c" /* yacc.c:1646  */
2875258945Sroberto    break;
2876258945Sroberto
2877310419Sdelphij  case 227:
2878310419Sdelphij#line 1168 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2879258945Sroberto    {
2880258945Sroberto			char error_text[64];
2881275970Scy			attr_val *av;
2882258945Sroberto
2883290000Sglebius			if (lex_from_file()) {
2884301301Sdelphij				av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
2885275970Scy				APPEND_G_FIFO(cfgt.vars, av);
2886258945Sroberto			} else {
2887301301Sdelphij				YYFREE((yyvsp[0].String));
2888258945Sroberto				snprintf(error_text, sizeof(error_text),
2889258945Sroberto					 "%s remote config ignored",
2890301301Sdelphij					 keyword((yyvsp[-1].Integer)));
2891290000Sglebius				yyerror(error_text);
2892258945Sroberto			}
2893258945Sroberto		}
2894310419Sdelphij#line 2895 "ntp_parser.c" /* yacc.c:1646  */
2895258945Sroberto    break;
2896258945Sroberto
2897310419Sdelphij  case 228:
2898310419Sdelphij#line 1184 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2899258945Sroberto    {
2900290000Sglebius			if (!lex_from_file()) {
2901301301Sdelphij				YYFREE((yyvsp[-1].String)); /* avoid leak */
2902290000Sglebius				yyerror("remote includefile ignored");
2903258945Sroberto				break;
2904258945Sroberto			}
2905290000Sglebius			if (lex_level() > MAXINCLUDELEVEL) {
2906258945Sroberto				fprintf(stderr, "getconfig: Maximum include file level exceeded.\n");
2907275970Scy				msyslog(LOG_ERR, "getconfig: Maximum include file level exceeded.");
2908258945Sroberto			} else {
2909301301Sdelphij				const char * path = FindConfig((yyvsp[-1].String)); /* might return $2! */
2910290000Sglebius				if (!lex_push_file(path, "r")) {
2911290000Sglebius					fprintf(stderr, "getconfig: Couldn't open <%s>\n", path);
2912290000Sglebius					msyslog(LOG_ERR, "getconfig: Couldn't open <%s>", path);
2913258945Sroberto				}
2914258945Sroberto			}
2915301301Sdelphij			YYFREE((yyvsp[-1].String)); /* avoid leak */
2916258945Sroberto		}
2917310419Sdelphij#line 2918 "ntp_parser.c" /* yacc.c:1646  */
2918258945Sroberto    break;
2919258945Sroberto
2920301301Sdelphij  case 229:
2921301301Sdelphij#line 1203 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2922310419Sdelphij    { lex_flush_stack(); }
2923310419Sdelphij#line 2924 "ntp_parser.c" /* yacc.c:1646  */
2924258945Sroberto    break;
2925258945Sroberto
2926294904Sdelphij  case 230:
2927301301Sdelphij#line 1205 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2928310419Sdelphij    { /* see drift_parm below for actions */ }
2929310419Sdelphij#line 2930 "ntp_parser.c" /* yacc.c:1646  */
2930258945Sroberto    break;
2931258945Sroberto
2932294904Sdelphij  case 231:
2933301301Sdelphij#line 1207 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2934310419Sdelphij    { CONCAT_G_FIFOS(cfgt.logconfig, (yyvsp[0].Attr_val_fifo)); }
2935310419Sdelphij#line 2936 "ntp_parser.c" /* yacc.c:1646  */
2936258945Sroberto    break;
2937258945Sroberto
2938294904Sdelphij  case 232:
2939301301Sdelphij#line 1209 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2940310419Sdelphij    { CONCAT_G_FIFOS(cfgt.phone, (yyvsp[0].String_fifo)); }
2941310419Sdelphij#line 2942 "ntp_parser.c" /* yacc.c:1646  */
2942301301Sdelphij    break;
2943301301Sdelphij
2944301301Sdelphij  case 233:
2945301301Sdelphij#line 1211 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2946310419Sdelphij    { APPEND_G_FIFO(cfgt.setvar, (yyvsp[0].Set_var)); }
2947310419Sdelphij#line 2948 "ntp_parser.c" /* yacc.c:1646  */
2948310419Sdelphij    break;
2949310419Sdelphij
2950310419Sdelphij  case 234:
2951310419Sdelphij#line 1213 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2952275970Scy    {
2953275970Scy			addr_opts_node *aon;
2954290000Sglebius
2955301301Sdelphij			aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
2956275970Scy			APPEND_G_FIFO(cfgt.trap, aon);
2957275970Scy		}
2958310419Sdelphij#line 2959 "ntp_parser.c" /* yacc.c:1646  */
2959258945Sroberto    break;
2960258945Sroberto
2961310419Sdelphij  case 235:
2962310419Sdelphij#line 1220 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2963301301Sdelphij    { CONCAT_G_FIFOS(cfgt.ttl, (yyvsp[0].Attr_val_fifo)); }
2964310419Sdelphij#line 2965 "ntp_parser.c" /* yacc.c:1646  */
2965258945Sroberto    break;
2966258945Sroberto
2967310419Sdelphij  case 240:
2968310419Sdelphij#line 1235 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2969275970Scy    {
2970290000Sglebius#ifndef LEAP_SMEAR
2971290000Sglebius			yyerror("Built without LEAP_SMEAR support.");
2972290000Sglebius#endif
2973275970Scy		}
2974310419Sdelphij#line 2975 "ntp_parser.c" /* yacc.c:1646  */
2975258945Sroberto    break;
2976258945Sroberto
2977310419Sdelphij  case 246:
2978310419Sdelphij#line 1255 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2979275970Scy    {
2980290000Sglebius			if (lex_from_file()) {
2981290000Sglebius				attr_val *av;
2982301301Sdelphij				av = create_attr_sval(T_Driftfile, (yyvsp[0].String));
2983290000Sglebius				APPEND_G_FIFO(cfgt.vars, av);
2984290000Sglebius			} else {
2985301301Sdelphij				YYFREE((yyvsp[0].String));
2986290000Sglebius				yyerror("driftfile remote configuration ignored");
2987290000Sglebius			}
2988275970Scy		}
2989310419Sdelphij#line 2990 "ntp_parser.c" /* yacc.c:1646  */
2990258945Sroberto    break;
2991258945Sroberto
2992310419Sdelphij  case 247:
2993310419Sdelphij#line 1266 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2994275970Scy    {
2995290000Sglebius			if (lex_from_file()) {
2996290000Sglebius				attr_val *av;
2997301301Sdelphij				av = create_attr_sval(T_Driftfile, (yyvsp[-1].String));
2998290000Sglebius				APPEND_G_FIFO(cfgt.vars, av);
2999301301Sdelphij				av = create_attr_dval(T_WanderThreshold, (yyvsp[0].Double));
3000290000Sglebius				APPEND_G_FIFO(cfgt.vars, av);
3001290000Sglebius			} else {
3002301301Sdelphij				YYFREE((yyvsp[-1].String));
3003290000Sglebius				yyerror("driftfile remote configuration ignored");
3004290000Sglebius			}
3005275970Scy		}
3006310419Sdelphij#line 3007 "ntp_parser.c" /* yacc.c:1646  */
3007258945Sroberto    break;
3008258945Sroberto
3009310419Sdelphij  case 248:
3010310419Sdelphij#line 1279 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3011290000Sglebius    {
3012290000Sglebius			if (lex_from_file()) {
3013290000Sglebius				attr_val *av;
3014290000Sglebius				av = create_attr_sval(T_Driftfile, estrdup(""));
3015290000Sglebius				APPEND_G_FIFO(cfgt.vars, av);
3016290000Sglebius			} else {
3017290000Sglebius				yyerror("driftfile remote configuration ignored");
3018290000Sglebius			}
3019290000Sglebius		}
3020310419Sdelphij#line 3021 "ntp_parser.c" /* yacc.c:1646  */
3021290000Sglebius    break;
3022290000Sglebius
3023310419Sdelphij  case 249:
3024310419Sdelphij#line 1292 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3025301301Sdelphij    { (yyval.Set_var) = create_setvar_node((yyvsp[-3].String), (yyvsp[-1].String), (yyvsp[0].Integer)); }
3026310419Sdelphij#line 3027 "ntp_parser.c" /* yacc.c:1646  */
3027258945Sroberto    break;
3028258945Sroberto
3029310419Sdelphij  case 251:
3030310419Sdelphij#line 1298 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3031275970Scy    { (yyval.Integer) = 0; }
3032310419Sdelphij#line 3033 "ntp_parser.c" /* yacc.c:1646  */
3033258945Sroberto    break;
3034258945Sroberto
3035310419Sdelphij  case 252:
3036310419Sdelphij#line 1303 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3037275970Scy    { (yyval.Attr_val_fifo) = NULL; }
3038310419Sdelphij#line 3039 "ntp_parser.c" /* yacc.c:1646  */
3039258945Sroberto    break;
3040258945Sroberto
3041310419Sdelphij  case 253:
3042310419Sdelphij#line 1305 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3043275970Scy    {
3044301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3045301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3046275970Scy		}
3047310419Sdelphij#line 3048 "ntp_parser.c" /* yacc.c:1646  */
3048258945Sroberto    break;
3049258945Sroberto
3050310419Sdelphij  case 254:
3051310419Sdelphij#line 1313 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3052301301Sdelphij    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
3053310419Sdelphij#line 3054 "ntp_parser.c" /* yacc.c:1646  */
3054258945Sroberto    break;
3055258945Sroberto
3056310419Sdelphij  case 255:
3057310419Sdelphij#line 1315 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3058275970Scy    {
3059301301Sdelphij			(yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), estrdup((yyvsp[0].Address_node)->address));
3060301301Sdelphij			destroy_address_node((yyvsp[0].Address_node));
3061275970Scy		}
3062310419Sdelphij#line 3063 "ntp_parser.c" /* yacc.c:1646  */
3063258945Sroberto    break;
3064258945Sroberto
3065310419Sdelphij  case 256:
3066310419Sdelphij#line 1323 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3067275970Scy    {
3068301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3069301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3070275970Scy		}
3071310419Sdelphij#line 3072 "ntp_parser.c" /* yacc.c:1646  */
3072258945Sroberto    break;
3073258945Sroberto
3074310419Sdelphij  case 257:
3075310419Sdelphij#line 1328 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3076275970Scy    {
3077275970Scy			(yyval.Attr_val_fifo) = NULL;
3078301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3079275970Scy		}
3080310419Sdelphij#line 3081 "ntp_parser.c" /* yacc.c:1646  */
3081258945Sroberto    break;
3082258945Sroberto
3083310419Sdelphij  case 258:
3084310419Sdelphij#line 1336 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3085275970Scy    {
3086275970Scy			char	prefix;
3087275970Scy			char *	type;
3088290000Sglebius
3089301301Sdelphij			switch ((yyvsp[0].String)[0]) {
3090290000Sglebius
3091275970Scy			case '+':
3092275970Scy			case '-':
3093275970Scy			case '=':
3094301301Sdelphij				prefix = (yyvsp[0].String)[0];
3095301301Sdelphij				type = (yyvsp[0].String) + 1;
3096275970Scy				break;
3097290000Sglebius
3098275970Scy			default:
3099275970Scy				prefix = '=';
3100301301Sdelphij				type = (yyvsp[0].String);
3101290000Sglebius			}
3102290000Sglebius
3103275970Scy			(yyval.Attr_val) = create_attr_sval(prefix, estrdup(type));
3104301301Sdelphij			YYFREE((yyvsp[0].String));
3105275970Scy		}
3106310419Sdelphij#line 3107 "ntp_parser.c" /* yacc.c:1646  */
3107258945Sroberto    break;
3108258945Sroberto
3109310419Sdelphij  case 259:
3110310419Sdelphij#line 1361 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3111275970Scy    {
3112275970Scy			nic_rule_node *nrn;
3113290000Sglebius
3114301301Sdelphij			nrn = create_nic_rule_node((yyvsp[0].Integer), NULL, (yyvsp[-1].Integer));
3115275970Scy			APPEND_G_FIFO(cfgt.nic_rules, nrn);
3116275970Scy		}
3117310419Sdelphij#line 3118 "ntp_parser.c" /* yacc.c:1646  */
3118258945Sroberto    break;
3119258945Sroberto
3120310419Sdelphij  case 260:
3121310419Sdelphij#line 1368 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3122258945Sroberto    {
3123275970Scy			nic_rule_node *nrn;
3124290000Sglebius
3125301301Sdelphij			nrn = create_nic_rule_node(0, (yyvsp[0].String), (yyvsp[-1].Integer));
3126275970Scy			APPEND_G_FIFO(cfgt.nic_rules, nrn);
3127258945Sroberto		}
3128310419Sdelphij#line 3129 "ntp_parser.c" /* yacc.c:1646  */
3129258945Sroberto    break;
3130258945Sroberto
3131310419Sdelphij  case 270:
3132310419Sdelphij#line 1396 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3133301301Sdelphij    { CONCAT_G_FIFOS(cfgt.reset_counters, (yyvsp[0].Int_fifo)); }
3134310419Sdelphij#line 3135 "ntp_parser.c" /* yacc.c:1646  */
3135258945Sroberto    break;
3136258945Sroberto
3137310419Sdelphij  case 271:
3138310419Sdelphij#line 1401 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3139258945Sroberto    {
3140301301Sdelphij			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
3141301301Sdelphij			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
3142258945Sroberto		}
3143310419Sdelphij#line 3144 "ntp_parser.c" /* yacc.c:1646  */
3144258945Sroberto    break;
3145258945Sroberto
3146310419Sdelphij  case 272:
3147310419Sdelphij#line 1406 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3148275970Scy    {
3149301301Sdelphij			(yyval.Int_fifo) = NULL;
3150301301Sdelphij			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
3151275970Scy		}
3152310419Sdelphij#line 3153 "ntp_parser.c" /* yacc.c:1646  */
3153258945Sroberto    break;
3154258945Sroberto
3155310419Sdelphij  case 280:
3156310419Sdelphij#line 1430 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3157275970Scy    {
3158301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3159301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer)));
3160275970Scy		}
3161310419Sdelphij#line 3162 "ntp_parser.c" /* yacc.c:1646  */
3162258945Sroberto    break;
3163258945Sroberto
3164310419Sdelphij  case 281:
3165310419Sdelphij#line 1435 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3166275970Scy    {
3167301301Sdelphij			(yyval.Attr_val_fifo) = NULL;
3168301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer)));
3169275970Scy		}
3170310419Sdelphij#line 3171 "ntp_parser.c" /* yacc.c:1646  */
3171258945Sroberto    break;
3172258945Sroberto
3173310419Sdelphij  case 282:
3174310419Sdelphij#line 1443 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3175275970Scy    {
3176301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3177301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3178275970Scy		}
3179310419Sdelphij#line 3180 "ntp_parser.c" /* yacc.c:1646  */
3180258945Sroberto    break;
3181258945Sroberto
3182310419Sdelphij  case 283:
3183310419Sdelphij#line 1448 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3184301301Sdelphij    {
3185301301Sdelphij			(yyval.Attr_val_fifo) = NULL;
3186301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3187301301Sdelphij		}
3188310419Sdelphij#line 3189 "ntp_parser.c" /* yacc.c:1646  */
3189258945Sroberto    break;
3190258945Sroberto
3191310419Sdelphij  case 284:
3192310419Sdelphij#line 1456 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3193301301Sdelphij    { (yyval.Attr_val) = create_attr_ival('i', (yyvsp[0].Integer)); }
3194310419Sdelphij#line 3195 "ntp_parser.c" /* yacc.c:1646  */
3195258945Sroberto    break;
3196258945Sroberto
3197310419Sdelphij  case 286:
3198310419Sdelphij#line 1462 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3199301301Sdelphij    { (yyval.Attr_val) = create_attr_rangeval('-', (yyvsp[-3].Integer), (yyvsp[-1].Integer)); }
3200310419Sdelphij#line 3201 "ntp_parser.c" /* yacc.c:1646  */
3201258945Sroberto    break;
3202258945Sroberto
3203310419Sdelphij  case 287:
3204310419Sdelphij#line 1467 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3205275970Scy    {
3206301301Sdelphij			(yyval.String_fifo) = (yyvsp[-1].String_fifo);
3207301301Sdelphij			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String)));
3208275970Scy		}
3209310419Sdelphij#line 3210 "ntp_parser.c" /* yacc.c:1646  */
3210258945Sroberto    break;
3211258945Sroberto
3212310419Sdelphij  case 288:
3213310419Sdelphij#line 1472 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3214275970Scy    {
3215301301Sdelphij			(yyval.String_fifo) = NULL;
3216301301Sdelphij			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String)));
3217275970Scy		}
3218310419Sdelphij#line 3219 "ntp_parser.c" /* yacc.c:1646  */
3219258945Sroberto    break;
3220258945Sroberto
3221310419Sdelphij  case 289:
3222310419Sdelphij#line 1480 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3223275970Scy    {
3224301301Sdelphij			(yyval.Address_fifo) = (yyvsp[-1].Address_fifo);
3225301301Sdelphij			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node));
3226275970Scy		}
3227310419Sdelphij#line 3228 "ntp_parser.c" /* yacc.c:1646  */
3228258945Sroberto    break;
3229258945Sroberto
3230310419Sdelphij  case 290:
3231310419Sdelphij#line 1485 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3232258945Sroberto    {
3233301301Sdelphij			(yyval.Address_fifo) = NULL;
3234301301Sdelphij			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node));
3235301301Sdelphij		}
3236310419Sdelphij#line 3237 "ntp_parser.c" /* yacc.c:1646  */
3237301301Sdelphij    break;
3238301301Sdelphij
3239310419Sdelphij  case 291:
3240310419Sdelphij#line 1493 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3241301301Sdelphij    {
3242301301Sdelphij			if ((yyvsp[0].Integer) != 0 && (yyvsp[0].Integer) != 1) {
3243290000Sglebius				yyerror("Integer value is not boolean (0 or 1). Assuming 1");
3244258945Sroberto				(yyval.Integer) = 1;
3245258945Sroberto			} else {
3246301301Sdelphij				(yyval.Integer) = (yyvsp[0].Integer);
3247258945Sroberto			}
3248258945Sroberto		}
3249310419Sdelphij#line 3250 "ntp_parser.c" /* yacc.c:1646  */
3250258945Sroberto    break;
3251258945Sroberto
3252310419Sdelphij  case 292:
3253310419Sdelphij#line 1501 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3254258945Sroberto    { (yyval.Integer) = 1; }
3255310419Sdelphij#line 3256 "ntp_parser.c" /* yacc.c:1646  */
3256258945Sroberto    break;
3257258945Sroberto
3258310419Sdelphij  case 293:
3259310419Sdelphij#line 1502 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3260258945Sroberto    { (yyval.Integer) = 0; }
3261310419Sdelphij#line 3262 "ntp_parser.c" /* yacc.c:1646  */
3262258945Sroberto    break;
3263258945Sroberto
3264310419Sdelphij  case 294:
3265310419Sdelphij#line 1506 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3266301301Sdelphij    { (yyval.Double) = (double)(yyvsp[0].Integer); }
3267310419Sdelphij#line 3268 "ntp_parser.c" /* yacc.c:1646  */
3268258945Sroberto    break;
3269258945Sroberto
3270310419Sdelphij  case 296:
3271310419Sdelphij#line 1517 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3272258945Sroberto    {
3273275970Scy			sim_node *sn;
3274290000Sglebius
3275301301Sdelphij			sn =  create_sim_node((yyvsp[-2].Attr_val_fifo), (yyvsp[-1].Sim_server_fifo));
3276275970Scy			APPEND_G_FIFO(cfgt.sim_details, sn);
3277258945Sroberto
3278275970Scy			/* Revert from ; to \n for end-of-command */
3279258945Sroberto			old_config_style = 1;
3280258945Sroberto		}
3281310419Sdelphij#line 3282 "ntp_parser.c" /* yacc.c:1646  */
3282258945Sroberto    break;
3283258945Sroberto
3284310419Sdelphij  case 297:
3285310419Sdelphij#line 1534 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3286258945Sroberto    { old_config_style = 0; }
3287310419Sdelphij#line 3288 "ntp_parser.c" /* yacc.c:1646  */
3288258945Sroberto    break;
3289258945Sroberto
3290310419Sdelphij  case 298:
3291310419Sdelphij#line 1539 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3292275970Scy    {
3293301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo);
3294301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
3295275970Scy		}
3296310419Sdelphij#line 3297 "ntp_parser.c" /* yacc.c:1646  */
3297258945Sroberto    break;
3298258945Sroberto
3299310419Sdelphij  case 299:
3300310419Sdelphij#line 1544 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3301275970Scy    {
3302275970Scy			(yyval.Attr_val_fifo) = NULL;
3303301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
3304275970Scy		}
3305310419Sdelphij#line 3306 "ntp_parser.c" /* yacc.c:1646  */
3306258945Sroberto    break;
3307258945Sroberto
3308310419Sdelphij  case 300:
3309310419Sdelphij#line 1552 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3310301301Sdelphij    { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); }
3311310419Sdelphij#line 3312 "ntp_parser.c" /* yacc.c:1646  */
3312258945Sroberto    break;
3313258945Sroberto
3314310419Sdelphij  case 303:
3315310419Sdelphij#line 1562 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3316275970Scy    {
3317301301Sdelphij			(yyval.Sim_server_fifo) = (yyvsp[-1].Sim_server_fifo);
3318301301Sdelphij			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server));
3319275970Scy		}
3320310419Sdelphij#line 3321 "ntp_parser.c" /* yacc.c:1646  */
3321258945Sroberto    break;
3322258945Sroberto
3323310419Sdelphij  case 304:
3324310419Sdelphij#line 1567 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3325275970Scy    {
3326275970Scy			(yyval.Sim_server_fifo) = NULL;
3327301301Sdelphij			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server));
3328275970Scy		}
3329310419Sdelphij#line 3330 "ntp_parser.c" /* yacc.c:1646  */
3330258945Sroberto    break;
3331258945Sroberto
3332310419Sdelphij  case 305:
3333310419Sdelphij#line 1575 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3334301301Sdelphij    { (yyval.Sim_server) = ONLY_SIM(create_sim_server((yyvsp[-4].Address_node), (yyvsp[-2].Double), (yyvsp[-1].Sim_script_fifo))); }
3335310419Sdelphij#line 3336 "ntp_parser.c" /* yacc.c:1646  */
3336258945Sroberto    break;
3337258945Sroberto
3338310419Sdelphij  case 306:
3339310419Sdelphij#line 1580 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3340301301Sdelphij    { (yyval.Double) = (yyvsp[-1].Double); }
3341310419Sdelphij#line 3342 "ntp_parser.c" /* yacc.c:1646  */
3342258945Sroberto    break;
3343258945Sroberto
3344310419Sdelphij  case 307:
3345310419Sdelphij#line 1585 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3346301301Sdelphij    { (yyval.Address_node) = (yyvsp[0].Address_node); }
3347310419Sdelphij#line 3348 "ntp_parser.c" /* yacc.c:1646  */
3348301301Sdelphij    break;
3349301301Sdelphij
3350310419Sdelphij  case 308:
3351310419Sdelphij#line 1590 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3352275970Scy    {
3353301301Sdelphij			(yyval.Sim_script_fifo) = (yyvsp[-1].Sim_script_fifo);
3354301301Sdelphij			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script));
3355275970Scy		}
3356310419Sdelphij#line 3357 "ntp_parser.c" /* yacc.c:1646  */
3357258945Sroberto    break;
3358258945Sroberto
3359310419Sdelphij  case 309:
3360310419Sdelphij#line 1595 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3361275970Scy    {
3362275970Scy			(yyval.Sim_script_fifo) = NULL;
3363301301Sdelphij			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script));
3364275970Scy		}
3365310419Sdelphij#line 3366 "ntp_parser.c" /* yacc.c:1646  */
3366258945Sroberto    break;
3367258945Sroberto
3368310419Sdelphij  case 310:
3369310419Sdelphij#line 1603 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3370301301Sdelphij    { (yyval.Sim_script) = ONLY_SIM(create_sim_script_info((yyvsp[-3].Double), (yyvsp[-1].Attr_val_fifo))); }
3371310419Sdelphij#line 3372 "ntp_parser.c" /* yacc.c:1646  */
3372258945Sroberto    break;
3373258945Sroberto
3374310419Sdelphij  case 311:
3375310419Sdelphij#line 1608 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3376275970Scy    {
3377301301Sdelphij			(yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo);
3378301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
3379275970Scy		}
3380310419Sdelphij#line 3381 "ntp_parser.c" /* yacc.c:1646  */
3381258945Sroberto    break;
3382258945Sroberto
3383310419Sdelphij  case 312:
3384310419Sdelphij#line 1613 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3385275970Scy    {
3386275970Scy			(yyval.Attr_val_fifo) = NULL;
3387301301Sdelphij			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
3388275970Scy		}
3389310419Sdelphij#line 3390 "ntp_parser.c" /* yacc.c:1646  */
3390258945Sroberto    break;
3391258945Sroberto
3392310419Sdelphij  case 313:
3393310419Sdelphij#line 1621 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3394301301Sdelphij    { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); }
3395310419Sdelphij#line 3396 "ntp_parser.c" /* yacc.c:1646  */
3396258945Sroberto    break;
3397258945Sroberto
3398258945Sroberto
3399310419Sdelphij#line 3400 "ntp_parser.c" /* yacc.c:1646  */
3400258945Sroberto      default: break;
3401258945Sroberto    }
3402275970Scy  /* User semantic actions sometimes alter yychar, and that requires
3403275970Scy     that yytoken be updated with the new translation.  We take the
3404275970Scy     approach of translating immediately before every use of yytoken.
3405275970Scy     One alternative is translating here after every semantic action,
3406275970Scy     but that translation would be missed if the semantic action invokes
3407275970Scy     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
3408275970Scy     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
3409275970Scy     incorrect destructor might then be invoked immediately.  In the
3410275970Scy     case of YYERROR or YYBACKUP, subsequent parser actions might lead
3411275970Scy     to an incorrect destructor call or verbose syntax error message
3412275970Scy     before the lookahead is translated.  */
3413258945Sroberto  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
3414258945Sroberto
3415258945Sroberto  YYPOPSTACK (yylen);
3416258945Sroberto  yylen = 0;
3417258945Sroberto  YY_STACK_PRINT (yyss, yyssp);
3418258945Sroberto
3419258945Sroberto  *++yyvsp = yyval;
3420258945Sroberto
3421301301Sdelphij  /* Now 'shift' the result of the reduction.  Determine what state
3422258945Sroberto     that goes to, based on the state we popped back to and the rule
3423258945Sroberto     number reduced by.  */
3424258945Sroberto
3425258945Sroberto  yyn = yyr1[yyn];
3426258945Sroberto
3427258945Sroberto  yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
3428258945Sroberto  if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
3429258945Sroberto    yystate = yytable[yystate];
3430258945Sroberto  else
3431258945Sroberto    yystate = yydefgoto[yyn - YYNTOKENS];
3432258945Sroberto
3433258945Sroberto  goto yynewstate;
3434258945Sroberto
3435258945Sroberto
3436301301Sdelphij/*--------------------------------------.
3437301301Sdelphij| yyerrlab -- here on detecting error.  |
3438301301Sdelphij`--------------------------------------*/
3439258945Srobertoyyerrlab:
3440275970Scy  /* Make sure we have latest lookahead translation.  See comments at
3441275970Scy     user semantic actions for why this is necessary.  */
3442275970Scy  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
3443275970Scy
3444258945Sroberto  /* If not already recovering from an error, report this error.  */
3445258945Sroberto  if (!yyerrstatus)
3446258945Sroberto    {
3447258945Sroberto      ++yynerrs;
3448258945Sroberto#if ! YYERROR_VERBOSE
3449290000Sglebius      yyerror (YY_("syntax error"));
3450258945Sroberto#else
3451275970Scy# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
3452275970Scy                                        yyssp, yytoken)
3453258945Sroberto      {
3454275970Scy        char const *yymsgp = YY_("syntax error");
3455275970Scy        int yysyntax_error_status;
3456275970Scy        yysyntax_error_status = YYSYNTAX_ERROR;
3457275970Scy        if (yysyntax_error_status == 0)
3458275970Scy          yymsgp = yymsg;
3459275970Scy        else if (yysyntax_error_status == 1)
3460275970Scy          {
3461275970Scy            if (yymsg != yymsgbuf)
3462275970Scy              YYSTACK_FREE (yymsg);
3463275970Scy            yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
3464275970Scy            if (!yymsg)
3465275970Scy              {
3466275970Scy                yymsg = yymsgbuf;
3467275970Scy                yymsg_alloc = sizeof yymsgbuf;
3468275970Scy                yysyntax_error_status = 2;
3469275970Scy              }
3470275970Scy            else
3471275970Scy              {
3472275970Scy                yysyntax_error_status = YYSYNTAX_ERROR;
3473275970Scy                yymsgp = yymsg;
3474275970Scy              }
3475275970Scy          }
3476290000Sglebius        yyerror (yymsgp);
3477275970Scy        if (yysyntax_error_status == 2)
3478275970Scy          goto yyexhaustedlab;
3479258945Sroberto      }
3480275970Scy# undef YYSYNTAX_ERROR
3481258945Sroberto#endif
3482258945Sroberto    }
3483258945Sroberto
3484258945Sroberto
3485258945Sroberto
3486258945Sroberto  if (yyerrstatus == 3)
3487258945Sroberto    {
3488258945Sroberto      /* If just tried and failed to reuse lookahead token after an
3489301301Sdelphij         error, discard it.  */
3490258945Sroberto
3491258945Sroberto      if (yychar <= YYEOF)
3492301301Sdelphij        {
3493301301Sdelphij          /* Return failure if at end of input.  */
3494301301Sdelphij          if (yychar == YYEOF)
3495301301Sdelphij            YYABORT;
3496301301Sdelphij        }
3497258945Sroberto      else
3498301301Sdelphij        {
3499301301Sdelphij          yydestruct ("Error: discarding",
3500301301Sdelphij                      yytoken, &yylval);
3501301301Sdelphij          yychar = YYEMPTY;
3502301301Sdelphij        }
3503258945Sroberto    }
3504258945Sroberto
3505258945Sroberto  /* Else will try to reuse lookahead token after shifting the error
3506258945Sroberto     token.  */
3507258945Sroberto  goto yyerrlab1;
3508258945Sroberto
3509258945Sroberto
3510258945Sroberto/*---------------------------------------------------.
3511258945Sroberto| yyerrorlab -- error raised explicitly by YYERROR.  |
3512258945Sroberto`---------------------------------------------------*/
3513258945Srobertoyyerrorlab:
3514258945Sroberto
3515258945Sroberto  /* Pacify compilers like GCC when the user code never invokes
3516258945Sroberto     YYERROR and the label yyerrorlab therefore never appears in user
3517258945Sroberto     code.  */
3518258945Sroberto  if (/*CONSTCOND*/ 0)
3519258945Sroberto     goto yyerrorlab;
3520258945Sroberto
3521301301Sdelphij  /* Do not reclaim the symbols of the rule whose action triggered
3522258945Sroberto     this YYERROR.  */
3523258945Sroberto  YYPOPSTACK (yylen);
3524258945Sroberto  yylen = 0;
3525258945Sroberto  YY_STACK_PRINT (yyss, yyssp);
3526258945Sroberto  yystate = *yyssp;
3527258945Sroberto  goto yyerrlab1;
3528258945Sroberto
3529258945Sroberto
3530258945Sroberto/*-------------------------------------------------------------.
3531258945Sroberto| yyerrlab1 -- common code for both syntax error and YYERROR.  |
3532258945Sroberto`-------------------------------------------------------------*/
3533258945Srobertoyyerrlab1:
3534301301Sdelphij  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
3535258945Sroberto
3536258945Sroberto  for (;;)
3537258945Sroberto    {
3538258945Sroberto      yyn = yypact[yystate];
3539275970Scy      if (!yypact_value_is_default (yyn))
3540301301Sdelphij        {
3541301301Sdelphij          yyn += YYTERROR;
3542301301Sdelphij          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
3543301301Sdelphij            {
3544301301Sdelphij              yyn = yytable[yyn];
3545301301Sdelphij              if (0 < yyn)
3546301301Sdelphij                break;
3547301301Sdelphij            }
3548301301Sdelphij        }
3549258945Sroberto
3550258945Sroberto      /* Pop the current state because it cannot handle the error token.  */
3551258945Sroberto      if (yyssp == yyss)
3552301301Sdelphij        YYABORT;
3553258945Sroberto
3554258945Sroberto
3555258945Sroberto      yydestruct ("Error: popping",
3556301301Sdelphij                  yystos[yystate], yyvsp);
3557258945Sroberto      YYPOPSTACK (1);
3558258945Sroberto      yystate = *yyssp;
3559258945Sroberto      YY_STACK_PRINT (yyss, yyssp);
3560258945Sroberto    }
3561258945Sroberto
3562275970Scy  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3563258945Sroberto  *++yyvsp = yylval;
3564275970Scy  YY_IGNORE_MAYBE_UNINITIALIZED_END
3565258945Sroberto
3566258945Sroberto
3567258945Sroberto  /* Shift the error token.  */
3568258945Sroberto  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
3569258945Sroberto
3570258945Sroberto  yystate = yyn;
3571258945Sroberto  goto yynewstate;
3572258945Sroberto
3573258945Sroberto
3574258945Sroberto/*-------------------------------------.
3575258945Sroberto| yyacceptlab -- YYACCEPT comes here.  |
3576258945Sroberto`-------------------------------------*/
3577258945Srobertoyyacceptlab:
3578258945Sroberto  yyresult = 0;
3579258945Sroberto  goto yyreturn;
3580258945Sroberto
3581258945Sroberto/*-----------------------------------.
3582258945Sroberto| yyabortlab -- YYABORT comes here.  |
3583258945Sroberto`-----------------------------------*/
3584258945Srobertoyyabortlab:
3585258945Sroberto  yyresult = 1;
3586258945Sroberto  goto yyreturn;
3587258945Sroberto
3588275970Scy#if !defined yyoverflow || YYERROR_VERBOSE
3589258945Sroberto/*-------------------------------------------------.
3590258945Sroberto| yyexhaustedlab -- memory exhaustion comes here.  |
3591258945Sroberto`-------------------------------------------------*/
3592258945Srobertoyyexhaustedlab:
3593290000Sglebius  yyerror (YY_("memory exhausted"));
3594258945Sroberto  yyresult = 2;
3595258945Sroberto  /* Fall through.  */
3596258945Sroberto#endif
3597258945Sroberto
3598258945Srobertoyyreturn:
3599258945Sroberto  if (yychar != YYEMPTY)
3600275970Scy    {
3601275970Scy      /* Make sure we have latest lookahead translation.  See comments at
3602275970Scy         user semantic actions for why this is necessary.  */
3603275970Scy      yytoken = YYTRANSLATE (yychar);
3604275970Scy      yydestruct ("Cleanup: discarding lookahead",
3605290000Sglebius                  yytoken, &yylval);
3606275970Scy    }
3607301301Sdelphij  /* Do not reclaim the symbols of the rule whose action triggered
3608258945Sroberto     this YYABORT or YYACCEPT.  */
3609258945Sroberto  YYPOPSTACK (yylen);
3610258945Sroberto  YY_STACK_PRINT (yyss, yyssp);
3611258945Sroberto  while (yyssp != yyss)
3612258945Sroberto    {
3613258945Sroberto      yydestruct ("Cleanup: popping",
3614301301Sdelphij                  yystos[*yyssp], yyvsp);
3615258945Sroberto      YYPOPSTACK (1);
3616258945Sroberto    }
3617258945Sroberto#ifndef yyoverflow
3618258945Sroberto  if (yyss != yyssa)
3619258945Sroberto    YYSTACK_FREE (yyss);
3620258945Sroberto#endif
3621258945Sroberto#if YYERROR_VERBOSE
3622258945Sroberto  if (yymsg != yymsgbuf)
3623258945Sroberto    YYSTACK_FREE (yymsg);
3624258945Sroberto#endif
3625301301Sdelphij  return yyresult;
3626258945Sroberto}
3627310419Sdelphij#line 1632 "../../ntpd/ntp_parser.y" /* yacc.c:1906  */
3628258945Sroberto
3629258945Sroberto
3630290000Sglebiusvoid
3631258945Srobertoyyerror(
3632258945Sroberto	const char *msg
3633258945Sroberto	)
3634258945Sroberto{
3635258945Sroberto	int retval;
3636290000Sglebius	struct FILE_INFO * ip_ctx;
3637258945Sroberto
3638290000Sglebius	ip_ctx = lex_current();
3639290000Sglebius	ip_ctx->errpos = ip_ctx->tokpos;
3640290000Sglebius
3641290000Sglebius	msyslog(LOG_ERR, "line %d column %d %s",
3642290000Sglebius		ip_ctx->errpos.nline, ip_ctx->errpos.ncol, msg);
3643290000Sglebius	if (!lex_from_file()) {
3644258945Sroberto		/* Save the error message in the correct buffer */
3645258945Sroberto		retval = snprintf(remote_config.err_msg + remote_config.err_pos,
3646258945Sroberto				  MAXLINE - remote_config.err_pos,
3647258945Sroberto				  "column %d %s",
3648290000Sglebius				  ip_ctx->errpos.ncol, msg);
3649258945Sroberto
3650258945Sroberto		/* Increment the value of err_pos */
3651258945Sroberto		if (retval > 0)
3652258945Sroberto			remote_config.err_pos += retval;
3653258945Sroberto
3654258945Sroberto		/* Increment the number of errors */
3655258945Sroberto		++remote_config.no_errors;
3656258945Sroberto	}
3657258945Sroberto}
3658258945Sroberto
3659258945Sroberto
3660258945Sroberto/*
3661275970Scy * token_name - convert T_ token integers to text
3662275970Scy *		example: token_name(T_Server) returns "T_Server"
3663258945Sroberto */
3664258945Srobertoconst char *
3665258945Srobertotoken_name(
3666258945Sroberto	int token
3667258945Sroberto	)
3668258945Sroberto{
3669258945Sroberto	return yytname[YYTRANSLATE(token)];
3670258945Sroberto}
3671258945Sroberto
3672258945Sroberto
3673275970Scy/* Initial Testing function -- ignore */
3674275970Scy#if 0
3675258945Srobertoint main(int argc, char *argv[])
3676258945Sroberto{
3677258945Sroberto	ip_file = FOPEN(argv[1], "r");
3678275970Scy	if (!ip_file)
3679258945Sroberto		fprintf(stderr, "ERROR!! Could not open file: %s\n", argv[1]);
3680258945Sroberto	yyparse();
3681258945Sroberto	return 0;
3682258945Sroberto}
3683275970Scy#endif
3684258945Sroberto
3685