xref: /freebsd/contrib/ntp/ntpd/ntp_parser.c (revision f5f40dd63bc7acbb5312b26ac1ea1103c12352a6)
1*f5f40dd6SCy Schubert /* A Bison parser, made by GNU Bison 3.8.2.  */
22b15cb3dSCy Schubert 
32b15cb3dSCy Schubert /* Bison implementation for Yacc-like parsers in C
42b15cb3dSCy Schubert 
5a466cc55SCy Schubert    Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
6a466cc55SCy Schubert    Inc.
72b15cb3dSCy Schubert 
82b15cb3dSCy Schubert    This program is free software: you can redistribute it and/or modify
92b15cb3dSCy Schubert    it under the terms of the GNU General Public License as published by
102b15cb3dSCy Schubert    the Free Software Foundation, either version 3 of the License, or
112b15cb3dSCy Schubert    (at your option) any later version.
122b15cb3dSCy Schubert 
132b15cb3dSCy Schubert    This program is distributed in the hope that it will be useful,
142b15cb3dSCy Schubert    but WITHOUT ANY WARRANTY; without even the implied warranty of
152b15cb3dSCy Schubert    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
162b15cb3dSCy Schubert    GNU General Public License for more details.
172b15cb3dSCy Schubert 
182b15cb3dSCy Schubert    You should have received a copy of the GNU General Public License
19a466cc55SCy Schubert    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
202b15cb3dSCy Schubert 
212b15cb3dSCy Schubert /* As a special exception, you may create a larger work that contains
222b15cb3dSCy Schubert    part or all of the Bison parser skeleton and distribute that work
232b15cb3dSCy Schubert    under terms of your choice, so long as that work isn't itself a
242b15cb3dSCy Schubert    parser generator using the skeleton or a modified version thereof
252b15cb3dSCy Schubert    as a parser skeleton.  Alternatively, if you modify or redistribute
262b15cb3dSCy Schubert    the parser skeleton itself, you may (at your option) remove this
272b15cb3dSCy Schubert    special exception, which will cause the skeleton and the resulting
282b15cb3dSCy Schubert    Bison output files to be licensed under the GNU General Public
292b15cb3dSCy Schubert    License without this special exception.
302b15cb3dSCy Schubert 
312b15cb3dSCy Schubert    This special exception was added by the Free Software Foundation in
322b15cb3dSCy Schubert    version 2.2 of Bison.  */
332b15cb3dSCy Schubert 
342b15cb3dSCy Schubert /* C LALR(1) parser skeleton written by Richard Stallman, by
352b15cb3dSCy Schubert    simplifying the original so-called "semantic" parser.  */
362b15cb3dSCy Schubert 
37a466cc55SCy Schubert /* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
38a466cc55SCy Schubert    especially those whose name start with YY_ or yy_.  They are
39a466cc55SCy Schubert    private implementation details that can be changed or removed.  */
40a466cc55SCy Schubert 
412b15cb3dSCy Schubert /* All symbols defined below should begin with yy or YY, to avoid
422b15cb3dSCy Schubert    infringing on user name space.  This should be done even for local
432b15cb3dSCy Schubert    variables, as they might otherwise be expanded by user macros.
442b15cb3dSCy Schubert    There are some unavoidable exceptions within include files to
452b15cb3dSCy Schubert    define necessary library symbols; they are noted "INFRINGES ON
462b15cb3dSCy Schubert    USER NAME SPACE" below.  */
472b15cb3dSCy Schubert 
48a466cc55SCy Schubert /* Identify Bison output, and Bison version.  */
49*f5f40dd6SCy Schubert #define YYBISON 30802
502b15cb3dSCy Schubert 
51a466cc55SCy Schubert /* Bison version string.  */
52*f5f40dd6SCy Schubert #define YYBISON_VERSION "3.8.2"
532b15cb3dSCy Schubert 
542b15cb3dSCy Schubert /* Skeleton name.  */
552b15cb3dSCy Schubert #define YYSKELETON_NAME "yacc.c"
562b15cb3dSCy Schubert 
572b15cb3dSCy Schubert /* Pure parsers.  */
582b15cb3dSCy Schubert #define YYPURE 0
592b15cb3dSCy Schubert 
602b15cb3dSCy Schubert /* Push parsers.  */
612b15cb3dSCy Schubert #define YYPUSH 0
622b15cb3dSCy Schubert 
632b15cb3dSCy Schubert /* Pull parsers.  */
642b15cb3dSCy Schubert #define YYPULL 1
652b15cb3dSCy Schubert 
662b15cb3dSCy Schubert 
672b15cb3dSCy Schubert 
682b15cb3dSCy Schubert 
69a466cc55SCy Schubert /* First part of user prologue.  */
70*f5f40dd6SCy Schubert #line 11 "../../ntpd/ntp_parser.y"
712b15cb3dSCy Schubert 
722b15cb3dSCy Schubert   #ifdef HAVE_CONFIG_H
732b15cb3dSCy Schubert   # include <config.h>
742b15cb3dSCy Schubert   #endif
752b15cb3dSCy Schubert 
762b15cb3dSCy Schubert   #include "ntp.h"
772b15cb3dSCy Schubert   #include "ntpd.h"
782b15cb3dSCy Schubert   #include "ntp_machine.h"
792b15cb3dSCy Schubert   #include "ntp_stdlib.h"
802b15cb3dSCy Schubert   #include "ntp_filegen.h"
812b15cb3dSCy Schubert   #include "ntp_scanner.h"
822b15cb3dSCy Schubert   #include "ntp_config.h"
832b15cb3dSCy Schubert   #include "ntp_crypto.h"
844e1ef62aSXin LI   #include "ntp_calendar.h"
852b15cb3dSCy Schubert 
862b15cb3dSCy Schubert   #include "ntpsim.h"		/* HMS: Do we really want this all the time? */
872b15cb3dSCy Schubert 				/* SK: It might be a good idea to always
882b15cb3dSCy Schubert 				   include the simulator code. That way
892b15cb3dSCy Schubert 				   someone can use the same configuration file
902b15cb3dSCy Schubert 				   for both the simulator and the daemon
912b15cb3dSCy Schubert 				*/
922b15cb3dSCy Schubert 
932b15cb3dSCy Schubert   #define YYMALLOC	emalloc
942b15cb3dSCy Schubert   #define YYFREE	free
952b15cb3dSCy Schubert   #define YYERROR_VERBOSE
962b15cb3dSCy Schubert   #define YYMAXDEPTH	1000	/* stop the madness sooner */
97276da39aSCy Schubert   void yyerror(const char *msg);
982b15cb3dSCy Schubert 
992b15cb3dSCy Schubert   #ifdef SIM
1002b15cb3dSCy Schubert   #  define ONLY_SIM(a)	(a)
1012b15cb3dSCy Schubert   #else
1022b15cb3dSCy Schubert   #  define ONLY_SIM(a)	NULL
1032b15cb3dSCy Schubert   #endif
1042b15cb3dSCy Schubert 
105*f5f40dd6SCy Schubert #line 106 "ntp_parser.c"
1062b15cb3dSCy Schubert 
107a466cc55SCy Schubert # ifndef YY_CAST
108a466cc55SCy Schubert #  ifdef __cplusplus
109a466cc55SCy Schubert #   define YY_CAST(Type, Val) static_cast<Type> (Val)
110a466cc55SCy Schubert #   define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
111a466cc55SCy Schubert #  else
112a466cc55SCy Schubert #   define YY_CAST(Type, Val) ((Type) (Val))
113a466cc55SCy Schubert #   define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
114a466cc55SCy Schubert #  endif
115a466cc55SCy Schubert # endif
116e27abb66SXin LI # ifndef YY_NULLPTR
117a466cc55SCy Schubert #  if defined __cplusplus
118a466cc55SCy Schubert #   if 201103L <= __cplusplus
119e27abb66SXin LI #    define YY_NULLPTR nullptr
1202b15cb3dSCy Schubert #   else
121e27abb66SXin LI #    define YY_NULLPTR 0
1222b15cb3dSCy Schubert #   endif
1232b15cb3dSCy Schubert #  else
124a466cc55SCy Schubert #   define YY_NULLPTR ((void*)0)
125a466cc55SCy Schubert #  endif
1262b15cb3dSCy Schubert # endif
1272b15cb3dSCy Schubert 
128a466cc55SCy Schubert /* Use api.header.include to #include this header
129a466cc55SCy Schubert    instead of duplicating it here.  */
130*f5f40dd6SCy Schubert #ifndef YY_YY_NTP_PARSER_H_INCLUDED
131*f5f40dd6SCy Schubert # define YY_YY_NTP_PARSER_H_INCLUDED
132e27abb66SXin LI /* Debug traces.  */
1332b15cb3dSCy Schubert #ifndef YYDEBUG
1342b15cb3dSCy Schubert # define YYDEBUG 1
1352b15cb3dSCy Schubert #endif
1362b15cb3dSCy Schubert #if YYDEBUG
1372b15cb3dSCy Schubert extern int yydebug;
1382b15cb3dSCy Schubert #endif
1392b15cb3dSCy Schubert 
140a466cc55SCy Schubert /* Token kinds.  */
1412b15cb3dSCy Schubert #ifndef YYTOKENTYPE
1422b15cb3dSCy Schubert # define YYTOKENTYPE
143e27abb66SXin LI   enum yytokentype
144e27abb66SXin LI   {
145a466cc55SCy Schubert     YYEMPTY = -2,
146a466cc55SCy Schubert     YYEOF = 0,                     /* "end of file"  */
147a466cc55SCy Schubert     YYerror = 256,                 /* error  */
148a466cc55SCy Schubert     YYUNDEF = 257,                 /* "invalid token"  */
149a466cc55SCy Schubert     T_Abbrev = 258,                /* T_Abbrev  */
150a466cc55SCy Schubert     T_Age = 259,                   /* T_Age  */
151a466cc55SCy Schubert     T_All = 260,                   /* T_All  */
152a466cc55SCy Schubert     T_Allan = 261,                 /* T_Allan  */
153a466cc55SCy Schubert     T_Allpeers = 262,              /* T_Allpeers  */
154a466cc55SCy Schubert     T_Auth = 263,                  /* T_Auth  */
155a466cc55SCy Schubert     T_Autokey = 264,               /* T_Autokey  */
156a466cc55SCy Schubert     T_Automax = 265,               /* T_Automax  */
157a466cc55SCy Schubert     T_Average = 266,               /* T_Average  */
158a466cc55SCy Schubert     T_Basedate = 267,              /* T_Basedate  */
159a466cc55SCy Schubert     T_Bclient = 268,               /* T_Bclient  */
160a466cc55SCy Schubert     T_Bcpollbstep = 269,           /* T_Bcpollbstep  */
161a466cc55SCy Schubert     T_Beacon = 270,                /* T_Beacon  */
162a466cc55SCy Schubert     T_Broadcast = 271,             /* T_Broadcast  */
163a466cc55SCy Schubert     T_Broadcastclient = 272,       /* T_Broadcastclient  */
164a466cc55SCy Schubert     T_Broadcastdelay = 273,        /* T_Broadcastdelay  */
165a466cc55SCy Schubert     T_Burst = 274,                 /* T_Burst  */
166a466cc55SCy Schubert     T_Calibrate = 275,             /* T_Calibrate  */
167a466cc55SCy Schubert     T_Ceiling = 276,               /* T_Ceiling  */
168a466cc55SCy Schubert     T_Checkhash = 277,             /* T_Checkhash  */
169a466cc55SCy Schubert     T_Clockstats = 278,            /* T_Clockstats  */
170a466cc55SCy Schubert     T_Cohort = 279,                /* T_Cohort  */
171a466cc55SCy Schubert     T_ControlKey = 280,            /* T_ControlKey  */
172a466cc55SCy Schubert     T_Crypto = 281,                /* T_Crypto  */
173a466cc55SCy Schubert     T_Cryptostats = 282,           /* T_Cryptostats  */
174a466cc55SCy Schubert     T_Ctl = 283,                   /* T_Ctl  */
175a466cc55SCy Schubert     T_Day = 284,                   /* T_Day  */
176a466cc55SCy Schubert     T_Default = 285,               /* T_Default  */
177*f5f40dd6SCy Schubert     T_Delrestrict = 286,           /* T_Delrestrict  */
178*f5f40dd6SCy Schubert     T_Device = 287,                /* T_Device  */
179*f5f40dd6SCy Schubert     T_Digest = 288,                /* T_Digest  */
180*f5f40dd6SCy Schubert     T_Disable = 289,               /* T_Disable  */
181*f5f40dd6SCy Schubert     T_Discard = 290,               /* T_Discard  */
182*f5f40dd6SCy Schubert     T_Dispersion = 291,            /* T_Dispersion  */
183*f5f40dd6SCy Schubert     T_Double = 292,                /* T_Double  */
184*f5f40dd6SCy Schubert     T_Driftfile = 293,             /* T_Driftfile  */
185*f5f40dd6SCy Schubert     T_Drop = 294,                  /* T_Drop  */
186*f5f40dd6SCy Schubert     T_Dscp = 295,                  /* T_Dscp  */
187*f5f40dd6SCy Schubert     T_Ellipsis = 296,              /* T_Ellipsis  */
188*f5f40dd6SCy Schubert     T_Enable = 297,                /* T_Enable  */
189*f5f40dd6SCy Schubert     T_End = 298,                   /* T_End  */
190*f5f40dd6SCy Schubert     T_Epeer = 299,                 /* T_Epeer  */
191*f5f40dd6SCy Schubert     T_False = 300,                 /* T_False  */
192*f5f40dd6SCy Schubert     T_File = 301,                  /* T_File  */
193*f5f40dd6SCy Schubert     T_Filegen = 302,               /* T_Filegen  */
194*f5f40dd6SCy Schubert     T_Filenum = 303,               /* T_Filenum  */
195*f5f40dd6SCy Schubert     T_Flag1 = 304,                 /* T_Flag1  */
196*f5f40dd6SCy Schubert     T_Flag2 = 305,                 /* T_Flag2  */
197*f5f40dd6SCy Schubert     T_Flag3 = 306,                 /* T_Flag3  */
198*f5f40dd6SCy Schubert     T_Flag4 = 307,                 /* T_Flag4  */
199*f5f40dd6SCy Schubert     T_Flake = 308,                 /* T_Flake  */
200*f5f40dd6SCy Schubert     T_Floor = 309,                 /* T_Floor  */
201*f5f40dd6SCy Schubert     T_Freq = 310,                  /* T_Freq  */
202*f5f40dd6SCy Schubert     T_Fudge = 311,                 /* T_Fudge  */
203*f5f40dd6SCy Schubert     T_Fuzz = 312,                  /* T_Fuzz  */
204*f5f40dd6SCy Schubert     T_Host = 313,                  /* T_Host  */
205*f5f40dd6SCy Schubert     T_Huffpuff = 314,              /* T_Huffpuff  */
206*f5f40dd6SCy Schubert     T_Iburst = 315,                /* T_Iburst  */
207*f5f40dd6SCy Schubert     T_Ident = 316,                 /* T_Ident  */
208*f5f40dd6SCy Schubert     T_Ignore = 317,                /* T_Ignore  */
209*f5f40dd6SCy Schubert     T_Ignorehash = 318,            /* T_Ignorehash  */
210*f5f40dd6SCy Schubert     T_Incalloc = 319,              /* T_Incalloc  */
211*f5f40dd6SCy Schubert     T_Incmem = 320,                /* T_Incmem  */
212*f5f40dd6SCy Schubert     T_Initalloc = 321,             /* T_Initalloc  */
213*f5f40dd6SCy Schubert     T_Initmem = 322,               /* T_Initmem  */
214*f5f40dd6SCy Schubert     T_Includefile = 323,           /* T_Includefile  */
215*f5f40dd6SCy Schubert     T_Integer = 324,               /* T_Integer  */
216*f5f40dd6SCy Schubert     T_Interface = 325,             /* T_Interface  */
217*f5f40dd6SCy Schubert     T_Intrange = 326,              /* T_Intrange  */
218*f5f40dd6SCy Schubert     T_Io = 327,                    /* T_Io  */
219*f5f40dd6SCy Schubert     T_Ippeerlimit = 328,           /* T_Ippeerlimit  */
220*f5f40dd6SCy Schubert     T_Ipv4 = 329,                  /* T_Ipv4  */
221*f5f40dd6SCy Schubert     T_Ipv4_flag = 330,             /* T_Ipv4_flag  */
222*f5f40dd6SCy Schubert     T_Ipv6 = 331,                  /* T_Ipv6  */
223*f5f40dd6SCy Schubert     T_Ipv6_flag = 332,             /* T_Ipv6_flag  */
224*f5f40dd6SCy Schubert     T_Kernel = 333,                /* T_Kernel  */
225*f5f40dd6SCy Schubert     T_Key = 334,                   /* T_Key  */
226*f5f40dd6SCy Schubert     T_Keys = 335,                  /* T_Keys  */
227*f5f40dd6SCy Schubert     T_Keysdir = 336,               /* T_Keysdir  */
228*f5f40dd6SCy Schubert     T_Kod = 337,                   /* T_Kod  */
229*f5f40dd6SCy Schubert     T_Leapfile = 338,              /* T_Leapfile  */
230*f5f40dd6SCy Schubert     T_Leapsmearinterval = 339,     /* T_Leapsmearinterval  */
231*f5f40dd6SCy Schubert     T_Limited = 340,               /* T_Limited  */
232*f5f40dd6SCy Schubert     T_Link = 341,                  /* T_Link  */
233*f5f40dd6SCy Schubert     T_Listen = 342,                /* T_Listen  */
234*f5f40dd6SCy Schubert     T_Logconfig = 343,             /* T_Logconfig  */
235*f5f40dd6SCy Schubert     T_Logfile = 344,               /* T_Logfile  */
236*f5f40dd6SCy Schubert     T_Loopstats = 345,             /* T_Loopstats  */
237*f5f40dd6SCy Schubert     T_Lowpriotrap = 346,           /* T_Lowpriotrap  */
238*f5f40dd6SCy Schubert     T_Manycastclient = 347,        /* T_Manycastclient  */
239*f5f40dd6SCy Schubert     T_Manycastserver = 348,        /* T_Manycastserver  */
240*f5f40dd6SCy Schubert     T_Mask = 349,                  /* T_Mask  */
241*f5f40dd6SCy Schubert     T_Maxage = 350,                /* T_Maxage  */
242*f5f40dd6SCy Schubert     T_Maxclock = 351,              /* T_Maxclock  */
243*f5f40dd6SCy Schubert     T_Maxdepth = 352,              /* T_Maxdepth  */
244*f5f40dd6SCy Schubert     T_Maxdist = 353,               /* T_Maxdist  */
245*f5f40dd6SCy Schubert     T_Maxmem = 354,                /* T_Maxmem  */
246*f5f40dd6SCy Schubert     T_Maxpoll = 355,               /* T_Maxpoll  */
247*f5f40dd6SCy Schubert     T_Mdnstries = 356,             /* T_Mdnstries  */
248*f5f40dd6SCy Schubert     T_Mem = 357,                   /* T_Mem  */
249*f5f40dd6SCy Schubert     T_Memlock = 358,               /* T_Memlock  */
250*f5f40dd6SCy Schubert     T_Minclock = 359,              /* T_Minclock  */
251*f5f40dd6SCy Schubert     T_Mindepth = 360,              /* T_Mindepth  */
252*f5f40dd6SCy Schubert     T_Mindist = 361,               /* T_Mindist  */
253*f5f40dd6SCy Schubert     T_Minimum = 362,               /* T_Minimum  */
254*f5f40dd6SCy Schubert     T_Minjitter = 363,             /* T_Minjitter  */
255*f5f40dd6SCy Schubert     T_Minpoll = 364,               /* T_Minpoll  */
256*f5f40dd6SCy Schubert     T_Minsane = 365,               /* T_Minsane  */
257*f5f40dd6SCy Schubert     T_Mode = 366,                  /* T_Mode  */
258*f5f40dd6SCy Schubert     T_Mode7 = 367,                 /* T_Mode7  */
259*f5f40dd6SCy Schubert     T_Monitor = 368,               /* T_Monitor  */
260*f5f40dd6SCy Schubert     T_Month = 369,                 /* T_Month  */
261*f5f40dd6SCy Schubert     T_Mru = 370,                   /* T_Mru  */
262*f5f40dd6SCy Schubert     T_Mssntp = 371,                /* T_Mssntp  */
263*f5f40dd6SCy Schubert     T_Multicastclient = 372,       /* T_Multicastclient  */
264*f5f40dd6SCy Schubert     T_Nic = 373,                   /* T_Nic  */
265*f5f40dd6SCy Schubert     T_Nolink = 374,                /* T_Nolink  */
266*f5f40dd6SCy Schubert     T_Nomodify = 375,              /* T_Nomodify  */
267*f5f40dd6SCy Schubert     T_Nomrulist = 376,             /* T_Nomrulist  */
268*f5f40dd6SCy Schubert     T_None = 377,                  /* T_None  */
269*f5f40dd6SCy Schubert     T_Nonvolatile = 378,           /* T_Nonvolatile  */
270*f5f40dd6SCy Schubert     T_Noepeer = 379,               /* T_Noepeer  */
271*f5f40dd6SCy Schubert     T_Nopeer = 380,                /* T_Nopeer  */
272*f5f40dd6SCy Schubert     T_Noquery = 381,               /* T_Noquery  */
273*f5f40dd6SCy Schubert     T_Noselect = 382,              /* T_Noselect  */
274*f5f40dd6SCy Schubert     T_Noserve = 383,               /* T_Noserve  */
275*f5f40dd6SCy Schubert     T_Notrap = 384,                /* T_Notrap  */
276*f5f40dd6SCy Schubert     T_Notrust = 385,               /* T_Notrust  */
277*f5f40dd6SCy Schubert     T_Ntp = 386,                   /* T_Ntp  */
278*f5f40dd6SCy Schubert     T_Ntpport = 387,               /* T_Ntpport  */
279*f5f40dd6SCy Schubert     T_NtpSignDsocket = 388,        /* T_NtpSignDsocket  */
280*f5f40dd6SCy Schubert     T_Orphan = 389,                /* T_Orphan  */
281*f5f40dd6SCy Schubert     T_Orphanwait = 390,            /* T_Orphanwait  */
282*f5f40dd6SCy Schubert     T_PCEdigest = 391,             /* T_PCEdigest  */
283*f5f40dd6SCy Schubert     T_Panic = 392,                 /* T_Panic  */
284*f5f40dd6SCy Schubert     T_Peer = 393,                  /* T_Peer  */
285*f5f40dd6SCy Schubert     T_Peerstats = 394,             /* T_Peerstats  */
286*f5f40dd6SCy Schubert     T_Phone = 395,                 /* T_Phone  */
287*f5f40dd6SCy Schubert     T_Pid = 396,                   /* T_Pid  */
288*f5f40dd6SCy Schubert     T_Pidfile = 397,               /* T_Pidfile  */
289*f5f40dd6SCy Schubert     T_Poll = 398,                  /* T_Poll  */
290*f5f40dd6SCy Schubert     T_PollSkewList = 399,          /* T_PollSkewList  */
291*f5f40dd6SCy Schubert     T_Pool = 400,                  /* T_Pool  */
292*f5f40dd6SCy Schubert     T_Port = 401,                  /* T_Port  */
293*f5f40dd6SCy Schubert     T_PpsData = 402,               /* T_PpsData  */
294*f5f40dd6SCy Schubert     T_Preempt = 403,               /* T_Preempt  */
295*f5f40dd6SCy Schubert     T_Prefer = 404,                /* T_Prefer  */
296*f5f40dd6SCy Schubert     T_Protostats = 405,            /* T_Protostats  */
297*f5f40dd6SCy Schubert     T_Pw = 406,                    /* T_Pw  */
298*f5f40dd6SCy Schubert     T_Randfile = 407,              /* T_Randfile  */
299*f5f40dd6SCy Schubert     T_Rawstats = 408,              /* T_Rawstats  */
300*f5f40dd6SCy Schubert     T_Refid = 409,                 /* T_Refid  */
301*f5f40dd6SCy Schubert     T_Requestkey = 410,            /* T_Requestkey  */
302*f5f40dd6SCy Schubert     T_Reset = 411,                 /* T_Reset  */
303*f5f40dd6SCy Schubert     T_Restrict = 412,              /* T_Restrict  */
304*f5f40dd6SCy Schubert     T_Revoke = 413,                /* T_Revoke  */
305*f5f40dd6SCy Schubert     T_Rlimit = 414,                /* T_Rlimit  */
306*f5f40dd6SCy Schubert     T_Saveconfigdir = 415,         /* T_Saveconfigdir  */
307*f5f40dd6SCy Schubert     T_Server = 416,                /* T_Server  */
308*f5f40dd6SCy Schubert     T_Serverresponse = 417,        /* T_Serverresponse  */
309*f5f40dd6SCy Schubert     T_ServerresponseFuzz = 418,    /* T_ServerresponseFuzz  */
310*f5f40dd6SCy Schubert     T_Setvar = 419,                /* T_Setvar  */
311*f5f40dd6SCy Schubert     T_Source = 420,                /* T_Source  */
312*f5f40dd6SCy Schubert     T_Stacksize = 421,             /* T_Stacksize  */
313*f5f40dd6SCy Schubert     T_Statistics = 422,            /* T_Statistics  */
314*f5f40dd6SCy Schubert     T_Stats = 423,                 /* T_Stats  */
315*f5f40dd6SCy Schubert     T_Statsdir = 424,              /* T_Statsdir  */
316*f5f40dd6SCy Schubert     T_Step = 425,                  /* T_Step  */
317*f5f40dd6SCy Schubert     T_Stepback = 426,              /* T_Stepback  */
318*f5f40dd6SCy Schubert     T_Stepfwd = 427,               /* T_Stepfwd  */
319*f5f40dd6SCy Schubert     T_Stepout = 428,               /* T_Stepout  */
320*f5f40dd6SCy Schubert     T_Stratum = 429,               /* T_Stratum  */
321*f5f40dd6SCy Schubert     T_String = 430,                /* T_String  */
322*f5f40dd6SCy Schubert     T_Sys = 431,                   /* T_Sys  */
323*f5f40dd6SCy Schubert     T_Sysstats = 432,              /* T_Sysstats  */
324*f5f40dd6SCy Schubert     T_Tick = 433,                  /* T_Tick  */
325*f5f40dd6SCy Schubert     T_Time1 = 434,                 /* T_Time1  */
326*f5f40dd6SCy Schubert     T_Time2 = 435,                 /* T_Time2  */
327*f5f40dd6SCy Schubert     T_TimeData = 436,              /* T_TimeData  */
328*f5f40dd6SCy Schubert     T_Timer = 437,                 /* T_Timer  */
329*f5f40dd6SCy Schubert     T_Timingstats = 438,           /* T_Timingstats  */
330*f5f40dd6SCy Schubert     T_Tinker = 439,                /* T_Tinker  */
331*f5f40dd6SCy Schubert     T_Tos = 440,                   /* T_Tos  */
332*f5f40dd6SCy Schubert     T_Trap = 441,                  /* T_Trap  */
333*f5f40dd6SCy Schubert     T_True = 442,                  /* T_True  */
334*f5f40dd6SCy Schubert     T_Trustedkey = 443,            /* T_Trustedkey  */
335*f5f40dd6SCy Schubert     T_Ttl = 444,                   /* T_Ttl  */
336*f5f40dd6SCy Schubert     T_Type = 445,                  /* T_Type  */
337*f5f40dd6SCy Schubert     T_U_int = 446,                 /* T_U_int  */
338*f5f40dd6SCy Schubert     T_UEcrypto = 447,              /* T_UEcrypto  */
339*f5f40dd6SCy Schubert     T_UEcryptonak = 448,           /* T_UEcryptonak  */
340*f5f40dd6SCy Schubert     T_UEdigest = 449,              /* T_UEdigest  */
341*f5f40dd6SCy Schubert     T_Unconfig = 450,              /* T_Unconfig  */
342*f5f40dd6SCy Schubert     T_Unpeer = 451,                /* T_Unpeer  */
343*f5f40dd6SCy Schubert     T_Version = 452,               /* T_Version  */
344*f5f40dd6SCy Schubert     T_WanderThreshold = 453,       /* T_WanderThreshold  */
345*f5f40dd6SCy Schubert     T_Week = 454,                  /* T_Week  */
346*f5f40dd6SCy Schubert     T_Wildcard = 455,              /* T_Wildcard  */
347*f5f40dd6SCy Schubert     T_Xleave = 456,                /* T_Xleave  */
348*f5f40dd6SCy Schubert     T_Xmtnonce = 457,              /* T_Xmtnonce  */
349*f5f40dd6SCy Schubert     T_Year = 458,                  /* T_Year  */
350*f5f40dd6SCy Schubert     T_Flag = 459,                  /* T_Flag  */
351*f5f40dd6SCy Schubert     T_EOC = 460,                   /* T_EOC  */
352*f5f40dd6SCy Schubert     T_Simulate = 461,              /* T_Simulate  */
353*f5f40dd6SCy Schubert     T_Beep_Delay = 462,            /* T_Beep_Delay  */
354*f5f40dd6SCy Schubert     T_Sim_Duration = 463,          /* T_Sim_Duration  */
355*f5f40dd6SCy Schubert     T_Server_Offset = 464,         /* T_Server_Offset  */
356*f5f40dd6SCy Schubert     T_Duration = 465,              /* T_Duration  */
357*f5f40dd6SCy Schubert     T_Freq_Offset = 466,           /* T_Freq_Offset  */
358*f5f40dd6SCy Schubert     T_Wander = 467,                /* T_Wander  */
359*f5f40dd6SCy Schubert     T_Jitter = 468,                /* T_Jitter  */
360*f5f40dd6SCy Schubert     T_Prop_Delay = 469,            /* T_Prop_Delay  */
361*f5f40dd6SCy Schubert     T_Proc_Delay = 470             /* T_Proc_Delay  */
3622b15cb3dSCy Schubert   };
363a466cc55SCy Schubert   typedef enum yytokentype yytoken_kind_t;
3642b15cb3dSCy Schubert #endif
365a466cc55SCy Schubert /* Token kinds.  */
366a466cc55SCy Schubert #define YYEMPTY -2
367a466cc55SCy Schubert #define YYEOF 0
368a466cc55SCy Schubert #define YYerror 256
369a466cc55SCy Schubert #define YYUNDEF 257
3702b15cb3dSCy Schubert #define T_Abbrev 258
3712b15cb3dSCy Schubert #define T_Age 259
3722b15cb3dSCy Schubert #define T_All 260
3732b15cb3dSCy Schubert #define T_Allan 261
3742b15cb3dSCy Schubert #define T_Allpeers 262
3752b15cb3dSCy Schubert #define T_Auth 263
3762b15cb3dSCy Schubert #define T_Autokey 264
3772b15cb3dSCy Schubert #define T_Automax 265
3782b15cb3dSCy Schubert #define T_Average 266
37909100258SXin LI #define T_Basedate 267
38009100258SXin LI #define T_Bclient 268
38109100258SXin LI #define T_Bcpollbstep 269
38209100258SXin LI #define T_Beacon 270
38309100258SXin LI #define T_Broadcast 271
38409100258SXin LI #define T_Broadcastclient 272
38509100258SXin LI #define T_Broadcastdelay 273
38609100258SXin LI #define T_Burst 274
38709100258SXin LI #define T_Calibrate 275
38809100258SXin LI #define T_Ceiling 276
3892d4e511cSCy Schubert #define T_Checkhash 277
3902d4e511cSCy Schubert #define T_Clockstats 278
3912d4e511cSCy Schubert #define T_Cohort 279
3922d4e511cSCy Schubert #define T_ControlKey 280
3932d4e511cSCy Schubert #define T_Crypto 281
3942d4e511cSCy Schubert #define T_Cryptostats 282
3952d4e511cSCy Schubert #define T_Ctl 283
3962d4e511cSCy Schubert #define T_Day 284
3972d4e511cSCy Schubert #define T_Default 285
398*f5f40dd6SCy Schubert #define T_Delrestrict 286
399*f5f40dd6SCy Schubert #define T_Device 287
400*f5f40dd6SCy Schubert #define T_Digest 288
401*f5f40dd6SCy Schubert #define T_Disable 289
402*f5f40dd6SCy Schubert #define T_Discard 290
403*f5f40dd6SCy Schubert #define T_Dispersion 291
404*f5f40dd6SCy Schubert #define T_Double 292
405*f5f40dd6SCy Schubert #define T_Driftfile 293
406*f5f40dd6SCy Schubert #define T_Drop 294
407*f5f40dd6SCy Schubert #define T_Dscp 295
408*f5f40dd6SCy Schubert #define T_Ellipsis 296
409*f5f40dd6SCy Schubert #define T_Enable 297
410*f5f40dd6SCy Schubert #define T_End 298
411*f5f40dd6SCy Schubert #define T_Epeer 299
412*f5f40dd6SCy Schubert #define T_False 300
413*f5f40dd6SCy Schubert #define T_File 301
414*f5f40dd6SCy Schubert #define T_Filegen 302
415*f5f40dd6SCy Schubert #define T_Filenum 303
416*f5f40dd6SCy Schubert #define T_Flag1 304
417*f5f40dd6SCy Schubert #define T_Flag2 305
418*f5f40dd6SCy Schubert #define T_Flag3 306
419*f5f40dd6SCy Schubert #define T_Flag4 307
420*f5f40dd6SCy Schubert #define T_Flake 308
421*f5f40dd6SCy Schubert #define T_Floor 309
422*f5f40dd6SCy Schubert #define T_Freq 310
423*f5f40dd6SCy Schubert #define T_Fudge 311
424*f5f40dd6SCy Schubert #define T_Fuzz 312
425*f5f40dd6SCy Schubert #define T_Host 313
426*f5f40dd6SCy Schubert #define T_Huffpuff 314
427*f5f40dd6SCy Schubert #define T_Iburst 315
428*f5f40dd6SCy Schubert #define T_Ident 316
429*f5f40dd6SCy Schubert #define T_Ignore 317
430*f5f40dd6SCy Schubert #define T_Ignorehash 318
431*f5f40dd6SCy Schubert #define T_Incalloc 319
432*f5f40dd6SCy Schubert #define T_Incmem 320
433*f5f40dd6SCy Schubert #define T_Initalloc 321
434*f5f40dd6SCy Schubert #define T_Initmem 322
435*f5f40dd6SCy Schubert #define T_Includefile 323
436*f5f40dd6SCy Schubert #define T_Integer 324
437*f5f40dd6SCy Schubert #define T_Interface 325
438*f5f40dd6SCy Schubert #define T_Intrange 326
439*f5f40dd6SCy Schubert #define T_Io 327
440*f5f40dd6SCy Schubert #define T_Ippeerlimit 328
441*f5f40dd6SCy Schubert #define T_Ipv4 329
442*f5f40dd6SCy Schubert #define T_Ipv4_flag 330
443*f5f40dd6SCy Schubert #define T_Ipv6 331
444*f5f40dd6SCy Schubert #define T_Ipv6_flag 332
445*f5f40dd6SCy Schubert #define T_Kernel 333
446*f5f40dd6SCy Schubert #define T_Key 334
447*f5f40dd6SCy Schubert #define T_Keys 335
448*f5f40dd6SCy Schubert #define T_Keysdir 336
449*f5f40dd6SCy Schubert #define T_Kod 337
450*f5f40dd6SCy Schubert #define T_Leapfile 338
451*f5f40dd6SCy Schubert #define T_Leapsmearinterval 339
452*f5f40dd6SCy Schubert #define T_Limited 340
453*f5f40dd6SCy Schubert #define T_Link 341
454*f5f40dd6SCy Schubert #define T_Listen 342
455*f5f40dd6SCy Schubert #define T_Logconfig 343
456*f5f40dd6SCy Schubert #define T_Logfile 344
457*f5f40dd6SCy Schubert #define T_Loopstats 345
458*f5f40dd6SCy Schubert #define T_Lowpriotrap 346
459*f5f40dd6SCy Schubert #define T_Manycastclient 347
460*f5f40dd6SCy Schubert #define T_Manycastserver 348
461*f5f40dd6SCy Schubert #define T_Mask 349
462*f5f40dd6SCy Schubert #define T_Maxage 350
463*f5f40dd6SCy Schubert #define T_Maxclock 351
464*f5f40dd6SCy Schubert #define T_Maxdepth 352
465*f5f40dd6SCy Schubert #define T_Maxdist 353
466*f5f40dd6SCy Schubert #define T_Maxmem 354
467*f5f40dd6SCy Schubert #define T_Maxpoll 355
468*f5f40dd6SCy Schubert #define T_Mdnstries 356
469*f5f40dd6SCy Schubert #define T_Mem 357
470*f5f40dd6SCy Schubert #define T_Memlock 358
471*f5f40dd6SCy Schubert #define T_Minclock 359
472*f5f40dd6SCy Schubert #define T_Mindepth 360
473*f5f40dd6SCy Schubert #define T_Mindist 361
474*f5f40dd6SCy Schubert #define T_Minimum 362
475*f5f40dd6SCy Schubert #define T_Minjitter 363
476*f5f40dd6SCy Schubert #define T_Minpoll 364
477*f5f40dd6SCy Schubert #define T_Minsane 365
478*f5f40dd6SCy Schubert #define T_Mode 366
479*f5f40dd6SCy Schubert #define T_Mode7 367
480*f5f40dd6SCy Schubert #define T_Monitor 368
481*f5f40dd6SCy Schubert #define T_Month 369
482*f5f40dd6SCy Schubert #define T_Mru 370
483*f5f40dd6SCy Schubert #define T_Mssntp 371
484*f5f40dd6SCy Schubert #define T_Multicastclient 372
485*f5f40dd6SCy Schubert #define T_Nic 373
486*f5f40dd6SCy Schubert #define T_Nolink 374
487*f5f40dd6SCy Schubert #define T_Nomodify 375
488*f5f40dd6SCy Schubert #define T_Nomrulist 376
489*f5f40dd6SCy Schubert #define T_None 377
490*f5f40dd6SCy Schubert #define T_Nonvolatile 378
491*f5f40dd6SCy Schubert #define T_Noepeer 379
492*f5f40dd6SCy Schubert #define T_Nopeer 380
493*f5f40dd6SCy Schubert #define T_Noquery 381
494*f5f40dd6SCy Schubert #define T_Noselect 382
495*f5f40dd6SCy Schubert #define T_Noserve 383
496*f5f40dd6SCy Schubert #define T_Notrap 384
497*f5f40dd6SCy Schubert #define T_Notrust 385
498*f5f40dd6SCy Schubert #define T_Ntp 386
499*f5f40dd6SCy Schubert #define T_Ntpport 387
500*f5f40dd6SCy Schubert #define T_NtpSignDsocket 388
501*f5f40dd6SCy Schubert #define T_Orphan 389
502*f5f40dd6SCy Schubert #define T_Orphanwait 390
503*f5f40dd6SCy Schubert #define T_PCEdigest 391
504*f5f40dd6SCy Schubert #define T_Panic 392
505*f5f40dd6SCy Schubert #define T_Peer 393
506*f5f40dd6SCy Schubert #define T_Peerstats 394
507*f5f40dd6SCy Schubert #define T_Phone 395
508*f5f40dd6SCy Schubert #define T_Pid 396
509*f5f40dd6SCy Schubert #define T_Pidfile 397
510*f5f40dd6SCy Schubert #define T_Poll 398
511*f5f40dd6SCy Schubert #define T_PollSkewList 399
512*f5f40dd6SCy Schubert #define T_Pool 400
513*f5f40dd6SCy Schubert #define T_Port 401
514*f5f40dd6SCy Schubert #define T_PpsData 402
515*f5f40dd6SCy Schubert #define T_Preempt 403
516*f5f40dd6SCy Schubert #define T_Prefer 404
517*f5f40dd6SCy Schubert #define T_Protostats 405
518*f5f40dd6SCy Schubert #define T_Pw 406
519*f5f40dd6SCy Schubert #define T_Randfile 407
520*f5f40dd6SCy Schubert #define T_Rawstats 408
521*f5f40dd6SCy Schubert #define T_Refid 409
522*f5f40dd6SCy Schubert #define T_Requestkey 410
523*f5f40dd6SCy Schubert #define T_Reset 411
524*f5f40dd6SCy Schubert #define T_Restrict 412
525*f5f40dd6SCy Schubert #define T_Revoke 413
526*f5f40dd6SCy Schubert #define T_Rlimit 414
527*f5f40dd6SCy Schubert #define T_Saveconfigdir 415
528*f5f40dd6SCy Schubert #define T_Server 416
529*f5f40dd6SCy Schubert #define T_Serverresponse 417
530*f5f40dd6SCy Schubert #define T_ServerresponseFuzz 418
531*f5f40dd6SCy Schubert #define T_Setvar 419
532*f5f40dd6SCy Schubert #define T_Source 420
533*f5f40dd6SCy Schubert #define T_Stacksize 421
534*f5f40dd6SCy Schubert #define T_Statistics 422
535*f5f40dd6SCy Schubert #define T_Stats 423
536*f5f40dd6SCy Schubert #define T_Statsdir 424
537*f5f40dd6SCy Schubert #define T_Step 425
538*f5f40dd6SCy Schubert #define T_Stepback 426
539*f5f40dd6SCy Schubert #define T_Stepfwd 427
540*f5f40dd6SCy Schubert #define T_Stepout 428
541*f5f40dd6SCy Schubert #define T_Stratum 429
542*f5f40dd6SCy Schubert #define T_String 430
543*f5f40dd6SCy Schubert #define T_Sys 431
544*f5f40dd6SCy Schubert #define T_Sysstats 432
545*f5f40dd6SCy Schubert #define T_Tick 433
546*f5f40dd6SCy Schubert #define T_Time1 434
547*f5f40dd6SCy Schubert #define T_Time2 435
548*f5f40dd6SCy Schubert #define T_TimeData 436
549*f5f40dd6SCy Schubert #define T_Timer 437
550*f5f40dd6SCy Schubert #define T_Timingstats 438
551*f5f40dd6SCy Schubert #define T_Tinker 439
552*f5f40dd6SCy Schubert #define T_Tos 440
553*f5f40dd6SCy Schubert #define T_Trap 441
554*f5f40dd6SCy Schubert #define T_True 442
555*f5f40dd6SCy Schubert #define T_Trustedkey 443
556*f5f40dd6SCy Schubert #define T_Ttl 444
557*f5f40dd6SCy Schubert #define T_Type 445
558*f5f40dd6SCy Schubert #define T_U_int 446
559*f5f40dd6SCy Schubert #define T_UEcrypto 447
560*f5f40dd6SCy Schubert #define T_UEcryptonak 448
561*f5f40dd6SCy Schubert #define T_UEdigest 449
562*f5f40dd6SCy Schubert #define T_Unconfig 450
563*f5f40dd6SCy Schubert #define T_Unpeer 451
564*f5f40dd6SCy Schubert #define T_Version 452
565*f5f40dd6SCy Schubert #define T_WanderThreshold 453
566*f5f40dd6SCy Schubert #define T_Week 454
567*f5f40dd6SCy Schubert #define T_Wildcard 455
568*f5f40dd6SCy Schubert #define T_Xleave 456
569*f5f40dd6SCy Schubert #define T_Xmtnonce 457
570*f5f40dd6SCy Schubert #define T_Year 458
571*f5f40dd6SCy Schubert #define T_Flag 459
572*f5f40dd6SCy Schubert #define T_EOC 460
573*f5f40dd6SCy Schubert #define T_Simulate 461
574*f5f40dd6SCy Schubert #define T_Beep_Delay 462
575*f5f40dd6SCy Schubert #define T_Sim_Duration 463
576*f5f40dd6SCy Schubert #define T_Server_Offset 464
577*f5f40dd6SCy Schubert #define T_Duration 465
578*f5f40dd6SCy Schubert #define T_Freq_Offset 466
579*f5f40dd6SCy Schubert #define T_Wander 467
580*f5f40dd6SCy Schubert #define T_Jitter 468
581*f5f40dd6SCy Schubert #define T_Prop_Delay 469
582*f5f40dd6SCy Schubert #define T_Proc_Delay 470
5832b15cb3dSCy Schubert 
584e27abb66SXin LI /* Value type.  */
5852b15cb3dSCy Schubert #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
586e27abb66SXin LI union YYSTYPE
5872b15cb3dSCy Schubert {
588*f5f40dd6SCy Schubert #line 52 "../../ntpd/ntp_parser.y"
5892b15cb3dSCy Schubert 
5902b15cb3dSCy Schubert 	char *			String;
5912b15cb3dSCy Schubert 	double			Double;
5922b15cb3dSCy Schubert 	int			Integer;
5932b15cb3dSCy Schubert 	unsigned		U_int;
5942b15cb3dSCy Schubert 	gen_fifo *		Generic_fifo;
5952b15cb3dSCy Schubert 	attr_val *		Attr_val;
5962b15cb3dSCy Schubert 	attr_val_fifo *		Attr_val_fifo;
5972b15cb3dSCy Schubert 	int_fifo *		Int_fifo;
5982b15cb3dSCy Schubert 	string_fifo *		String_fifo;
5992b15cb3dSCy Schubert 	address_node *		Address_node;
6002b15cb3dSCy Schubert 	address_fifo *		Address_fifo;
6012b15cb3dSCy Schubert 	setvar_node *		Set_var;
6022b15cb3dSCy Schubert 	server_info *		Sim_server;
6032b15cb3dSCy Schubert 	server_info_fifo *	Sim_server_fifo;
6042b15cb3dSCy Schubert 	script_info *		Sim_script;
6052b15cb3dSCy Schubert 	script_info_fifo *	Sim_script_fifo;
6062b15cb3dSCy Schubert 
607*f5f40dd6SCy Schubert #line 608 "ntp_parser.c"
60868ba7e87SXin LI 
609a466cc55SCy Schubert };
610e27abb66SXin LI typedef union YYSTYPE YYSTYPE;
6112b15cb3dSCy Schubert # define YYSTYPE_IS_TRIVIAL 1
6122b15cb3dSCy Schubert # define YYSTYPE_IS_DECLARED 1
6132b15cb3dSCy Schubert #endif
6142b15cb3dSCy Schubert 
615e27abb66SXin LI 
6162b15cb3dSCy Schubert extern YYSTYPE yylval;
6172b15cb3dSCy Schubert 
618*f5f40dd6SCy Schubert 
619276da39aSCy Schubert int yyparse (void);
6202b15cb3dSCy Schubert 
621*f5f40dd6SCy Schubert 
622*f5f40dd6SCy Schubert #endif /* !YY_YY_NTP_PARSER_H_INCLUDED  */
623a466cc55SCy Schubert /* Symbol kind.  */
624a466cc55SCy Schubert enum yysymbol_kind_t
625a466cc55SCy Schubert {
626a466cc55SCy Schubert   YYSYMBOL_YYEMPTY = -2,
627a466cc55SCy Schubert   YYSYMBOL_YYEOF = 0,                      /* "end of file"  */
628a466cc55SCy Schubert   YYSYMBOL_YYerror = 1,                    /* error  */
629a466cc55SCy Schubert   YYSYMBOL_YYUNDEF = 2,                    /* "invalid token"  */
630a466cc55SCy Schubert   YYSYMBOL_T_Abbrev = 3,                   /* T_Abbrev  */
631a466cc55SCy Schubert   YYSYMBOL_T_Age = 4,                      /* T_Age  */
632a466cc55SCy Schubert   YYSYMBOL_T_All = 5,                      /* T_All  */
633a466cc55SCy Schubert   YYSYMBOL_T_Allan = 6,                    /* T_Allan  */
634a466cc55SCy Schubert   YYSYMBOL_T_Allpeers = 7,                 /* T_Allpeers  */
635a466cc55SCy Schubert   YYSYMBOL_T_Auth = 8,                     /* T_Auth  */
636a466cc55SCy Schubert   YYSYMBOL_T_Autokey = 9,                  /* T_Autokey  */
637a466cc55SCy Schubert   YYSYMBOL_T_Automax = 10,                 /* T_Automax  */
638a466cc55SCy Schubert   YYSYMBOL_T_Average = 11,                 /* T_Average  */
639a466cc55SCy Schubert   YYSYMBOL_T_Basedate = 12,                /* T_Basedate  */
640a466cc55SCy Schubert   YYSYMBOL_T_Bclient = 13,                 /* T_Bclient  */
641a466cc55SCy Schubert   YYSYMBOL_T_Bcpollbstep = 14,             /* T_Bcpollbstep  */
642a466cc55SCy Schubert   YYSYMBOL_T_Beacon = 15,                  /* T_Beacon  */
643a466cc55SCy Schubert   YYSYMBOL_T_Broadcast = 16,               /* T_Broadcast  */
644a466cc55SCy Schubert   YYSYMBOL_T_Broadcastclient = 17,         /* T_Broadcastclient  */
645a466cc55SCy Schubert   YYSYMBOL_T_Broadcastdelay = 18,          /* T_Broadcastdelay  */
646a466cc55SCy Schubert   YYSYMBOL_T_Burst = 19,                   /* T_Burst  */
647a466cc55SCy Schubert   YYSYMBOL_T_Calibrate = 20,               /* T_Calibrate  */
648a466cc55SCy Schubert   YYSYMBOL_T_Ceiling = 21,                 /* T_Ceiling  */
649a466cc55SCy Schubert   YYSYMBOL_T_Checkhash = 22,               /* T_Checkhash  */
650a466cc55SCy Schubert   YYSYMBOL_T_Clockstats = 23,              /* T_Clockstats  */
651a466cc55SCy Schubert   YYSYMBOL_T_Cohort = 24,                  /* T_Cohort  */
652a466cc55SCy Schubert   YYSYMBOL_T_ControlKey = 25,              /* T_ControlKey  */
653a466cc55SCy Schubert   YYSYMBOL_T_Crypto = 26,                  /* T_Crypto  */
654a466cc55SCy Schubert   YYSYMBOL_T_Cryptostats = 27,             /* T_Cryptostats  */
655a466cc55SCy Schubert   YYSYMBOL_T_Ctl = 28,                     /* T_Ctl  */
656a466cc55SCy Schubert   YYSYMBOL_T_Day = 29,                     /* T_Day  */
657a466cc55SCy Schubert   YYSYMBOL_T_Default = 30,                 /* T_Default  */
658*f5f40dd6SCy Schubert   YYSYMBOL_T_Delrestrict = 31,             /* T_Delrestrict  */
659*f5f40dd6SCy Schubert   YYSYMBOL_T_Device = 32,                  /* T_Device  */
660*f5f40dd6SCy Schubert   YYSYMBOL_T_Digest = 33,                  /* T_Digest  */
661*f5f40dd6SCy Schubert   YYSYMBOL_T_Disable = 34,                 /* T_Disable  */
662*f5f40dd6SCy Schubert   YYSYMBOL_T_Discard = 35,                 /* T_Discard  */
663*f5f40dd6SCy Schubert   YYSYMBOL_T_Dispersion = 36,              /* T_Dispersion  */
664*f5f40dd6SCy Schubert   YYSYMBOL_T_Double = 37,                  /* T_Double  */
665*f5f40dd6SCy Schubert   YYSYMBOL_T_Driftfile = 38,               /* T_Driftfile  */
666*f5f40dd6SCy Schubert   YYSYMBOL_T_Drop = 39,                    /* T_Drop  */
667*f5f40dd6SCy Schubert   YYSYMBOL_T_Dscp = 40,                    /* T_Dscp  */
668*f5f40dd6SCy Schubert   YYSYMBOL_T_Ellipsis = 41,                /* T_Ellipsis  */
669*f5f40dd6SCy Schubert   YYSYMBOL_T_Enable = 42,                  /* T_Enable  */
670*f5f40dd6SCy Schubert   YYSYMBOL_T_End = 43,                     /* T_End  */
671*f5f40dd6SCy Schubert   YYSYMBOL_T_Epeer = 44,                   /* T_Epeer  */
672*f5f40dd6SCy Schubert   YYSYMBOL_T_False = 45,                   /* T_False  */
673*f5f40dd6SCy Schubert   YYSYMBOL_T_File = 46,                    /* T_File  */
674*f5f40dd6SCy Schubert   YYSYMBOL_T_Filegen = 47,                 /* T_Filegen  */
675*f5f40dd6SCy Schubert   YYSYMBOL_T_Filenum = 48,                 /* T_Filenum  */
676*f5f40dd6SCy Schubert   YYSYMBOL_T_Flag1 = 49,                   /* T_Flag1  */
677*f5f40dd6SCy Schubert   YYSYMBOL_T_Flag2 = 50,                   /* T_Flag2  */
678*f5f40dd6SCy Schubert   YYSYMBOL_T_Flag3 = 51,                   /* T_Flag3  */
679*f5f40dd6SCy Schubert   YYSYMBOL_T_Flag4 = 52,                   /* T_Flag4  */
680*f5f40dd6SCy Schubert   YYSYMBOL_T_Flake = 53,                   /* T_Flake  */
681*f5f40dd6SCy Schubert   YYSYMBOL_T_Floor = 54,                   /* T_Floor  */
682*f5f40dd6SCy Schubert   YYSYMBOL_T_Freq = 55,                    /* T_Freq  */
683*f5f40dd6SCy Schubert   YYSYMBOL_T_Fudge = 56,                   /* T_Fudge  */
684*f5f40dd6SCy Schubert   YYSYMBOL_T_Fuzz = 57,                    /* T_Fuzz  */
685*f5f40dd6SCy Schubert   YYSYMBOL_T_Host = 58,                    /* T_Host  */
686*f5f40dd6SCy Schubert   YYSYMBOL_T_Huffpuff = 59,                /* T_Huffpuff  */
687*f5f40dd6SCy Schubert   YYSYMBOL_T_Iburst = 60,                  /* T_Iburst  */
688*f5f40dd6SCy Schubert   YYSYMBOL_T_Ident = 61,                   /* T_Ident  */
689*f5f40dd6SCy Schubert   YYSYMBOL_T_Ignore = 62,                  /* T_Ignore  */
690*f5f40dd6SCy Schubert   YYSYMBOL_T_Ignorehash = 63,              /* T_Ignorehash  */
691*f5f40dd6SCy Schubert   YYSYMBOL_T_Incalloc = 64,                /* T_Incalloc  */
692*f5f40dd6SCy Schubert   YYSYMBOL_T_Incmem = 65,                  /* T_Incmem  */
693*f5f40dd6SCy Schubert   YYSYMBOL_T_Initalloc = 66,               /* T_Initalloc  */
694*f5f40dd6SCy Schubert   YYSYMBOL_T_Initmem = 67,                 /* T_Initmem  */
695*f5f40dd6SCy Schubert   YYSYMBOL_T_Includefile = 68,             /* T_Includefile  */
696*f5f40dd6SCy Schubert   YYSYMBOL_T_Integer = 69,                 /* T_Integer  */
697*f5f40dd6SCy Schubert   YYSYMBOL_T_Interface = 70,               /* T_Interface  */
698*f5f40dd6SCy Schubert   YYSYMBOL_T_Intrange = 71,                /* T_Intrange  */
699*f5f40dd6SCy Schubert   YYSYMBOL_T_Io = 72,                      /* T_Io  */
700*f5f40dd6SCy Schubert   YYSYMBOL_T_Ippeerlimit = 73,             /* T_Ippeerlimit  */
701*f5f40dd6SCy Schubert   YYSYMBOL_T_Ipv4 = 74,                    /* T_Ipv4  */
702*f5f40dd6SCy Schubert   YYSYMBOL_T_Ipv4_flag = 75,               /* T_Ipv4_flag  */
703*f5f40dd6SCy Schubert   YYSYMBOL_T_Ipv6 = 76,                    /* T_Ipv6  */
704*f5f40dd6SCy Schubert   YYSYMBOL_T_Ipv6_flag = 77,               /* T_Ipv6_flag  */
705*f5f40dd6SCy Schubert   YYSYMBOL_T_Kernel = 78,                  /* T_Kernel  */
706*f5f40dd6SCy Schubert   YYSYMBOL_T_Key = 79,                     /* T_Key  */
707*f5f40dd6SCy Schubert   YYSYMBOL_T_Keys = 80,                    /* T_Keys  */
708*f5f40dd6SCy Schubert   YYSYMBOL_T_Keysdir = 81,                 /* T_Keysdir  */
709*f5f40dd6SCy Schubert   YYSYMBOL_T_Kod = 82,                     /* T_Kod  */
710*f5f40dd6SCy Schubert   YYSYMBOL_T_Leapfile = 83,                /* T_Leapfile  */
711*f5f40dd6SCy Schubert   YYSYMBOL_T_Leapsmearinterval = 84,       /* T_Leapsmearinterval  */
712*f5f40dd6SCy Schubert   YYSYMBOL_T_Limited = 85,                 /* T_Limited  */
713*f5f40dd6SCy Schubert   YYSYMBOL_T_Link = 86,                    /* T_Link  */
714*f5f40dd6SCy Schubert   YYSYMBOL_T_Listen = 87,                  /* T_Listen  */
715*f5f40dd6SCy Schubert   YYSYMBOL_T_Logconfig = 88,               /* T_Logconfig  */
716*f5f40dd6SCy Schubert   YYSYMBOL_T_Logfile = 89,                 /* T_Logfile  */
717*f5f40dd6SCy Schubert   YYSYMBOL_T_Loopstats = 90,               /* T_Loopstats  */
718*f5f40dd6SCy Schubert   YYSYMBOL_T_Lowpriotrap = 91,             /* T_Lowpriotrap  */
719*f5f40dd6SCy Schubert   YYSYMBOL_T_Manycastclient = 92,          /* T_Manycastclient  */
720*f5f40dd6SCy Schubert   YYSYMBOL_T_Manycastserver = 93,          /* T_Manycastserver  */
721*f5f40dd6SCy Schubert   YYSYMBOL_T_Mask = 94,                    /* T_Mask  */
722*f5f40dd6SCy Schubert   YYSYMBOL_T_Maxage = 95,                  /* T_Maxage  */
723*f5f40dd6SCy Schubert   YYSYMBOL_T_Maxclock = 96,                /* T_Maxclock  */
724*f5f40dd6SCy Schubert   YYSYMBOL_T_Maxdepth = 97,                /* T_Maxdepth  */
725*f5f40dd6SCy Schubert   YYSYMBOL_T_Maxdist = 98,                 /* T_Maxdist  */
726*f5f40dd6SCy Schubert   YYSYMBOL_T_Maxmem = 99,                  /* T_Maxmem  */
727*f5f40dd6SCy Schubert   YYSYMBOL_T_Maxpoll = 100,                /* T_Maxpoll  */
728*f5f40dd6SCy Schubert   YYSYMBOL_T_Mdnstries = 101,              /* T_Mdnstries  */
729*f5f40dd6SCy Schubert   YYSYMBOL_T_Mem = 102,                    /* T_Mem  */
730*f5f40dd6SCy Schubert   YYSYMBOL_T_Memlock = 103,                /* T_Memlock  */
731*f5f40dd6SCy Schubert   YYSYMBOL_T_Minclock = 104,               /* T_Minclock  */
732*f5f40dd6SCy Schubert   YYSYMBOL_T_Mindepth = 105,               /* T_Mindepth  */
733*f5f40dd6SCy Schubert   YYSYMBOL_T_Mindist = 106,                /* T_Mindist  */
734*f5f40dd6SCy Schubert   YYSYMBOL_T_Minimum = 107,                /* T_Minimum  */
735*f5f40dd6SCy Schubert   YYSYMBOL_T_Minjitter = 108,              /* T_Minjitter  */
736*f5f40dd6SCy Schubert   YYSYMBOL_T_Minpoll = 109,                /* T_Minpoll  */
737*f5f40dd6SCy Schubert   YYSYMBOL_T_Minsane = 110,                /* T_Minsane  */
738*f5f40dd6SCy Schubert   YYSYMBOL_T_Mode = 111,                   /* T_Mode  */
739*f5f40dd6SCy Schubert   YYSYMBOL_T_Mode7 = 112,                  /* T_Mode7  */
740*f5f40dd6SCy Schubert   YYSYMBOL_T_Monitor = 113,                /* T_Monitor  */
741*f5f40dd6SCy Schubert   YYSYMBOL_T_Month = 114,                  /* T_Month  */
742*f5f40dd6SCy Schubert   YYSYMBOL_T_Mru = 115,                    /* T_Mru  */
743*f5f40dd6SCy Schubert   YYSYMBOL_T_Mssntp = 116,                 /* T_Mssntp  */
744*f5f40dd6SCy Schubert   YYSYMBOL_T_Multicastclient = 117,        /* T_Multicastclient  */
745*f5f40dd6SCy Schubert   YYSYMBOL_T_Nic = 118,                    /* T_Nic  */
746*f5f40dd6SCy Schubert   YYSYMBOL_T_Nolink = 119,                 /* T_Nolink  */
747*f5f40dd6SCy Schubert   YYSYMBOL_T_Nomodify = 120,               /* T_Nomodify  */
748*f5f40dd6SCy Schubert   YYSYMBOL_T_Nomrulist = 121,              /* T_Nomrulist  */
749*f5f40dd6SCy Schubert   YYSYMBOL_T_None = 122,                   /* T_None  */
750*f5f40dd6SCy Schubert   YYSYMBOL_T_Nonvolatile = 123,            /* T_Nonvolatile  */
751*f5f40dd6SCy Schubert   YYSYMBOL_T_Noepeer = 124,                /* T_Noepeer  */
752*f5f40dd6SCy Schubert   YYSYMBOL_T_Nopeer = 125,                 /* T_Nopeer  */
753*f5f40dd6SCy Schubert   YYSYMBOL_T_Noquery = 126,                /* T_Noquery  */
754*f5f40dd6SCy Schubert   YYSYMBOL_T_Noselect = 127,               /* T_Noselect  */
755*f5f40dd6SCy Schubert   YYSYMBOL_T_Noserve = 128,                /* T_Noserve  */
756*f5f40dd6SCy Schubert   YYSYMBOL_T_Notrap = 129,                 /* T_Notrap  */
757*f5f40dd6SCy Schubert   YYSYMBOL_T_Notrust = 130,                /* T_Notrust  */
758*f5f40dd6SCy Schubert   YYSYMBOL_T_Ntp = 131,                    /* T_Ntp  */
759*f5f40dd6SCy Schubert   YYSYMBOL_T_Ntpport = 132,                /* T_Ntpport  */
760*f5f40dd6SCy Schubert   YYSYMBOL_T_NtpSignDsocket = 133,         /* T_NtpSignDsocket  */
761*f5f40dd6SCy Schubert   YYSYMBOL_T_Orphan = 134,                 /* T_Orphan  */
762*f5f40dd6SCy Schubert   YYSYMBOL_T_Orphanwait = 135,             /* T_Orphanwait  */
763*f5f40dd6SCy Schubert   YYSYMBOL_T_PCEdigest = 136,              /* T_PCEdigest  */
764*f5f40dd6SCy Schubert   YYSYMBOL_T_Panic = 137,                  /* T_Panic  */
765*f5f40dd6SCy Schubert   YYSYMBOL_T_Peer = 138,                   /* T_Peer  */
766*f5f40dd6SCy Schubert   YYSYMBOL_T_Peerstats = 139,              /* T_Peerstats  */
767*f5f40dd6SCy Schubert   YYSYMBOL_T_Phone = 140,                  /* T_Phone  */
768*f5f40dd6SCy Schubert   YYSYMBOL_T_Pid = 141,                    /* T_Pid  */
769*f5f40dd6SCy Schubert   YYSYMBOL_T_Pidfile = 142,                /* T_Pidfile  */
770*f5f40dd6SCy Schubert   YYSYMBOL_T_Poll = 143,                   /* T_Poll  */
771*f5f40dd6SCy Schubert   YYSYMBOL_T_PollSkewList = 144,           /* T_PollSkewList  */
772*f5f40dd6SCy Schubert   YYSYMBOL_T_Pool = 145,                   /* T_Pool  */
773*f5f40dd6SCy Schubert   YYSYMBOL_T_Port = 146,                   /* T_Port  */
774*f5f40dd6SCy Schubert   YYSYMBOL_T_PpsData = 147,                /* T_PpsData  */
775*f5f40dd6SCy Schubert   YYSYMBOL_T_Preempt = 148,                /* T_Preempt  */
776*f5f40dd6SCy Schubert   YYSYMBOL_T_Prefer = 149,                 /* T_Prefer  */
777*f5f40dd6SCy Schubert   YYSYMBOL_T_Protostats = 150,             /* T_Protostats  */
778*f5f40dd6SCy Schubert   YYSYMBOL_T_Pw = 151,                     /* T_Pw  */
779*f5f40dd6SCy Schubert   YYSYMBOL_T_Randfile = 152,               /* T_Randfile  */
780*f5f40dd6SCy Schubert   YYSYMBOL_T_Rawstats = 153,               /* T_Rawstats  */
781*f5f40dd6SCy Schubert   YYSYMBOL_T_Refid = 154,                  /* T_Refid  */
782*f5f40dd6SCy Schubert   YYSYMBOL_T_Requestkey = 155,             /* T_Requestkey  */
783*f5f40dd6SCy Schubert   YYSYMBOL_T_Reset = 156,                  /* T_Reset  */
784*f5f40dd6SCy Schubert   YYSYMBOL_T_Restrict = 157,               /* T_Restrict  */
785*f5f40dd6SCy Schubert   YYSYMBOL_T_Revoke = 158,                 /* T_Revoke  */
786*f5f40dd6SCy Schubert   YYSYMBOL_T_Rlimit = 159,                 /* T_Rlimit  */
787*f5f40dd6SCy Schubert   YYSYMBOL_T_Saveconfigdir = 160,          /* T_Saveconfigdir  */
788*f5f40dd6SCy Schubert   YYSYMBOL_T_Server = 161,                 /* T_Server  */
789*f5f40dd6SCy Schubert   YYSYMBOL_T_Serverresponse = 162,         /* T_Serverresponse  */
790*f5f40dd6SCy Schubert   YYSYMBOL_T_ServerresponseFuzz = 163,     /* T_ServerresponseFuzz  */
791*f5f40dd6SCy Schubert   YYSYMBOL_T_Setvar = 164,                 /* T_Setvar  */
792*f5f40dd6SCy Schubert   YYSYMBOL_T_Source = 165,                 /* T_Source  */
793*f5f40dd6SCy Schubert   YYSYMBOL_T_Stacksize = 166,              /* T_Stacksize  */
794*f5f40dd6SCy Schubert   YYSYMBOL_T_Statistics = 167,             /* T_Statistics  */
795*f5f40dd6SCy Schubert   YYSYMBOL_T_Stats = 168,                  /* T_Stats  */
796*f5f40dd6SCy Schubert   YYSYMBOL_T_Statsdir = 169,               /* T_Statsdir  */
797*f5f40dd6SCy Schubert   YYSYMBOL_T_Step = 170,                   /* T_Step  */
798*f5f40dd6SCy Schubert   YYSYMBOL_T_Stepback = 171,               /* T_Stepback  */
799*f5f40dd6SCy Schubert   YYSYMBOL_T_Stepfwd = 172,                /* T_Stepfwd  */
800*f5f40dd6SCy Schubert   YYSYMBOL_T_Stepout = 173,                /* T_Stepout  */
801*f5f40dd6SCy Schubert   YYSYMBOL_T_Stratum = 174,                /* T_Stratum  */
802*f5f40dd6SCy Schubert   YYSYMBOL_T_String = 175,                 /* T_String  */
803*f5f40dd6SCy Schubert   YYSYMBOL_T_Sys = 176,                    /* T_Sys  */
804*f5f40dd6SCy Schubert   YYSYMBOL_T_Sysstats = 177,               /* T_Sysstats  */
805*f5f40dd6SCy Schubert   YYSYMBOL_T_Tick = 178,                   /* T_Tick  */
806*f5f40dd6SCy Schubert   YYSYMBOL_T_Time1 = 179,                  /* T_Time1  */
807*f5f40dd6SCy Schubert   YYSYMBOL_T_Time2 = 180,                  /* T_Time2  */
808*f5f40dd6SCy Schubert   YYSYMBOL_T_TimeData = 181,               /* T_TimeData  */
809*f5f40dd6SCy Schubert   YYSYMBOL_T_Timer = 182,                  /* T_Timer  */
810*f5f40dd6SCy Schubert   YYSYMBOL_T_Timingstats = 183,            /* T_Timingstats  */
811*f5f40dd6SCy Schubert   YYSYMBOL_T_Tinker = 184,                 /* T_Tinker  */
812*f5f40dd6SCy Schubert   YYSYMBOL_T_Tos = 185,                    /* T_Tos  */
813*f5f40dd6SCy Schubert   YYSYMBOL_T_Trap = 186,                   /* T_Trap  */
814*f5f40dd6SCy Schubert   YYSYMBOL_T_True = 187,                   /* T_True  */
815*f5f40dd6SCy Schubert   YYSYMBOL_T_Trustedkey = 188,             /* T_Trustedkey  */
816*f5f40dd6SCy Schubert   YYSYMBOL_T_Ttl = 189,                    /* T_Ttl  */
817*f5f40dd6SCy Schubert   YYSYMBOL_T_Type = 190,                   /* T_Type  */
818*f5f40dd6SCy Schubert   YYSYMBOL_T_U_int = 191,                  /* T_U_int  */
819*f5f40dd6SCy Schubert   YYSYMBOL_T_UEcrypto = 192,               /* T_UEcrypto  */
820*f5f40dd6SCy Schubert   YYSYMBOL_T_UEcryptonak = 193,            /* T_UEcryptonak  */
821*f5f40dd6SCy Schubert   YYSYMBOL_T_UEdigest = 194,               /* T_UEdigest  */
822*f5f40dd6SCy Schubert   YYSYMBOL_T_Unconfig = 195,               /* T_Unconfig  */
823*f5f40dd6SCy Schubert   YYSYMBOL_T_Unpeer = 196,                 /* T_Unpeer  */
824*f5f40dd6SCy Schubert   YYSYMBOL_T_Version = 197,                /* T_Version  */
825*f5f40dd6SCy Schubert   YYSYMBOL_T_WanderThreshold = 198,        /* T_WanderThreshold  */
826*f5f40dd6SCy Schubert   YYSYMBOL_T_Week = 199,                   /* T_Week  */
827*f5f40dd6SCy Schubert   YYSYMBOL_T_Wildcard = 200,               /* T_Wildcard  */
828*f5f40dd6SCy Schubert   YYSYMBOL_T_Xleave = 201,                 /* T_Xleave  */
829*f5f40dd6SCy Schubert   YYSYMBOL_T_Xmtnonce = 202,               /* T_Xmtnonce  */
830*f5f40dd6SCy Schubert   YYSYMBOL_T_Year = 203,                   /* T_Year  */
831*f5f40dd6SCy Schubert   YYSYMBOL_T_Flag = 204,                   /* T_Flag  */
832*f5f40dd6SCy Schubert   YYSYMBOL_T_EOC = 205,                    /* T_EOC  */
833*f5f40dd6SCy Schubert   YYSYMBOL_T_Simulate = 206,               /* T_Simulate  */
834*f5f40dd6SCy Schubert   YYSYMBOL_T_Beep_Delay = 207,             /* T_Beep_Delay  */
835*f5f40dd6SCy Schubert   YYSYMBOL_T_Sim_Duration = 208,           /* T_Sim_Duration  */
836*f5f40dd6SCy Schubert   YYSYMBOL_T_Server_Offset = 209,          /* T_Server_Offset  */
837*f5f40dd6SCy Schubert   YYSYMBOL_T_Duration = 210,               /* T_Duration  */
838*f5f40dd6SCy Schubert   YYSYMBOL_T_Freq_Offset = 211,            /* T_Freq_Offset  */
839*f5f40dd6SCy Schubert   YYSYMBOL_T_Wander = 212,                 /* T_Wander  */
840*f5f40dd6SCy Schubert   YYSYMBOL_T_Jitter = 213,                 /* T_Jitter  */
841*f5f40dd6SCy Schubert   YYSYMBOL_T_Prop_Delay = 214,             /* T_Prop_Delay  */
842*f5f40dd6SCy Schubert   YYSYMBOL_T_Proc_Delay = 215,             /* T_Proc_Delay  */
843*f5f40dd6SCy Schubert   YYSYMBOL_216_ = 216,                     /* '|'  */
844*f5f40dd6SCy Schubert   YYSYMBOL_217_ = 217,                     /* '='  */
845*f5f40dd6SCy Schubert   YYSYMBOL_218_ = 218,                     /* '('  */
846*f5f40dd6SCy Schubert   YYSYMBOL_219_ = 219,                     /* ')'  */
847*f5f40dd6SCy Schubert   YYSYMBOL_220_ = 220,                     /* '{'  */
848*f5f40dd6SCy Schubert   YYSYMBOL_221_ = 221,                     /* '}'  */
849*f5f40dd6SCy Schubert   YYSYMBOL_YYACCEPT = 222,                 /* $accept  */
850*f5f40dd6SCy Schubert   YYSYMBOL_configuration = 223,            /* configuration  */
851*f5f40dd6SCy Schubert   YYSYMBOL_command_list = 224,             /* command_list  */
852*f5f40dd6SCy Schubert   YYSYMBOL_command = 225,                  /* command  */
853*f5f40dd6SCy Schubert   YYSYMBOL_server_command = 226,           /* server_command  */
854*f5f40dd6SCy Schubert   YYSYMBOL_client_type = 227,              /* client_type  */
855*f5f40dd6SCy Schubert   YYSYMBOL_address = 228,                  /* address  */
856*f5f40dd6SCy Schubert   YYSYMBOL_ip_address = 229,               /* ip_address  */
857*f5f40dd6SCy Schubert   YYSYMBOL_address_fam = 230,              /* address_fam  */
858*f5f40dd6SCy Schubert   YYSYMBOL_option_list = 231,              /* option_list  */
859*f5f40dd6SCy Schubert   YYSYMBOL_option = 232,                   /* option  */
860*f5f40dd6SCy Schubert   YYSYMBOL_option_flag = 233,              /* option_flag  */
861*f5f40dd6SCy Schubert   YYSYMBOL_option_flag_keyword = 234,      /* option_flag_keyword  */
862*f5f40dd6SCy Schubert   YYSYMBOL_option_int = 235,               /* option_int  */
863*f5f40dd6SCy Schubert   YYSYMBOL_option_int_keyword = 236,       /* option_int_keyword  */
864*f5f40dd6SCy Schubert   YYSYMBOL_option_str = 237,               /* option_str  */
865*f5f40dd6SCy Schubert   YYSYMBOL_option_str_keyword = 238,       /* option_str_keyword  */
866*f5f40dd6SCy Schubert   YYSYMBOL_unpeer_command = 239,           /* unpeer_command  */
867*f5f40dd6SCy Schubert   YYSYMBOL_unpeer_keyword = 240,           /* unpeer_keyword  */
868*f5f40dd6SCy Schubert   YYSYMBOL_other_mode_command = 241,       /* other_mode_command  */
869*f5f40dd6SCy Schubert   YYSYMBOL_authentication_command = 242,   /* authentication_command  */
870*f5f40dd6SCy Schubert   YYSYMBOL_crypto_command_list = 243,      /* crypto_command_list  */
871*f5f40dd6SCy Schubert   YYSYMBOL_crypto_command = 244,           /* crypto_command  */
872*f5f40dd6SCy Schubert   YYSYMBOL_crypto_str_keyword = 245,       /* crypto_str_keyword  */
873*f5f40dd6SCy Schubert   YYSYMBOL_orphan_mode_command = 246,      /* orphan_mode_command  */
874*f5f40dd6SCy Schubert   YYSYMBOL_tos_option_list = 247,          /* tos_option_list  */
875*f5f40dd6SCy Schubert   YYSYMBOL_tos_option = 248,               /* tos_option  */
876*f5f40dd6SCy Schubert   YYSYMBOL_tos_option_int_keyword = 249,   /* tos_option_int_keyword  */
877*f5f40dd6SCy Schubert   YYSYMBOL_tos_option_dbl_keyword = 250,   /* tos_option_dbl_keyword  */
878*f5f40dd6SCy Schubert   YYSYMBOL_monitoring_command = 251,       /* monitoring_command  */
879*f5f40dd6SCy Schubert   YYSYMBOL_stats_list = 252,               /* stats_list  */
880*f5f40dd6SCy Schubert   YYSYMBOL_stat = 253,                     /* stat  */
881*f5f40dd6SCy Schubert   YYSYMBOL_filegen_option_list = 254,      /* filegen_option_list  */
882*f5f40dd6SCy Schubert   YYSYMBOL_filegen_option = 255,           /* filegen_option  */
883*f5f40dd6SCy Schubert   YYSYMBOL_link_nolink = 256,              /* link_nolink  */
884*f5f40dd6SCy Schubert   YYSYMBOL_enable_disable = 257,           /* enable_disable  */
885*f5f40dd6SCy Schubert   YYSYMBOL_filegen_type = 258,             /* filegen_type  */
886*f5f40dd6SCy Schubert   YYSYMBOL_access_control_command = 259,   /* access_control_command  */
887*f5f40dd6SCy Schubert   YYSYMBOL_restrict_mask = 260,            /* restrict_mask  */
888*f5f40dd6SCy Schubert   YYSYMBOL_res_ippeerlimit = 261,          /* res_ippeerlimit  */
889*f5f40dd6SCy Schubert   YYSYMBOL_ac_flag_list = 262,             /* ac_flag_list  */
890*f5f40dd6SCy Schubert   YYSYMBOL_access_control_flag = 263,      /* access_control_flag  */
891*f5f40dd6SCy Schubert   YYSYMBOL_discard_option_list = 264,      /* discard_option_list  */
892*f5f40dd6SCy Schubert   YYSYMBOL_discard_option = 265,           /* discard_option  */
893*f5f40dd6SCy Schubert   YYSYMBOL_discard_option_keyword = 266,   /* discard_option_keyword  */
894*f5f40dd6SCy Schubert   YYSYMBOL_mru_option_list = 267,          /* mru_option_list  */
895*f5f40dd6SCy Schubert   YYSYMBOL_mru_option = 268,               /* mru_option  */
896*f5f40dd6SCy Schubert   YYSYMBOL_mru_option_keyword = 269,       /* mru_option_keyword  */
897*f5f40dd6SCy Schubert   YYSYMBOL_fudge_command = 270,            /* fudge_command  */
898*f5f40dd6SCy Schubert   YYSYMBOL_fudge_factor_list = 271,        /* fudge_factor_list  */
899*f5f40dd6SCy Schubert   YYSYMBOL_fudge_factor = 272,             /* fudge_factor  */
900*f5f40dd6SCy Schubert   YYSYMBOL_fudge_factor_dbl_keyword = 273, /* fudge_factor_dbl_keyword  */
901*f5f40dd6SCy Schubert   YYSYMBOL_fudge_factor_bool_keyword = 274, /* fudge_factor_bool_keyword  */
902*f5f40dd6SCy Schubert   YYSYMBOL_device_command = 275,           /* device_command  */
903*f5f40dd6SCy Schubert   YYSYMBOL_device_item_list = 276,         /* device_item_list  */
904*f5f40dd6SCy Schubert   YYSYMBOL_device_item = 277,              /* device_item  */
905*f5f40dd6SCy Schubert   YYSYMBOL_device_item_path_keyword = 278, /* device_item_path_keyword  */
906*f5f40dd6SCy Schubert   YYSYMBOL_rlimit_command = 279,           /* rlimit_command  */
907*f5f40dd6SCy Schubert   YYSYMBOL_rlimit_option_list = 280,       /* rlimit_option_list  */
908*f5f40dd6SCy Schubert   YYSYMBOL_rlimit_option = 281,            /* rlimit_option  */
909*f5f40dd6SCy Schubert   YYSYMBOL_rlimit_option_keyword = 282,    /* rlimit_option_keyword  */
910*f5f40dd6SCy Schubert   YYSYMBOL_system_option_command = 283,    /* system_option_command  */
911*f5f40dd6SCy Schubert   YYSYMBOL_system_option_list = 284,       /* system_option_list  */
912*f5f40dd6SCy Schubert   YYSYMBOL_system_option = 285,            /* system_option  */
913*f5f40dd6SCy Schubert   YYSYMBOL_system_option_flag_keyword = 286, /* system_option_flag_keyword  */
914*f5f40dd6SCy Schubert   YYSYMBOL_system_option_local_flag_keyword = 287, /* system_option_local_flag_keyword  */
915*f5f40dd6SCy Schubert   YYSYMBOL_tinker_command = 288,           /* tinker_command  */
916*f5f40dd6SCy Schubert   YYSYMBOL_tinker_option_list = 289,       /* tinker_option_list  */
917*f5f40dd6SCy Schubert   YYSYMBOL_tinker_option = 290,            /* tinker_option  */
918*f5f40dd6SCy Schubert   YYSYMBOL_tinker_option_keyword = 291,    /* tinker_option_keyword  */
919*f5f40dd6SCy Schubert   YYSYMBOL_miscellaneous_command = 292,    /* miscellaneous_command  */
920*f5f40dd6SCy Schubert   YYSYMBOL_misc_cmd_dbl_keyword = 293,     /* misc_cmd_dbl_keyword  */
921*f5f40dd6SCy Schubert   YYSYMBOL_misc_cmd_int_keyword = 294,     /* misc_cmd_int_keyword  */
922*f5f40dd6SCy Schubert   YYSYMBOL_opt_hash_check = 295,           /* opt_hash_check  */
923*f5f40dd6SCy Schubert   YYSYMBOL_misc_cmd_str_keyword = 296,     /* misc_cmd_str_keyword  */
924*f5f40dd6SCy Schubert   YYSYMBOL_misc_cmd_str_lcl_keyword = 297, /* misc_cmd_str_lcl_keyword  */
925*f5f40dd6SCy Schubert   YYSYMBOL_drift_parm = 298,               /* drift_parm  */
926*f5f40dd6SCy Schubert   YYSYMBOL_pollskew_list = 299,            /* pollskew_list  */
927*f5f40dd6SCy Schubert   YYSYMBOL_pollskew_spec = 300,            /* pollskew_spec  */
928*f5f40dd6SCy Schubert   YYSYMBOL_pollskew_cycle = 301,           /* pollskew_cycle  */
929*f5f40dd6SCy Schubert   YYSYMBOL_variable_assign = 302,          /* variable_assign  */
930*f5f40dd6SCy Schubert   YYSYMBOL_t_default_or_zero = 303,        /* t_default_or_zero  */
931*f5f40dd6SCy Schubert   YYSYMBOL_trap_option_list = 304,         /* trap_option_list  */
932*f5f40dd6SCy Schubert   YYSYMBOL_trap_option = 305,              /* trap_option  */
933*f5f40dd6SCy Schubert   YYSYMBOL_log_config_list = 306,          /* log_config_list  */
934*f5f40dd6SCy Schubert   YYSYMBOL_log_config_command = 307,       /* log_config_command  */
935*f5f40dd6SCy Schubert   YYSYMBOL_interface_command = 308,        /* interface_command  */
936*f5f40dd6SCy Schubert   YYSYMBOL_interface_nic = 309,            /* interface_nic  */
937*f5f40dd6SCy Schubert   YYSYMBOL_nic_rule_class = 310,           /* nic_rule_class  */
938*f5f40dd6SCy Schubert   YYSYMBOL_nic_rule_action = 311,          /* nic_rule_action  */
939*f5f40dd6SCy Schubert   YYSYMBOL_reset_command = 312,            /* reset_command  */
940*f5f40dd6SCy Schubert   YYSYMBOL_counter_set_list = 313,         /* counter_set_list  */
941*f5f40dd6SCy Schubert   YYSYMBOL_counter_set_keyword = 314,      /* counter_set_keyword  */
942*f5f40dd6SCy Schubert   YYSYMBOL_integer_list = 315,             /* integer_list  */
943*f5f40dd6SCy Schubert   YYSYMBOL_integer_list_range = 316,       /* integer_list_range  */
944*f5f40dd6SCy Schubert   YYSYMBOL_integer_list_range_elt = 317,   /* integer_list_range_elt  */
945*f5f40dd6SCy Schubert   YYSYMBOL_integer_range = 318,            /* integer_range  */
946*f5f40dd6SCy Schubert   YYSYMBOL_string_list = 319,              /* string_list  */
947*f5f40dd6SCy Schubert   YYSYMBOL_address_list = 320,             /* address_list  */
948*f5f40dd6SCy Schubert   YYSYMBOL_boolean = 321,                  /* boolean  */
949*f5f40dd6SCy Schubert   YYSYMBOL_number = 322,                   /* number  */
950*f5f40dd6SCy Schubert   YYSYMBOL_basedate = 323,                 /* basedate  */
951*f5f40dd6SCy Schubert   YYSYMBOL_simulate_command = 324,         /* simulate_command  */
952*f5f40dd6SCy Schubert   YYSYMBOL_sim_conf_start = 325,           /* sim_conf_start  */
953*f5f40dd6SCy Schubert   YYSYMBOL_sim_init_statement_list = 326,  /* sim_init_statement_list  */
954*f5f40dd6SCy Schubert   YYSYMBOL_sim_init_statement = 327,       /* sim_init_statement  */
955*f5f40dd6SCy Schubert   YYSYMBOL_sim_init_keyword = 328,         /* sim_init_keyword  */
956*f5f40dd6SCy Schubert   YYSYMBOL_sim_server_list = 329,          /* sim_server_list  */
957*f5f40dd6SCy Schubert   YYSYMBOL_sim_server = 330,               /* sim_server  */
958*f5f40dd6SCy Schubert   YYSYMBOL_sim_server_offset = 331,        /* sim_server_offset  */
959*f5f40dd6SCy Schubert   YYSYMBOL_sim_server_name = 332,          /* sim_server_name  */
960*f5f40dd6SCy Schubert   YYSYMBOL_sim_act_list = 333,             /* sim_act_list  */
961*f5f40dd6SCy Schubert   YYSYMBOL_sim_act = 334,                  /* sim_act  */
962*f5f40dd6SCy Schubert   YYSYMBOL_sim_act_stmt_list = 335,        /* sim_act_stmt_list  */
963*f5f40dd6SCy Schubert   YYSYMBOL_sim_act_stmt = 336,             /* sim_act_stmt  */
964*f5f40dd6SCy Schubert   YYSYMBOL_sim_act_keyword = 337           /* sim_act_keyword  */
965a466cc55SCy Schubert };
966a466cc55SCy Schubert typedef enum yysymbol_kind_t yysymbol_kind_t;
9672b15cb3dSCy Schubert 
9682b15cb3dSCy Schubert 
969a466cc55SCy Schubert 
9702b15cb3dSCy Schubert 
9712b15cb3dSCy Schubert #ifdef short
9722b15cb3dSCy Schubert # undef short
9732b15cb3dSCy Schubert #endif
9742b15cb3dSCy Schubert 
975a466cc55SCy Schubert /* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
976a466cc55SCy Schubert    <limits.h> and (if available) <stdint.h> are included
977a466cc55SCy Schubert    so that the code can choose integer types of a good width.  */
978a466cc55SCy Schubert 
979a466cc55SCy Schubert #ifndef __PTRDIFF_MAX__
980a466cc55SCy Schubert # include <limits.h> /* INFRINGES ON USER NAME SPACE */
981a466cc55SCy Schubert # if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
982a466cc55SCy Schubert #  include <stdint.h> /* INFRINGES ON USER NAME SPACE */
983a466cc55SCy Schubert #  define YY_STDINT_H
984a466cc55SCy Schubert # endif
9852b15cb3dSCy Schubert #endif
9862b15cb3dSCy Schubert 
987a466cc55SCy Schubert /* Narrow types that promote to a signed type and that can represent a
988a466cc55SCy Schubert    signed or unsigned integer of at least N bits.  In tables they can
989a466cc55SCy Schubert    save space and decrease cache pressure.  Promoting to a signed type
990a466cc55SCy Schubert    helps avoid bugs in integer arithmetic.  */
991a466cc55SCy Schubert 
992a466cc55SCy Schubert #ifdef __INT_LEAST8_MAX__
993a466cc55SCy Schubert typedef __INT_LEAST8_TYPE__ yytype_int8;
994a466cc55SCy Schubert #elif defined YY_STDINT_H
995a466cc55SCy Schubert typedef int_least8_t yytype_int8;
99668ba7e87SXin LI #else
997e27abb66SXin LI typedef signed char yytype_int8;
9982b15cb3dSCy Schubert #endif
9992b15cb3dSCy Schubert 
1000a466cc55SCy Schubert #ifdef __INT_LEAST16_MAX__
1001a466cc55SCy Schubert typedef __INT_LEAST16_TYPE__ yytype_int16;
1002a466cc55SCy Schubert #elif defined YY_STDINT_H
1003a466cc55SCy Schubert typedef int_least16_t yytype_int16;
10042b15cb3dSCy Schubert #else
1005a466cc55SCy Schubert typedef short yytype_int16;
10062b15cb3dSCy Schubert #endif
10072b15cb3dSCy Schubert 
1008a466cc55SCy Schubert /* Work around bug in HP-UX 11.23, which defines these macros
1009a466cc55SCy Schubert    incorrectly for preprocessor constants.  This workaround can likely
1010a466cc55SCy Schubert    be removed in 2023, as HPE has promised support for HP-UX 11.23
1011a466cc55SCy Schubert    (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of
1012a466cc55SCy Schubert    <https://h20195.www2.hpe.com/V2/getpdf.aspx/4AA4-7673ENW.pdf>.  */
1013a466cc55SCy Schubert #ifdef __hpux
1014a466cc55SCy Schubert # undef UINT_LEAST8_MAX
1015a466cc55SCy Schubert # undef UINT_LEAST16_MAX
1016a466cc55SCy Schubert # define UINT_LEAST8_MAX 255
1017a466cc55SCy Schubert # define UINT_LEAST16_MAX 65535
1018a466cc55SCy Schubert #endif
1019a466cc55SCy Schubert 
1020a466cc55SCy Schubert #if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
1021a466cc55SCy Schubert typedef __UINT_LEAST8_TYPE__ yytype_uint8;
1022a466cc55SCy Schubert #elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
1023a466cc55SCy Schubert        && UINT_LEAST8_MAX <= INT_MAX)
1024a466cc55SCy Schubert typedef uint_least8_t yytype_uint8;
1025a466cc55SCy Schubert #elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
1026a466cc55SCy Schubert typedef unsigned char yytype_uint8;
10272b15cb3dSCy Schubert #else
1028a466cc55SCy Schubert typedef short yytype_uint8;
1029a466cc55SCy Schubert #endif
1030a466cc55SCy Schubert 
1031a466cc55SCy Schubert #if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
1032a466cc55SCy Schubert typedef __UINT_LEAST16_TYPE__ yytype_uint16;
1033a466cc55SCy Schubert #elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
1034a466cc55SCy Schubert        && UINT_LEAST16_MAX <= INT_MAX)
1035a466cc55SCy Schubert typedef uint_least16_t yytype_uint16;
1036a466cc55SCy Schubert #elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
1037a466cc55SCy Schubert typedef unsigned short yytype_uint16;
1038a466cc55SCy Schubert #else
1039a466cc55SCy Schubert typedef int yytype_uint16;
1040a466cc55SCy Schubert #endif
1041a466cc55SCy Schubert 
1042a466cc55SCy Schubert #ifndef YYPTRDIFF_T
1043a466cc55SCy Schubert # if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
1044a466cc55SCy Schubert #  define YYPTRDIFF_T __PTRDIFF_TYPE__
1045a466cc55SCy Schubert #  define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__
1046a466cc55SCy Schubert # elif defined PTRDIFF_MAX
1047a466cc55SCy Schubert #  ifndef ptrdiff_t
1048a466cc55SCy Schubert #   include <stddef.h> /* INFRINGES ON USER NAME SPACE */
1049a466cc55SCy Schubert #  endif
1050a466cc55SCy Schubert #  define YYPTRDIFF_T ptrdiff_t
1051a466cc55SCy Schubert #  define YYPTRDIFF_MAXIMUM PTRDIFF_MAX
1052a466cc55SCy Schubert # else
1053a466cc55SCy Schubert #  define YYPTRDIFF_T long
1054a466cc55SCy Schubert #  define YYPTRDIFF_MAXIMUM LONG_MAX
1055a466cc55SCy Schubert # endif
10562b15cb3dSCy Schubert #endif
10572b15cb3dSCy Schubert 
10582b15cb3dSCy Schubert #ifndef YYSIZE_T
10592b15cb3dSCy Schubert # ifdef __SIZE_TYPE__
10602b15cb3dSCy Schubert #  define YYSIZE_T __SIZE_TYPE__
10612b15cb3dSCy Schubert # elif defined size_t
10622b15cb3dSCy Schubert #  define YYSIZE_T size_t
1063a466cc55SCy Schubert # elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
10642b15cb3dSCy Schubert #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
10652b15cb3dSCy Schubert #  define YYSIZE_T size_t
10662b15cb3dSCy Schubert # else
1067a466cc55SCy Schubert #  define YYSIZE_T unsigned
10682b15cb3dSCy Schubert # endif
10692b15cb3dSCy Schubert #endif
10702b15cb3dSCy Schubert 
1071a466cc55SCy Schubert #define YYSIZE_MAXIMUM                                  \
1072a466cc55SCy Schubert   YY_CAST (YYPTRDIFF_T,                                 \
1073a466cc55SCy Schubert            (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
1074a466cc55SCy Schubert             ? YYPTRDIFF_MAXIMUM                         \
1075a466cc55SCy Schubert             : YY_CAST (YYSIZE_T, -1)))
1076a466cc55SCy Schubert 
1077a466cc55SCy Schubert #define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
1078a466cc55SCy Schubert 
1079a466cc55SCy Schubert 
1080a466cc55SCy Schubert /* Stored state numbers (used for stacks). */
1081a466cc55SCy Schubert typedef yytype_int16 yy_state_t;
1082a466cc55SCy Schubert 
1083a466cc55SCy Schubert /* State numbers in computations.  */
1084a466cc55SCy Schubert typedef int yy_state_fast_t;
10852b15cb3dSCy Schubert 
10862b15cb3dSCy Schubert #ifndef YY_
10872b15cb3dSCy Schubert # if defined YYENABLE_NLS && YYENABLE_NLS
10882b15cb3dSCy Schubert #  if ENABLE_NLS
10892b15cb3dSCy Schubert #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
10902b15cb3dSCy Schubert #   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
10912b15cb3dSCy Schubert #  endif
10922b15cb3dSCy Schubert # endif
10932b15cb3dSCy Schubert # ifndef YY_
10942b15cb3dSCy Schubert #  define YY_(Msgid) Msgid
10952b15cb3dSCy Schubert # endif
10962b15cb3dSCy Schubert #endif
10972b15cb3dSCy Schubert 
1098e27abb66SXin LI 
1099e27abb66SXin LI #ifndef YY_ATTRIBUTE_PURE
1100a466cc55SCy Schubert # if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
1101a466cc55SCy Schubert #  define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
1102a466cc55SCy Schubert # else
1103a466cc55SCy Schubert #  define YY_ATTRIBUTE_PURE
1104a466cc55SCy Schubert # endif
1105e27abb66SXin LI #endif
1106e27abb66SXin LI 
1107e27abb66SXin LI #ifndef YY_ATTRIBUTE_UNUSED
1108a466cc55SCy Schubert # if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
1109a466cc55SCy Schubert #  define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
1110e27abb66SXin LI # else
1111a466cc55SCy Schubert #  define YY_ATTRIBUTE_UNUSED
11122b15cb3dSCy Schubert # endif
11132b15cb3dSCy Schubert #endif
11142b15cb3dSCy Schubert 
11152b15cb3dSCy Schubert /* Suppress unused-variable warnings by "using" E.  */
11162b15cb3dSCy Schubert #if ! defined lint || defined __GNUC__
1117a466cc55SCy Schubert # define YY_USE(E) ((void) (E))
11182b15cb3dSCy Schubert #else
1119a466cc55SCy Schubert # define YY_USE(E) /* empty */
11202b15cb3dSCy Schubert #endif
11212b15cb3dSCy Schubert 
1122e27abb66SXin LI /* Suppress an incorrect diagnostic about yylval being uninitialized.  */
1123*f5f40dd6SCy Schubert #if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
1124*f5f40dd6SCy Schubert # if __GNUC__ * 100 + __GNUC_MINOR__ < 407
1125*f5f40dd6SCy Schubert #  define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN                           \
1126*f5f40dd6SCy Schubert     _Pragma ("GCC diagnostic push")                                     \
1127*f5f40dd6SCy Schubert     _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
1128*f5f40dd6SCy Schubert # else
1129e27abb66SXin LI #  define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN                           \
1130e27abb66SXin LI     _Pragma ("GCC diagnostic push")                                     \
1131e27abb66SXin LI     _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")              \
1132e27abb66SXin LI     _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
1133*f5f40dd6SCy Schubert # endif
1134e27abb66SXin LI # define YY_IGNORE_MAYBE_UNINITIALIZED_END      \
1135e27abb66SXin LI     _Pragma ("GCC diagnostic pop")
1136e27abb66SXin LI #else
1137e27abb66SXin LI # define YY_INITIAL_VALUE(Value) Value
1138e27abb66SXin LI #endif
1139e27abb66SXin LI #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1140e27abb66SXin LI # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1141e27abb66SXin LI # define YY_IGNORE_MAYBE_UNINITIALIZED_END
1142e27abb66SXin LI #endif
1143e27abb66SXin LI #ifndef YY_INITIAL_VALUE
1144e27abb66SXin LI # define YY_INITIAL_VALUE(Value) /* Nothing. */
1145e27abb66SXin LI #endif
11462b15cb3dSCy Schubert 
1147a466cc55SCy Schubert #if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
1148a466cc55SCy Schubert # define YY_IGNORE_USELESS_CAST_BEGIN                          \
1149a466cc55SCy Schubert     _Pragma ("GCC diagnostic push")                            \
1150a466cc55SCy Schubert     _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
1151a466cc55SCy Schubert # define YY_IGNORE_USELESS_CAST_END            \
1152a466cc55SCy Schubert     _Pragma ("GCC diagnostic pop")
1153a466cc55SCy Schubert #endif
1154a466cc55SCy Schubert #ifndef YY_IGNORE_USELESS_CAST_BEGIN
1155a466cc55SCy Schubert # define YY_IGNORE_USELESS_CAST_BEGIN
1156a466cc55SCy Schubert # define YY_IGNORE_USELESS_CAST_END
1157a466cc55SCy Schubert #endif
11582b15cb3dSCy Schubert 
1159a466cc55SCy Schubert 
1160a466cc55SCy Schubert #define YY_ASSERT(E) ((void) (0 && (E)))
1161a466cc55SCy Schubert 
1162a466cc55SCy Schubert #if !defined yyoverflow
11632b15cb3dSCy Schubert 
11642b15cb3dSCy Schubert /* The parser invokes alloca or malloc; define the necessary symbols.  */
11652b15cb3dSCy Schubert 
11662b15cb3dSCy Schubert # ifdef YYSTACK_USE_ALLOCA
11672b15cb3dSCy Schubert #  if YYSTACK_USE_ALLOCA
11682b15cb3dSCy Schubert #   ifdef __GNUC__
11692b15cb3dSCy Schubert #    define YYSTACK_ALLOC __builtin_alloca
11702b15cb3dSCy Schubert #   elif defined __BUILTIN_VA_ARG_INCR
11712b15cb3dSCy Schubert #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
11722b15cb3dSCy Schubert #   elif defined _AIX
11732b15cb3dSCy Schubert #    define YYSTACK_ALLOC __alloca
11742b15cb3dSCy Schubert #   elif defined _MSC_VER
11752b15cb3dSCy Schubert #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
11762b15cb3dSCy Schubert #    define alloca _alloca
11772b15cb3dSCy Schubert #   else
11782b15cb3dSCy Schubert #    define YYSTACK_ALLOC alloca
1179e27abb66SXin LI #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
11802b15cb3dSCy Schubert #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
11812b15cb3dSCy Schubert       /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
11822b15cb3dSCy Schubert #     ifndef EXIT_SUCCESS
11832b15cb3dSCy Schubert #      define EXIT_SUCCESS 0
11842b15cb3dSCy Schubert #     endif
11852b15cb3dSCy Schubert #    endif
11862b15cb3dSCy Schubert #   endif
11872b15cb3dSCy Schubert #  endif
11882b15cb3dSCy Schubert # endif
11892b15cb3dSCy Schubert 
11902b15cb3dSCy Schubert # ifdef YYSTACK_ALLOC
1191e27abb66SXin LI    /* Pacify GCC's 'empty if-body' warning.  */
1192e27abb66SXin LI #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
11932b15cb3dSCy Schubert #  ifndef YYSTACK_ALLOC_MAXIMUM
11942b15cb3dSCy Schubert     /* The OS might guarantee only one guard page at the bottom of the stack,
11952b15cb3dSCy Schubert        and a page size can be as small as 4096 bytes.  So we cannot safely
11962b15cb3dSCy Schubert        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
11972b15cb3dSCy Schubert        to allow for a few compiler-allocated temporary stack slots.  */
11982b15cb3dSCy Schubert #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
11992b15cb3dSCy Schubert #  endif
12002b15cb3dSCy Schubert # else
12012b15cb3dSCy Schubert #  define YYSTACK_ALLOC YYMALLOC
12022b15cb3dSCy Schubert #  define YYSTACK_FREE YYFREE
12032b15cb3dSCy Schubert #  ifndef YYSTACK_ALLOC_MAXIMUM
12042b15cb3dSCy Schubert #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
12052b15cb3dSCy Schubert #  endif
12062b15cb3dSCy Schubert #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
12072b15cb3dSCy Schubert        && ! ((defined YYMALLOC || defined malloc) \
12082b15cb3dSCy Schubert              && (defined YYFREE || defined free)))
12092b15cb3dSCy Schubert #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
12102b15cb3dSCy Schubert #   ifndef EXIT_SUCCESS
12112b15cb3dSCy Schubert #    define EXIT_SUCCESS 0
12122b15cb3dSCy Schubert #   endif
12132b15cb3dSCy Schubert #  endif
12142b15cb3dSCy Schubert #  ifndef YYMALLOC
12152b15cb3dSCy Schubert #   define YYMALLOC malloc
1216e27abb66SXin LI #   if ! defined malloc && ! defined EXIT_SUCCESS
12172b15cb3dSCy Schubert void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
12182b15cb3dSCy Schubert #   endif
12192b15cb3dSCy Schubert #  endif
12202b15cb3dSCy Schubert #  ifndef YYFREE
12212b15cb3dSCy Schubert #   define YYFREE free
1222e27abb66SXin LI #   if ! defined free && ! defined EXIT_SUCCESS
12232b15cb3dSCy Schubert void free (void *); /* INFRINGES ON USER NAME SPACE */
12242b15cb3dSCy Schubert #   endif
12252b15cb3dSCy Schubert #  endif
12262b15cb3dSCy Schubert # endif
1227a466cc55SCy Schubert #endif /* !defined yyoverflow */
12282b15cb3dSCy Schubert 
12292b15cb3dSCy Schubert #if (! defined yyoverflow \
12302b15cb3dSCy Schubert      && (! defined __cplusplus \
12312b15cb3dSCy Schubert          || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
12322b15cb3dSCy Schubert 
12332b15cb3dSCy Schubert /* A type that is properly aligned for any stack member.  */
12342b15cb3dSCy Schubert union yyalloc
12352b15cb3dSCy Schubert {
1236a466cc55SCy Schubert   yy_state_t yyss_alloc;
12372b15cb3dSCy Schubert   YYSTYPE yyvs_alloc;
12382b15cb3dSCy Schubert };
12392b15cb3dSCy Schubert 
12402b15cb3dSCy Schubert /* The size of the maximum gap between one aligned stack and the next.  */
1241a466cc55SCy Schubert # define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
12422b15cb3dSCy Schubert 
12432b15cb3dSCy Schubert /* The size of an array large to enough to hold all stacks, each with
12442b15cb3dSCy Schubert    N elements.  */
12452b15cb3dSCy Schubert # define YYSTACK_BYTES(N) \
1246a466cc55SCy Schubert      ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \
12472b15cb3dSCy Schubert       + YYSTACK_GAP_MAXIMUM)
12482b15cb3dSCy Schubert 
12492b15cb3dSCy Schubert # define YYCOPY_NEEDED 1
12502b15cb3dSCy Schubert 
12512b15cb3dSCy Schubert /* Relocate STACK from its old location to the new one.  The
12522b15cb3dSCy Schubert    local variables YYSIZE and YYSTACKSIZE give the old and new number of
12532b15cb3dSCy Schubert    elements in the stack, and YYPTR gives the new location of the
12542b15cb3dSCy Schubert    stack.  Advance YYPTR to a properly aligned location for the next
12552b15cb3dSCy Schubert    stack.  */
12562b15cb3dSCy Schubert # define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
12572b15cb3dSCy Schubert     do                                                                  \
12582b15cb3dSCy Schubert       {                                                                 \
1259a466cc55SCy Schubert         YYPTRDIFF_T yynewbytes;                                         \
12602b15cb3dSCy Schubert         YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
12612b15cb3dSCy Schubert         Stack = &yyptr->Stack_alloc;                                    \
1262a466cc55SCy Schubert         yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
1263a466cc55SCy Schubert         yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
12642b15cb3dSCy Schubert       }                                                                 \
1265e27abb66SXin LI     while (0)
12662b15cb3dSCy Schubert 
12672b15cb3dSCy Schubert #endif
12682b15cb3dSCy Schubert 
12692b15cb3dSCy Schubert #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
12702b15cb3dSCy Schubert /* Copy COUNT objects from SRC to DST.  The source and destination do
12712b15cb3dSCy Schubert    not overlap.  */
12722b15cb3dSCy Schubert # ifndef YYCOPY
12732b15cb3dSCy Schubert #  if defined __GNUC__ && 1 < __GNUC__
12742b15cb3dSCy Schubert #   define YYCOPY(Dst, Src, Count) \
1275a466cc55SCy Schubert       __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src)))
12762b15cb3dSCy Schubert #  else
12772b15cb3dSCy Schubert #   define YYCOPY(Dst, Src, Count)              \
12782b15cb3dSCy Schubert       do                                        \
12792b15cb3dSCy Schubert         {                                       \
1280a466cc55SCy Schubert           YYPTRDIFF_T yyi;                      \
12812b15cb3dSCy Schubert           for (yyi = 0; yyi < (Count); yyi++)   \
12822b15cb3dSCy Schubert             (Dst)[yyi] = (Src)[yyi];            \
12832b15cb3dSCy Schubert         }                                       \
1284e27abb66SXin LI       while (0)
12852b15cb3dSCy Schubert #  endif
12862b15cb3dSCy Schubert # endif
12872b15cb3dSCy Schubert #endif /* !YYCOPY_NEEDED */
12882b15cb3dSCy Schubert 
12892b15cb3dSCy Schubert /* YYFINAL -- State number of the termination state.  */
1290*f5f40dd6SCy Schubert #define YYFINAL  225
12912b15cb3dSCy Schubert /* YYLAST -- Last index in YYTABLE.  */
1292*f5f40dd6SCy Schubert #define YYLAST   717
12932b15cb3dSCy Schubert 
12942b15cb3dSCy Schubert /* YYNTOKENS -- Number of terminals.  */
1295*f5f40dd6SCy Schubert #define YYNTOKENS  222
12962b15cb3dSCy Schubert /* YYNNTS -- Number of nonterminals.  */
1297*f5f40dd6SCy Schubert #define YYNNTS  116
12982b15cb3dSCy Schubert /* YYNRULES -- Number of rules.  */
1299*f5f40dd6SCy Schubert #define YYNRULES  346
1300e27abb66SXin LI /* YYNSTATES -- Number of states.  */
1301*f5f40dd6SCy Schubert #define YYNSTATES  467
13022b15cb3dSCy Schubert 
1303a466cc55SCy Schubert /* YYMAXUTOK -- Last valid token kind.  */
1304*f5f40dd6SCy Schubert #define YYMAXUTOK   470
13052b15cb3dSCy Schubert 
1306a466cc55SCy Schubert 
1307a466cc55SCy Schubert /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
1308a466cc55SCy Schubert    as returned by yylex, with out-of-bounds checking.  */
13092b15cb3dSCy Schubert #define YYTRANSLATE(YYX)                                \
1310a466cc55SCy Schubert   (0 <= (YYX) && (YYX) <= YYMAXUTOK                     \
1311a466cc55SCy Schubert    ? YY_CAST (yysymbol_kind_t, yytranslate[YYX])        \
1312a466cc55SCy Schubert    : YYSYMBOL_YYUNDEF)
13132b15cb3dSCy Schubert 
1314e27abb66SXin LI /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
1315a466cc55SCy Schubert    as returned by yylex.  */
13162b15cb3dSCy Schubert static const yytype_uint8 yytranslate[] =
13172b15cb3dSCy Schubert {
13182b15cb3dSCy Schubert        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13192b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13202b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13212b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1322*f5f40dd6SCy Schubert      218,   219,     2,     2,     2,     2,     2,     2,     2,     2,
13232b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1324*f5f40dd6SCy Schubert        2,   217,     2,     2,     2,     2,     2,     2,     2,     2,
13252b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13262b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13272b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13282b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13292b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1330*f5f40dd6SCy Schubert        2,     2,     2,   220,   216,   221,     2,     2,     2,     2,
13312b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13322b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13332b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13342b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13352b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13362b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13372b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13382b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13392b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13402b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13412b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13422b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
13432b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
13442b15cb3dSCy Schubert        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
13452b15cb3dSCy Schubert       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
13462b15cb3dSCy Schubert       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
13472b15cb3dSCy Schubert       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
13482b15cb3dSCy Schubert       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
13492b15cb3dSCy Schubert       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
13502b15cb3dSCy Schubert       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
13512b15cb3dSCy Schubert       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
13522b15cb3dSCy Schubert       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
13532b15cb3dSCy Schubert       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
13542b15cb3dSCy Schubert      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
13552b15cb3dSCy Schubert      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
13562b15cb3dSCy Schubert      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
13572b15cb3dSCy Schubert      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
13582b15cb3dSCy Schubert      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
13592b15cb3dSCy Schubert      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
13602b15cb3dSCy Schubert      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
13612b15cb3dSCy Schubert      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
136268ba7e87SXin LI      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
13632d4e511cSCy Schubert      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1364*f5f40dd6SCy Schubert      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1365*f5f40dd6SCy Schubert      215
13662b15cb3dSCy Schubert };
13672b15cb3dSCy Schubert 
13682b15cb3dSCy Schubert #if YYDEBUG
1369e27abb66SXin LI /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
1370a466cc55SCy Schubert static const yytype_int16 yyrline[] =
13712b15cb3dSCy Schubert {
1372*f5f40dd6SCy Schubert        0,   399,   399,   403,   404,   405,   420,   421,   422,   423,
1373*f5f40dd6SCy Schubert      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
1374*f5f40dd6SCy Schubert      434,   442,   452,   453,   454,   455,   456,   460,   461,   466,
1375*f5f40dd6SCy Schubert      471,   473,   479,   480,   488,   489,   490,   494,   499,   500,
1376*f5f40dd6SCy Schubert      501,   502,   503,   504,   505,   506,   507,   511,   513,   518,
1377*f5f40dd6SCy Schubert      519,   520,   521,   522,   523,   527,   532,   541,   551,   552,
1378*f5f40dd6SCy Schubert      562,   564,   566,   568,   579,   586,   588,   593,   595,   597,
1379*f5f40dd6SCy Schubert      599,   601,   611,   617,   618,   626,   628,   640,   641,   642,
1380*f5f40dd6SCy Schubert      643,   644,   653,   658,   663,   671,   673,   675,   677,   682,
1381*f5f40dd6SCy Schubert      683,   684,   685,   686,   687,   688,   689,   690,   694,   695,
1382*f5f40dd6SCy Schubert      704,   706,   715,   725,   730,   738,   739,   740,   741,   742,
1383*f5f40dd6SCy Schubert      743,   744,   745,   750,   751,   759,   769,   778,   793,   798,
1384*f5f40dd6SCy Schubert      799,   803,   804,   808,   809,   810,   811,   812,   813,   814,
1385*f5f40dd6SCy Schubert      823,   827,   831,   840,   849,   865,   881,   891,   900,   916,
1386*f5f40dd6SCy Schubert      917,   925,   926,   946,   947,   955,   966,   967,   968,   969,
1387*f5f40dd6SCy Schubert      970,   971,   972,   973,   974,   975,   976,   977,   978,   979,
1388*f5f40dd6SCy Schubert      980,   981,   982,   986,   991,   999,  1004,  1005,  1006,  1010,
1389*f5f40dd6SCy Schubert     1015,  1023,  1028,  1029,  1030,  1031,  1032,  1033,  1034,  1035,
1390*f5f40dd6SCy Schubert     1043,  1053,  1058,  1066,  1068,  1070,  1079,  1081,  1086,  1087,
1391*f5f40dd6SCy Schubert     1088,  1092,  1093,  1094,  1095,  1103,  1113,  1118,  1126,  1131,
1392*f5f40dd6SCy Schubert     1132,  1140,  1145,  1150,  1158,  1163,  1164,  1165,  1174,  1176,
1393*f5f40dd6SCy Schubert     1181,  1186,  1194,  1196,  1213,  1214,  1215,  1216,  1217,  1218,
1394*f5f40dd6SCy Schubert     1222,  1223,  1224,  1225,  1226,  1227,  1235,  1240,  1245,  1253,
1395*f5f40dd6SCy Schubert     1258,  1259,  1260,  1261,  1262,  1263,  1264,  1265,  1266,  1267,
1396*f5f40dd6SCy Schubert     1276,  1277,  1278,  1285,  1292,  1299,  1315,  1334,  1342,  1344,
1397*f5f40dd6SCy Schubert     1346,  1348,  1350,  1352,  1354,  1361,  1366,  1367,  1368,  1372,
1398*f5f40dd6SCy Schubert     1376,  1385,  1387,  1390,  1394,  1398,  1399,  1400,  1404,  1415,
1399*f5f40dd6SCy Schubert     1433,  1446,  1447,  1452,  1478,  1484,  1489,  1494,  1496,  1501,
1400*f5f40dd6SCy Schubert     1502,  1510,  1512,  1520,  1525,  1533,  1558,  1565,  1575,  1576,
1401*f5f40dd6SCy Schubert     1580,  1581,  1582,  1583,  1587,  1588,  1589,  1593,  1598,  1603,
1402*f5f40dd6SCy Schubert     1611,  1612,  1613,  1614,  1615,  1616,  1617,  1627,  1632,  1640,
1403*f5f40dd6SCy Schubert     1645,  1653,  1655,  1659,  1664,  1669,  1677,  1682,  1690,  1699,
1404*f5f40dd6SCy Schubert     1700,  1704,  1705,  1709,  1717,  1735,  1739,  1744,  1752,  1757,
1405*f5f40dd6SCy Schubert     1758,  1762,  1767,  1775,  1780,  1785,  1790,  1795,  1803,  1808,
1406*f5f40dd6SCy Schubert     1813,  1821,  1826,  1827,  1828,  1829,  1830
14072b15cb3dSCy Schubert };
14082b15cb3dSCy Schubert #endif
14092b15cb3dSCy Schubert 
1410a466cc55SCy Schubert /** Accessing symbol of state STATE.  */
1411a466cc55SCy Schubert #define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State])
1412a466cc55SCy Schubert 
1413a466cc55SCy Schubert #if YYDEBUG || 1
1414a466cc55SCy Schubert /* The user-facing name of the symbol whose (internal) number is
1415a466cc55SCy Schubert    YYSYMBOL.  No bounds checking.  */
1416a466cc55SCy Schubert static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED;
1417a466cc55SCy Schubert 
14182b15cb3dSCy Schubert /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
14192b15cb3dSCy Schubert    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
14202b15cb3dSCy Schubert static const char *const yytname[] =
14212b15cb3dSCy Schubert {
1422a466cc55SCy Schubert   "\"end of file\"", "error", "\"invalid token\"", "T_Abbrev", "T_Age",
1423a466cc55SCy Schubert   "T_All", "T_Allan", "T_Allpeers", "T_Auth", "T_Autokey", "T_Automax",
1424a466cc55SCy Schubert   "T_Average", "T_Basedate", "T_Bclient", "T_Bcpollbstep", "T_Beacon",
1425a466cc55SCy Schubert   "T_Broadcast", "T_Broadcastclient", "T_Broadcastdelay", "T_Burst",
1426a466cc55SCy Schubert   "T_Calibrate", "T_Ceiling", "T_Checkhash", "T_Clockstats", "T_Cohort",
1427a466cc55SCy Schubert   "T_ControlKey", "T_Crypto", "T_Cryptostats", "T_Ctl", "T_Day",
1428*f5f40dd6SCy Schubert   "T_Default", "T_Delrestrict", "T_Device", "T_Digest", "T_Disable",
1429*f5f40dd6SCy Schubert   "T_Discard", "T_Dispersion", "T_Double", "T_Driftfile", "T_Drop",
1430*f5f40dd6SCy Schubert   "T_Dscp", "T_Ellipsis", "T_Enable", "T_End", "T_Epeer", "T_False",
1431*f5f40dd6SCy Schubert   "T_File", "T_Filegen", "T_Filenum", "T_Flag1", "T_Flag2", "T_Flag3",
1432*f5f40dd6SCy Schubert   "T_Flag4", "T_Flake", "T_Floor", "T_Freq", "T_Fudge", "T_Fuzz", "T_Host",
1433a466cc55SCy Schubert   "T_Huffpuff", "T_Iburst", "T_Ident", "T_Ignore", "T_Ignorehash",
1434a466cc55SCy Schubert   "T_Incalloc", "T_Incmem", "T_Initalloc", "T_Initmem", "T_Includefile",
1435a466cc55SCy Schubert   "T_Integer", "T_Interface", "T_Intrange", "T_Io", "T_Ippeerlimit",
1436a466cc55SCy Schubert   "T_Ipv4", "T_Ipv4_flag", "T_Ipv6", "T_Ipv6_flag", "T_Kernel", "T_Key",
1437a466cc55SCy Schubert   "T_Keys", "T_Keysdir", "T_Kod", "T_Leapfile", "T_Leapsmearinterval",
1438a466cc55SCy Schubert   "T_Limited", "T_Link", "T_Listen", "T_Logconfig", "T_Logfile",
1439a466cc55SCy Schubert   "T_Loopstats", "T_Lowpriotrap", "T_Manycastclient", "T_Manycastserver",
1440a466cc55SCy Schubert   "T_Mask", "T_Maxage", "T_Maxclock", "T_Maxdepth", "T_Maxdist",
1441a466cc55SCy Schubert   "T_Maxmem", "T_Maxpoll", "T_Mdnstries", "T_Mem", "T_Memlock",
1442a466cc55SCy Schubert   "T_Minclock", "T_Mindepth", "T_Mindist", "T_Minimum", "T_Minjitter",
1443a466cc55SCy Schubert   "T_Minpoll", "T_Minsane", "T_Mode", "T_Mode7", "T_Monitor", "T_Month",
1444a466cc55SCy Schubert   "T_Mru", "T_Mssntp", "T_Multicastclient", "T_Nic", "T_Nolink",
1445a466cc55SCy Schubert   "T_Nomodify", "T_Nomrulist", "T_None", "T_Nonvolatile", "T_Noepeer",
1446a466cc55SCy Schubert   "T_Nopeer", "T_Noquery", "T_Noselect", "T_Noserve", "T_Notrap",
1447a466cc55SCy Schubert   "T_Notrust", "T_Ntp", "T_Ntpport", "T_NtpSignDsocket", "T_Orphan",
1448a466cc55SCy Schubert   "T_Orphanwait", "T_PCEdigest", "T_Panic", "T_Peer", "T_Peerstats",
1449a466cc55SCy Schubert   "T_Phone", "T_Pid", "T_Pidfile", "T_Poll", "T_PollSkewList", "T_Pool",
1450a466cc55SCy Schubert   "T_Port", "T_PpsData", "T_Preempt", "T_Prefer", "T_Protostats", "T_Pw",
1451a466cc55SCy Schubert   "T_Randfile", "T_Rawstats", "T_Refid", "T_Requestkey", "T_Reset",
1452a466cc55SCy Schubert   "T_Restrict", "T_Revoke", "T_Rlimit", "T_Saveconfigdir", "T_Server",
1453a466cc55SCy Schubert   "T_Serverresponse", "T_ServerresponseFuzz", "T_Setvar", "T_Source",
1454a466cc55SCy Schubert   "T_Stacksize", "T_Statistics", "T_Stats", "T_Statsdir", "T_Step",
1455a466cc55SCy Schubert   "T_Stepback", "T_Stepfwd", "T_Stepout", "T_Stratum", "T_String", "T_Sys",
1456a466cc55SCy Schubert   "T_Sysstats", "T_Tick", "T_Time1", "T_Time2", "T_TimeData", "T_Timer",
1457a466cc55SCy Schubert   "T_Timingstats", "T_Tinker", "T_Tos", "T_Trap", "T_True", "T_Trustedkey",
1458a466cc55SCy Schubert   "T_Ttl", "T_Type", "T_U_int", "T_UEcrypto", "T_UEcryptonak",
1459a466cc55SCy Schubert   "T_UEdigest", "T_Unconfig", "T_Unpeer", "T_Version", "T_WanderThreshold",
1460a466cc55SCy Schubert   "T_Week", "T_Wildcard", "T_Xleave", "T_Xmtnonce", "T_Year", "T_Flag",
1461a466cc55SCy Schubert   "T_EOC", "T_Simulate", "T_Beep_Delay", "T_Sim_Duration",
1462a466cc55SCy Schubert   "T_Server_Offset", "T_Duration", "T_Freq_Offset", "T_Wander", "T_Jitter",
1463a466cc55SCy Schubert   "T_Prop_Delay", "T_Proc_Delay", "'|'", "'='", "'('", "')'", "'{'", "'}'",
1464a466cc55SCy Schubert   "$accept", "configuration", "command_list", "command", "server_command",
1465a466cc55SCy Schubert   "client_type", "address", "ip_address", "address_fam", "option_list",
1466a466cc55SCy Schubert   "option", "option_flag", "option_flag_keyword", "option_int",
1467a466cc55SCy Schubert   "option_int_keyword", "option_str", "option_str_keyword",
1468a466cc55SCy Schubert   "unpeer_command", "unpeer_keyword", "other_mode_command",
1469a466cc55SCy Schubert   "authentication_command", "crypto_command_list", "crypto_command",
1470a466cc55SCy Schubert   "crypto_str_keyword", "orphan_mode_command", "tos_option_list",
1471a466cc55SCy Schubert   "tos_option", "tos_option_int_keyword", "tos_option_dbl_keyword",
1472a466cc55SCy Schubert   "monitoring_command", "stats_list", "stat", "filegen_option_list",
1473a466cc55SCy Schubert   "filegen_option", "link_nolink", "enable_disable", "filegen_type",
1474*f5f40dd6SCy Schubert   "access_control_command", "restrict_mask", "res_ippeerlimit",
1475*f5f40dd6SCy Schubert   "ac_flag_list", "access_control_flag", "discard_option_list",
1476*f5f40dd6SCy Schubert   "discard_option", "discard_option_keyword", "mru_option_list",
1477*f5f40dd6SCy Schubert   "mru_option", "mru_option_keyword", "fudge_command", "fudge_factor_list",
1478f391d6bcSXin LI   "fudge_factor", "fudge_factor_dbl_keyword", "fudge_factor_bool_keyword",
1479a466cc55SCy Schubert   "device_command", "device_item_list", "device_item",
1480a466cc55SCy Schubert   "device_item_path_keyword", "rlimit_command", "rlimit_option_list",
1481a466cc55SCy Schubert   "rlimit_option", "rlimit_option_keyword", "system_option_command",
1482a466cc55SCy Schubert   "system_option_list", "system_option", "system_option_flag_keyword",
14832b15cb3dSCy Schubert   "system_option_local_flag_keyword", "tinker_command",
14842b15cb3dSCy Schubert   "tinker_option_list", "tinker_option", "tinker_option_keyword",
1485276da39aSCy Schubert   "miscellaneous_command", "misc_cmd_dbl_keyword", "misc_cmd_int_keyword",
14862d4e511cSCy Schubert   "opt_hash_check", "misc_cmd_str_keyword", "misc_cmd_str_lcl_keyword",
14872d4e511cSCy Schubert   "drift_parm", "pollskew_list", "pollskew_spec", "pollskew_cycle",
1488276da39aSCy Schubert   "variable_assign", "t_default_or_zero", "trap_option_list",
1489276da39aSCy Schubert   "trap_option", "log_config_list", "log_config_command",
1490276da39aSCy Schubert   "interface_command", "interface_nic", "nic_rule_class",
1491276da39aSCy Schubert   "nic_rule_action", "reset_command", "counter_set_list",
1492276da39aSCy Schubert   "counter_set_keyword", "integer_list", "integer_list_range",
1493276da39aSCy Schubert   "integer_list_range_elt", "integer_range", "string_list", "address_list",
149409100258SXin LI   "boolean", "number", "basedate", "simulate_command", "sim_conf_start",
1495276da39aSCy Schubert   "sim_init_statement_list", "sim_init_statement", "sim_init_keyword",
1496276da39aSCy Schubert   "sim_server_list", "sim_server", "sim_server_offset", "sim_server_name",
1497276da39aSCy Schubert   "sim_act_list", "sim_act", "sim_act_stmt_list", "sim_act_stmt",
1498e27abb66SXin LI   "sim_act_keyword", YY_NULLPTR
14992b15cb3dSCy Schubert };
1500a466cc55SCy Schubert 
1501a466cc55SCy Schubert static const char *
1502a466cc55SCy Schubert yysymbol_name (yysymbol_kind_t yysymbol)
1503a466cc55SCy Schubert {
1504a466cc55SCy Schubert   return yytname[yysymbol];
1505a466cc55SCy Schubert }
15062b15cb3dSCy Schubert #endif
15072b15cb3dSCy Schubert 
1508*f5f40dd6SCy Schubert #define YYPACT_NINF (-280)
1509e27abb66SXin LI 
1510a466cc55SCy Schubert #define yypact_value_is_default(Yyn) \
1511a466cc55SCy Schubert   ((Yyn) == YYPACT_NINF)
1512e27abb66SXin LI 
1513a466cc55SCy Schubert #define YYTABLE_NINF (-7)
1514e27abb66SXin LI 
1515a466cc55SCy Schubert #define yytable_value_is_error(Yyn) \
1516e27abb66SXin LI   0
1517e27abb66SXin LI 
1518e27abb66SXin LI /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1519e27abb66SXin LI    STATE-NUM.  */
1520e27abb66SXin LI static const yytype_int16 yypact[] =
1521e27abb66SXin LI {
1522*f5f40dd6SCy Schubert       10,  -173,   -31,  -280,  -280,  -280,   -11,  -280,   -89,   -28,
1523*f5f40dd6SCy Schubert      301,     3,  -115,  -280,   301,  -280,    82,   -28,  -280,   -98,
1524*f5f40dd6SCy Schubert     -280,   -94,   -83,   -75,  -280,   -74,  -280,  -280,   -28,    19,
1525*f5f40dd6SCy Schubert      213,   -28,  -280,  -280,   -69,  -280,   -62,  -280,  -280,  -280,
1526*f5f40dd6SCy Schubert       35,    15,   101,    45,   -42,  -280,  -280,   -56,    82,   -53,
1527*f5f40dd6SCy Schubert     -280,    53,   582,   -49,   -65,    49,  -280,  -280,  -280,   129,
1528*f5f40dd6SCy Schubert      202,   -64,  -280,   -28,  -280,   -28,  -280,  -280,  -280,  -280,
1529*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,     0,    61,   -29,
1530*f5f40dd6SCy Schubert      -24,  -280,   -22,  -280,  -280,   -76,  -280,  -280,  -280,   102,
1531*f5f40dd6SCy Schubert      -49,  -280,    62,  -280,  -280,  -113,  -280,   -18,  -280,  -280,
1532*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,
1533*f5f40dd6SCy Schubert      301,  -280,  -280,  -280,  -280,  -280,  -280,     3,  -280,    89,
1534*f5f40dd6SCy Schubert      122,  -280,   301,  -280,  -280,  -280,  -280,  -280,  -280,  -280,
1535*f5f40dd6SCy Schubert     -280,  -280,   281,   384,  -280,  -280,    -1,  -280,   -74,  -280,
1536*f5f40dd6SCy Schubert     -280,   -28,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,
1537*f5f40dd6SCy Schubert     -280,   213,  -280,    92,   -28,  -280,  -280,   -13,    -5,  -280,
1538*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,    15,  -280,    91,
1539*f5f40dd6SCy Schubert      143,   145,    91,    62,  -280,  -280,  -280,  -280,   -42,  -280,
1540*f5f40dd6SCy Schubert      111,   -35,  -280,    82,  -280,  -280,  -280,  -280,  -280,  -280,
1541*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,    53,  -280,     0,     6,
1542*f5f40dd6SCy Schubert     -280,  -280,  -280,   -38,  -280,  -280,  -280,  -280,  -280,  -280,
1543*f5f40dd6SCy Schubert     -280,  -280,   582,  -280,   115,     0,  -280,  -280,  -280,   116,
1544*f5f40dd6SCy Schubert      -65,  -280,  -280,  -280,   117,  -280,   -16,  -280,  -280,  -280,
1545*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,     8,
1546*f5f40dd6SCy Schubert     -112,  -280,  -280,  -280,  -280,  -280,   118,  -280,    17,  -280,
1547*f5f40dd6SCy Schubert      -49,  -280,  -280,  -280,  -113,  -280,    26,  -280,  -280,  -280,
1548*f5f40dd6SCy Schubert     -280,  -280,    21,    27,  -280,  -280,  -280,  -280,  -280,    28,
1549*f5f40dd6SCy Schubert      138,  -280,  -280,   281,  -280,     0,   -38,  -280,  -280,  -280,
1550*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,   140,
1551*f5f40dd6SCy Schubert     -280,   141,  -280,    91,    91,  -280,    91,  -280,  -280,    38,
1552*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,
1553*f5f40dd6SCy Schubert     -280,   -61,   173,  -280,  -280,  -280,   387,  -280,  -280,  -280,
1554*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,   -87,    12,     5,  -280,  -280,
1555*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,    54,  -280,  -280,     1,  -280,
1556*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,    14,  -280,
1557*f5f40dd6SCy Schubert      513,  -280,  -280,   513,  -280,   208,   -49,   170,  -280,   172,
1558*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,
1559*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,
1560*f5f40dd6SCy Schubert      -57,  -280,    72,    31,    47,  -151,  -280,    30,  -280,     0,
1561*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,   186,
1562*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,
1563*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,   199,  -280,  -280,   513,
1564*f5f40dd6SCy Schubert      513,   513,  -280,  -280,  -280,  -280,    42,  -280,  -280,  -280,
1565*f5f40dd6SCy Schubert      -28,  -280,  -280,  -280,    48,  -280,  -280,  -280,  -280,  -280,
1566*f5f40dd6SCy Schubert       50,    52,     0,    56,  -192,  -280,    59,     0,  -280,  -280,
1567*f5f40dd6SCy Schubert     -280,    51,   139,  -280,  -280,  -280,  -280,  -280,    85,    64,
1568*f5f40dd6SCy Schubert       57,  -280,    70,  -280,     0,  -280,  -280
1569e27abb66SXin LI };
1570e27abb66SXin LI 
1571e27abb66SXin LI /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
1572e27abb66SXin LI    Performed when YYTABLE does not specify something else to do.  Zero
1573e27abb66SXin LI    means the default is an error.  */
1574a466cc55SCy Schubert static const yytype_int16 yydefact[] =
1575e27abb66SXin LI {
1576*f5f40dd6SCy Schubert        0,     0,     0,    25,    60,   256,     0,    73,     0,     0,
1577*f5f40dd6SCy Schubert        0,     0,   270,   259,     0,   248,     0,     0,   264,     0,
1578*f5f40dd6SCy Schubert      288,     0,     0,     0,   260,     0,   265,    26,     0,     0,
1579*f5f40dd6SCy Schubert        0,     0,   289,   257,     0,    24,     0,   266,   271,    23,
1580*f5f40dd6SCy Schubert        0,     0,     0,     0,     0,   267,    22,     0,     0,     0,
1581*f5f40dd6SCy Schubert      258,     0,     0,     0,     0,     0,    58,    59,   325,     0,
1582*f5f40dd6SCy Schubert        2,     0,     7,     0,     8,     0,     9,    10,    13,    11,
1583*f5f40dd6SCy Schubert       12,    14,    20,    15,    16,    17,    18,     0,     0,     0,
1584*f5f40dd6SCy Schubert        0,   240,     0,   241,    19,     0,     5,    64,    65,    66,
1585*f5f40dd6SCy Schubert        0,    29,   139,    30,    31,     0,    27,     0,   214,   215,
1586*f5f40dd6SCy Schubert      216,   217,   220,   218,   219,   221,   222,   223,   224,   225,
1587*f5f40dd6SCy Schubert      209,   211,   212,   213,   166,   167,   168,   130,   164,     0,
1588*f5f40dd6SCy Schubert      268,   249,   208,   105,   106,   107,   108,   112,   109,   110,
1589*f5f40dd6SCy Schubert      111,   113,     0,     6,    67,    68,   263,   285,   250,   284,
1590*f5f40dd6SCy Schubert      317,    61,    63,   172,   173,   174,   175,   176,   177,   178,
1591*f5f40dd6SCy Schubert      179,   131,   170,     0,    62,    72,   315,   251,   252,    69,
1592*f5f40dd6SCy Schubert      300,   301,   302,   303,   304,   305,   306,   297,   299,   141,
1593*f5f40dd6SCy Schubert       30,    31,   141,   139,    70,   207,   205,   206,   201,   203,
1594*f5f40dd6SCy Schubert        0,     0,   253,   100,   104,   101,   230,   231,   232,   233,
1595*f5f40dd6SCy Schubert      234,   235,   236,   237,   238,   239,   226,   228,     0,     0,
1596*f5f40dd6SCy Schubert       89,    90,    91,     0,    92,    93,    99,    94,    98,    95,
1597*f5f40dd6SCy Schubert       96,    97,    82,    84,     0,     0,    88,   279,   311,     0,
1598*f5f40dd6SCy Schubert       71,   310,   312,   308,   255,     1,     0,     4,    32,    57,
1599*f5f40dd6SCy Schubert      322,   321,   242,   243,   244,   245,   296,   295,   294,     0,
1600*f5f40dd6SCy Schubert        0,    81,    77,    78,    79,    80,     0,    74,     0,   138,
1601*f5f40dd6SCy Schubert        0,   137,   200,   199,   195,   197,     0,    28,   210,   163,
1602*f5f40dd6SCy Schubert      165,   269,   102,     0,   191,   192,   193,   194,   190,     0,
1603*f5f40dd6SCy Schubert        0,   188,   189,   180,   182,     0,     0,   246,   262,   261,
1604*f5f40dd6SCy Schubert      247,   283,   316,   169,   171,   314,   275,   274,   272,     0,
1605*f5f40dd6SCy Schubert      298,     0,   143,   141,   141,   143,   141,   202,   204,     0,
1606*f5f40dd6SCy Schubert      103,   227,   229,   323,   320,   318,   319,    87,    83,    85,
1607*f5f40dd6SCy Schubert       86,   254,     0,   309,   307,     3,    21,   290,   291,   292,
1608*f5f40dd6SCy Schubert      287,   293,   286,   329,   330,     0,     0,     0,    76,    75,
1609*f5f40dd6SCy Schubert      140,   196,   198,   122,   121,     0,   119,   120,     0,   114,
1610*f5f40dd6SCy Schubert      117,   118,   186,   187,   185,   181,   183,   184,     0,   142,
1611*f5f40dd6SCy Schubert      133,   143,   143,   136,   143,   278,     0,     0,   280,     0,
1612*f5f40dd6SCy Schubert       38,    39,    40,    56,    49,    51,    50,    53,    41,    42,
1613*f5f40dd6SCy Schubert       43,    44,    52,    54,    45,    46,    33,    34,    37,    35,
1614*f5f40dd6SCy Schubert        0,    36,     0,     0,     0,     0,   332,     0,   327,     0,
1615*f5f40dd6SCy Schubert      115,   129,   125,   127,   123,   124,   126,   128,   116,     0,
1616*f5f40dd6SCy Schubert      146,   147,   148,   149,   150,   151,   152,   154,   155,   153,
1617*f5f40dd6SCy Schubert      156,   157,   158,   159,   160,   161,     0,   162,   144,   134,
1618*f5f40dd6SCy Schubert      135,   132,   277,   276,   282,   281,     0,    47,    48,    55,
1619*f5f40dd6SCy Schubert        0,   326,   324,   331,     0,   328,   273,   145,   313,   335,
1620*f5f40dd6SCy Schubert        0,     0,     0,     0,     0,   337,     0,     0,   333,   336,
1621*f5f40dd6SCy Schubert      334,     0,     0,   342,   343,   344,   345,   346,     0,     0,
1622*f5f40dd6SCy Schubert        0,   338,     0,   340,     0,   339,   341
1623e27abb66SXin LI };
1624e27abb66SXin LI 
1625e27abb66SXin LI /* YYPGOTO[NTERM-NUM].  */
1626e27abb66SXin LI static const yytype_int16 yypgoto[] =
1627e27abb66SXin LI {
1628*f5f40dd6SCy Schubert     -280,  -280,  -280,   -36,  -280,  -280,    -9,    -7,  -280,  -280,
1629*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,
1630*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,    69,  -280,  -280,  -280,
1631*f5f40dd6SCy Schubert     -280,   -45,  -280,  -280,  -280,  -280,  -280,  -280,   114,  -157,
1632*f5f40dd6SCy Schubert     -279,  -280,  -280,   171,  -280,  -280,   142,  -280,  -280,  -280,
1633*f5f40dd6SCy Schubert       16,  -280,  -280,  -280,  -280,    68,  -280,  -280,  -280,   123,
1634*f5f40dd6SCy Schubert     -280,  -280,   278,   -71,  -280,  -280,  -280,  -280,   106,  -280,
1635*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,  -280,
1636*f5f40dd6SCy Schubert     -280,  -280,  -280,  -280,  -280,   166,  -280,  -280,  -280,  -280,
1637*f5f40dd6SCy Schubert     -280,  -280,   144,  -280,  -280,    87,  -280,  -280,   274,    37,
1638*f5f40dd6SCy Schubert     -196,  -280,  -280,  -280,  -280,   -10,  -280,  -280,   -59,  -280,
1639*f5f40dd6SCy Schubert     -280,  -280,  -128,  -280,  -135,  -280
1640e27abb66SXin LI };
1641e27abb66SXin LI 
1642e27abb66SXin LI /* YYDEFGOTO[NTERM-NUM].  */
1643e27abb66SXin LI static const yytype_int16 yydefgoto[] =
1644e27abb66SXin LI {
1645*f5f40dd6SCy Schubert        0,    59,    60,    61,    62,    63,   140,    96,    97,   316,
1646*f5f40dd6SCy Schubert      376,   377,   378,   379,   380,   381,   382,    64,    65,    66,
1647*f5f40dd6SCy Schubert       67,    89,   247,   248,    68,   212,   213,   214,   215,    69,
1648*f5f40dd6SCy Schubert      183,   131,   262,   339,   340,   341,   398,    70,   251,   292,
1649*f5f40dd6SCy Schubert      350,   418,   117,   118,   119,   151,   152,   153,    71,   273,
1650*f5f40dd6SCy Schubert      274,   275,   276,    72,   254,   255,   256,    73,   178,   179,
1651*f5f40dd6SCy Schubert      180,    74,   110,   111,   112,   113,    75,   196,   197,   198,
1652*f5f40dd6SCy Schubert       76,    77,    78,   280,    79,    80,   121,   158,   288,   289,
1653*f5f40dd6SCy Schubert      182,   423,   311,   358,   138,   139,    81,    82,   322,   239,
1654*f5f40dd6SCy Schubert       83,   167,   168,   224,   220,   221,   222,   157,   141,   307,
1655*f5f40dd6SCy Schubert      232,   216,    84,    85,   325,   326,   327,   385,   386,   441,
1656*f5f40dd6SCy Schubert      387,   444,   445,   458,   459,   460
1657e27abb66SXin LI };
1658e27abb66SXin LI 
1659e27abb66SXin LI /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
1660e27abb66SXin LI    positive, shift that token.  If negative, reduce the rule whose
1661e27abb66SXin LI    number is the opposite.  If YYTABLE_NINF, syntax error.  */
1662e27abb66SXin LI static const yytype_int16 yytable[] =
1663e27abb66SXin LI {
1664*f5f40dd6SCy Schubert       95,    92,   302,   184,   218,   391,   175,   304,   132,   356,
1665*f5f40dd6SCy Schubert      383,     1,   427,   317,   114,   295,   353,   236,   443,   310,
1666*f5f40dd6SCy Schubert        2,   278,   160,   161,   226,   286,     3,     4,     5,   448,
1667*f5f40dd6SCy Schubert      392,   305,    86,   173,   252,     6,     7,   230,    87,   258,
1668*f5f40dd6SCy Schubert      237,     8,     9,   162,    10,    11,   217,    93,    12,    94,
1669*f5f40dd6SCy Schubert       13,   258,    14,    15,   228,   333,   229,    16,    88,   186,
1670*f5f40dd6SCy Schubert      120,   176,   279,   334,   287,   238,    17,   335,   253,   231,
1671*f5f40dd6SCy Schubert      432,    18,   419,   420,   383,   421,    90,   133,    19,   346,
1672*f5f40dd6SCy Schubert       20,   134,   318,   249,   319,   357,    91,   163,   142,   187,
1673*f5f40dd6SCy Schubert       21,    22,   135,    23,    24,   323,   324,   277,    25,    26,
1674*f5f40dd6SCy Schubert      136,   137,    27,    28,   159,   123,   155,   336,   188,   124,
1675*f5f40dd6SCy Schubert      115,    29,   189,   156,   174,   393,   116,   164,   223,   181,
1676*f5f40dd6SCy Schubert      323,   324,   185,   394,   177,    30,    91,    31,    32,   225,
1677*f5f40dd6SCy Schubert      233,   169,   282,    33,   428,   241,   351,   352,   300,   354,
1678*f5f40dd6SCy Schubert      337,   227,   395,    34,   240,   282,   234,    91,    35,   306,
1679*f5f40dd6SCy Schubert       36,   235,    37,   219,    38,    39,   250,   257,   260,   261,
1680*f5f40dd6SCy Schubert      242,   284,   285,   243,   291,    40,    41,    42,    43,    44,
1681*f5f40dd6SCy Schubert       45,    46,   125,   293,    47,   294,   170,    48,   171,    49,
1682*f5f40dd6SCy Schubert      298,   303,   299,   320,   309,   312,   314,   328,    50,   315,
1683*f5f40dd6SCy Schubert      190,   165,   329,   435,    51,    52,    53,   166,    54,    55,
1684*f5f40dd6SCy Schubert      396,   332,   342,   343,   397,    56,    57,   344,   321,   348,
1685*f5f40dd6SCy Schubert      349,   338,     2,   355,   359,    -6,    58,   388,     3,     4,
1686*f5f40dd6SCy Schubert        5,   126,   389,   191,   192,   193,   194,     6,     7,   390,
1687*f5f40dd6SCy Schubert      399,   195,   127,     8,     9,   128,    10,    11,   422,   425,
1688*f5f40dd6SCy Schubert       12,   426,    13,   330,    14,    15,   446,   429,   430,    16,
1689*f5f40dd6SCy Schubert      434,   451,   431,   244,   245,   436,   437,   440,    17,   129,
1690*f5f40dd6SCy Schubert      246,   438,   443,    18,   450,   130,   172,   442,   466,   463,
1691*f5f40dd6SCy Schubert       19,   452,    20,   447,   464,   465,    91,   143,   144,   145,
1692*f5f40dd6SCy Schubert      146,   308,    21,    22,   263,    23,    24,   296,   259,   345,
1693*f5f40dd6SCy Schubert       25,    26,   122,   283,    27,    28,   453,   454,   455,   456,
1694*f5f40dd6SCy Schubert      457,   297,   301,    29,   281,   154,   461,   313,   147,    98,
1695*f5f40dd6SCy Schubert      148,   290,   149,   347,    99,   384,   449,    30,   150,    31,
1696*f5f40dd6SCy Schubert       32,   100,   331,   462,     0,    33,   433,     0,     0,     0,
1697*f5f40dd6SCy Schubert      264,   265,   266,   267,     0,    34,     0,     0,     0,     0,
1698*f5f40dd6SCy Schubert       35,     0,    36,     0,    37,     0,    38,    39,     0,   424,
1699*f5f40dd6SCy Schubert      453,   454,   455,   456,   457,     0,     0,    40,    41,    42,
1700*f5f40dd6SCy Schubert       43,    44,    45,    46,     0,     0,    47,     0,     0,    48,
1701*f5f40dd6SCy Schubert        0,    49,     0,     0,     0,     0,     0,     0,     0,   101,
1702*f5f40dd6SCy Schubert       50,     0,     0,     0,     0,     0,    51,    52,    53,   268,
1703*f5f40dd6SCy Schubert       54,    55,     0,     0,     2,     0,   360,    56,    57,     0,
1704*f5f40dd6SCy Schubert        3,     4,     5,     0,     0,     0,   361,    -6,    58,     6,
1705*f5f40dd6SCy Schubert        7,     0,     0,   102,   103,     8,     9,     0,    10,    11,
1706*f5f40dd6SCy Schubert        0,   439,    12,     0,    13,     0,    14,    15,     0,     0,
1707*f5f40dd6SCy Schubert        0,    16,   104,     0,     0,   269,     0,   105,     0,     0,
1708*f5f40dd6SCy Schubert       17,     0,     0,     0,     0,    18,     0,   362,   363,     0,
1709*f5f40dd6SCy Schubert        0,     0,    19,     0,    20,   270,     0,     0,     0,     0,
1710*f5f40dd6SCy Schubert      271,   272,     0,     0,    21,    22,   364,    23,    24,   106,
1711*f5f40dd6SCy Schubert        0,     0,    25,    26,     0,     0,    27,    28,     0,     0,
1712*f5f40dd6SCy Schubert        0,     0,     0,     0,     0,    29,     0,   365,     0,     0,
1713*f5f40dd6SCy Schubert        0,     0,     0,   107,   108,   109,   366,     0,   367,    30,
1714*f5f40dd6SCy Schubert        0,    31,    32,     0,     0,     0,     0,    33,     0,     0,
1715*f5f40dd6SCy Schubert        0,     0,     0,     0,   368,     0,     0,    34,     0,     0,
1716*f5f40dd6SCy Schubert        0,     0,    35,     0,    36,     0,    37,     0,    38,    39,
1717*f5f40dd6SCy Schubert        0,     0,     0,     0,     0,   369,   370,     0,     0,    40,
1718*f5f40dd6SCy Schubert       41,    42,    43,    44,    45,    46,     0,     0,    47,     0,
1719*f5f40dd6SCy Schubert        0,    48,     0,    49,     0,     0,     0,   400,     0,     0,
1720*f5f40dd6SCy Schubert        0,     0,    50,     0,     0,     0,   401,     0,    51,    52,
1721*f5f40dd6SCy Schubert       53,     0,    54,    55,   371,   402,   372,     0,     0,    56,
1722*f5f40dd6SCy Schubert       57,     0,     0,     0,   373,     0,     0,     0,   374,   375,
1723*f5f40dd6SCy Schubert       58,     0,     0,     0,   199,   403,   200,   201,   404,     0,
1724*f5f40dd6SCy Schubert        0,     0,     0,   202,   405,     0,   203,     0,     0,     0,
1725e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1726*f5f40dd6SCy Schubert        0,     0,     0,     0,     0,     0,     0,     0,     0,   406,
1727*f5f40dd6SCy Schubert        0,     0,     0,   407,   408,     0,   204,   409,   410,   411,
1728*f5f40dd6SCy Schubert        0,   412,   413,   414,     0,   415,     0,     0,     0,     0,
1729e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1730a466cc55SCy Schubert        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1731*f5f40dd6SCy Schubert        0,     0,     0,     0,     0,   416,     0,     0,   205,     0,
1732*f5f40dd6SCy Schubert      206,     0,     0,     0,     0,     0,   207,     0,   208,     0,
1733*f5f40dd6SCy Schubert        0,     0,   209,     0,     0,     0,     0,     0,     0,     0,
1734*f5f40dd6SCy Schubert        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1735*f5f40dd6SCy Schubert      417,     0,     0,     0,     0,     0,   210,   211
1736e27abb66SXin LI };
1737e27abb66SXin LI 
1738e27abb66SXin LI static const yytype_int16 yycheck[] =
1739e27abb66SXin LI {
1740*f5f40dd6SCy Schubert        9,     8,   198,    48,    69,     4,    48,    45,    17,    70,
1741*f5f40dd6SCy Schubert      161,     1,    69,     5,    11,   172,   295,    39,   210,   215,
1742*f5f40dd6SCy Schubert       10,    22,     7,     8,    60,    30,    16,    17,    18,   221,
1743*f5f40dd6SCy Schubert       29,    69,   205,    42,   147,    25,    26,    37,    69,   110,
1744*f5f40dd6SCy Schubert       62,    31,    32,    28,    34,    35,    53,    75,    38,    77,
1745*f5f40dd6SCy Schubert       40,   122,    42,    43,    63,    34,    65,    47,    69,     6,
1746*f5f40dd6SCy Schubert      175,   103,    63,    42,    69,    87,    56,    46,   181,    69,
1747*f5f40dd6SCy Schubert      221,    61,   351,   352,   161,   354,   165,   175,    68,   275,
1748*f5f40dd6SCy Schubert       70,   175,    74,    90,    76,   146,   175,    72,    69,    36,
1749*f5f40dd6SCy Schubert       80,    81,   175,    83,    84,   207,   208,   133,    88,    89,
1750*f5f40dd6SCy Schubert      175,   175,    92,    93,    69,    23,   175,    86,    55,    27,
1751*f5f40dd6SCy Schubert      107,   101,    59,   175,    69,   114,   113,   102,    69,   175,
1752*f5f40dd6SCy Schubert      207,   208,   175,   122,   166,   115,   175,   117,   118,     0,
1753*f5f40dd6SCy Schubert       69,    30,   141,   123,   191,    33,   293,   294,   183,   296,
1754*f5f40dd6SCy Schubert      119,   205,   141,   133,   220,   154,   175,   175,   138,   187,
1755*f5f40dd6SCy Schubert      140,   175,   142,   218,   144,   145,    94,   175,    69,    37,
1756*f5f40dd6SCy Schubert       58,    69,   175,    61,    73,   155,   156,   157,   158,   159,
1757*f5f40dd6SCy Schubert      160,   161,    90,    30,   164,    30,    75,   167,    77,   169,
1758*f5f40dd6SCy Schubert       69,   175,   217,   175,    69,    69,    69,    69,   178,   205,
1759*f5f40dd6SCy Schubert      137,   176,   175,   389,   184,   185,   186,   182,   188,   189,
1760*f5f40dd6SCy Schubert      199,   175,   175,   175,   203,   195,   196,    69,   200,    69,
1761*f5f40dd6SCy Schubert       69,   190,    10,   175,    41,   205,   206,   205,    16,    17,
1762*f5f40dd6SCy Schubert       18,   139,   217,   170,   171,   172,   173,    25,    26,   175,
1763*f5f40dd6SCy Schubert      216,   178,   150,    31,    32,   153,    34,    35,    30,    69,
1764*f5f40dd6SCy Schubert       38,    69,    40,   250,    42,    43,   442,   175,   217,    47,
1765*f5f40dd6SCy Schubert      220,   447,   205,   151,   152,    69,    57,   209,    56,   177,
1766*f5f40dd6SCy Schubert      158,   219,   210,    61,   205,   183,   165,   217,   464,   205,
1767*f5f40dd6SCy Schubert       68,   220,    70,   217,   217,   205,   175,    64,    65,    66,
1768*f5f40dd6SCy Schubert       67,   212,    80,    81,     3,    83,    84,   173,   117,   273,
1769*f5f40dd6SCy Schubert       88,    89,    14,   151,    92,    93,   211,   212,   213,   214,
1770*f5f40dd6SCy Schubert      215,   178,   196,   101,   138,    31,   221,   220,    95,     8,
1771*f5f40dd6SCy Schubert       97,   167,    99,   276,    13,   325,   444,   115,   105,   117,
1772*f5f40dd6SCy Schubert      118,    20,   254,   458,    -1,   123,   385,    -1,    -1,    -1,
1773*f5f40dd6SCy Schubert       49,    50,    51,    52,    -1,   133,    -1,    -1,    -1,    -1,
1774*f5f40dd6SCy Schubert      138,    -1,   140,    -1,   142,    -1,   144,   145,    -1,   356,
1775*f5f40dd6SCy Schubert      211,   212,   213,   214,   215,    -1,    -1,   155,   156,   157,
1776*f5f40dd6SCy Schubert      158,   159,   160,   161,    -1,    -1,   164,    -1,    -1,   167,
1777*f5f40dd6SCy Schubert       -1,   169,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    78,
1778*f5f40dd6SCy Schubert      178,    -1,    -1,    -1,    -1,    -1,   184,   185,   186,   108,
1779*f5f40dd6SCy Schubert      188,   189,    -1,    -1,    10,    -1,     9,   195,   196,    -1,
1780*f5f40dd6SCy Schubert       16,    17,    18,    -1,    -1,    -1,    19,   205,   206,    25,
1781*f5f40dd6SCy Schubert       26,    -1,    -1,   112,   113,    31,    32,    -1,    34,    35,
1782*f5f40dd6SCy Schubert       -1,   430,    38,    -1,    40,    -1,    42,    43,    -1,    -1,
1783*f5f40dd6SCy Schubert       -1,    47,   131,    -1,    -1,   154,    -1,   136,    -1,    -1,
1784*f5f40dd6SCy Schubert       56,    -1,    -1,    -1,    -1,    61,    -1,    60,    61,    -1,
1785*f5f40dd6SCy Schubert       -1,    -1,    68,    -1,    70,   174,    -1,    -1,    -1,    -1,
1786*f5f40dd6SCy Schubert      179,   180,    -1,    -1,    80,    81,    79,    83,    84,   168,
1787*f5f40dd6SCy Schubert       -1,    -1,    88,    89,    -1,    -1,    92,    93,    -1,    -1,
1788*f5f40dd6SCy Schubert       -1,    -1,    -1,    -1,    -1,   101,    -1,   100,    -1,    -1,
1789*f5f40dd6SCy Schubert       -1,    -1,    -1,   192,   193,   194,   109,    -1,   111,   115,
1790*f5f40dd6SCy Schubert       -1,   117,   118,    -1,    -1,    -1,    -1,   123,    -1,    -1,
1791*f5f40dd6SCy Schubert       -1,    -1,    -1,    -1,   127,    -1,    -1,   133,    -1,    -1,
1792*f5f40dd6SCy Schubert       -1,    -1,   138,    -1,   140,    -1,   142,    -1,   144,   145,
1793*f5f40dd6SCy Schubert       -1,    -1,    -1,    -1,    -1,   148,   149,    -1,    -1,   155,
1794*f5f40dd6SCy Schubert      156,   157,   158,   159,   160,   161,    -1,    -1,   164,    -1,
1795*f5f40dd6SCy Schubert       -1,   167,    -1,   169,    -1,    -1,    -1,    44,    -1,    -1,
1796*f5f40dd6SCy Schubert       -1,    -1,   178,    -1,    -1,    -1,    53,    -1,   184,   185,
1797*f5f40dd6SCy Schubert      186,    -1,   188,   189,   187,    62,   189,    -1,    -1,   195,
1798*f5f40dd6SCy Schubert      196,    -1,    -1,    -1,   197,    -1,    -1,    -1,   201,   202,
1799*f5f40dd6SCy Schubert      206,    -1,    -1,    -1,    12,    82,    14,    15,    85,    -1,
1800*f5f40dd6SCy Schubert       -1,    -1,    -1,    21,    91,    -1,    24,    -1,    -1,    -1,
1801e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1802*f5f40dd6SCy Schubert       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   116,
1803*f5f40dd6SCy Schubert       -1,    -1,    -1,   120,   121,    -1,    54,   124,   125,   126,
1804*f5f40dd6SCy Schubert       -1,   128,   129,   130,    -1,   132,    -1,    -1,    -1,    -1,
1805e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1806a466cc55SCy Schubert       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1807*f5f40dd6SCy Schubert       -1,    -1,    -1,    -1,    -1,   162,    -1,    -1,    96,    -1,
1808*f5f40dd6SCy Schubert       98,    -1,    -1,    -1,    -1,    -1,   104,    -1,   106,    -1,
1809*f5f40dd6SCy Schubert       -1,    -1,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1810*f5f40dd6SCy Schubert       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1811*f5f40dd6SCy Schubert      197,    -1,    -1,    -1,    -1,    -1,   134,   135
1812e27abb66SXin LI };
1813e27abb66SXin LI 
1814*f5f40dd6SCy Schubert /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
1815*f5f40dd6SCy Schubert    state STATE-NUM.  */
1816a466cc55SCy Schubert static const yytype_int16 yystos[] =
1817e27abb66SXin LI {
1818*f5f40dd6SCy Schubert        0,     1,    10,    16,    17,    18,    25,    26,    31,    32,
1819*f5f40dd6SCy Schubert       34,    35,    38,    40,    42,    43,    47,    56,    61,    68,
1820*f5f40dd6SCy Schubert       70,    80,    81,    83,    84,    88,    89,    92,    93,   101,
1821*f5f40dd6SCy Schubert      115,   117,   118,   123,   133,   138,   140,   142,   144,   145,
1822*f5f40dd6SCy Schubert      155,   156,   157,   158,   159,   160,   161,   164,   167,   169,
1823*f5f40dd6SCy Schubert      178,   184,   185,   186,   188,   189,   195,   196,   206,   223,
1824*f5f40dd6SCy Schubert      224,   225,   226,   227,   239,   240,   241,   242,   246,   251,
1825*f5f40dd6SCy Schubert      259,   270,   275,   279,   283,   288,   292,   293,   294,   296,
1826*f5f40dd6SCy Schubert      297,   308,   309,   312,   324,   325,   205,    69,    69,   243,
1827*f5f40dd6SCy Schubert      165,   175,   229,    75,    77,   228,   229,   230,     8,    13,
1828*f5f40dd6SCy Schubert       20,    78,   112,   113,   131,   136,   168,   192,   193,   194,
1829*f5f40dd6SCy Schubert      284,   285,   286,   287,    11,   107,   113,   264,   265,   266,
1830*f5f40dd6SCy Schubert      175,   298,   284,    23,    27,    90,   139,   150,   153,   177,
1831*f5f40dd6SCy Schubert      183,   253,   228,   175,   175,   175,   175,   175,   306,   307,
1832*f5f40dd6SCy Schubert      228,   320,    69,    64,    65,    66,    67,    95,    97,    99,
1833*f5f40dd6SCy Schubert      105,   267,   268,   269,   320,   175,   175,   319,   299,    69,
1834*f5f40dd6SCy Schubert        7,     8,    28,    72,   102,   176,   182,   313,   314,    30,
1835*f5f40dd6SCy Schubert       75,    77,   165,   228,    69,    48,   103,   166,   280,   281,
1836*f5f40dd6SCy Schubert      282,   175,   302,   252,   253,   175,     6,    36,    55,    59,
1837*f5f40dd6SCy Schubert      137,   170,   171,   172,   173,   178,   289,   290,   291,    12,
1838*f5f40dd6SCy Schubert       14,    15,    21,    24,    54,    96,    98,   104,   106,   110,
1839*f5f40dd6SCy Schubert      134,   135,   247,   248,   249,   250,   323,   229,    69,   218,
1840*f5f40dd6SCy Schubert      316,   317,   318,    69,   315,     0,   225,   205,   228,   228,
1841*f5f40dd6SCy Schubert       37,    69,   322,    69,   175,   175,    39,    62,    87,   311,
1842*f5f40dd6SCy Schubert      220,    33,    58,    61,   151,   152,   158,   244,   245,   229,
1843*f5f40dd6SCy Schubert       94,   260,   147,   181,   276,   277,   278,   175,   285,   265,
1844*f5f40dd6SCy Schubert       69,    37,   254,     3,    49,    50,    51,    52,   108,   154,
1845*f5f40dd6SCy Schubert      174,   179,   180,   271,   272,   273,   274,   225,    22,    63,
1846*f5f40dd6SCy Schubert      295,   307,   228,   268,    69,   175,    30,    69,   300,   301,
1847*f5f40dd6SCy Schubert      314,    73,   261,    30,    30,   261,   260,   281,    69,   217,
1848*f5f40dd6SCy Schubert      253,   290,   322,   175,    45,    69,   187,   321,   248,    69,
1849*f5f40dd6SCy Schubert      322,   304,    69,   317,    69,   205,   231,     5,    74,    76,
1850*f5f40dd6SCy Schubert      175,   200,   310,   207,   208,   326,   327,   328,    69,   175,
1851*f5f40dd6SCy Schubert      229,   277,   175,    34,    42,    46,    86,   119,   190,   255,
1852*f5f40dd6SCy Schubert      256,   257,   175,   175,    69,   272,   322,   321,    69,    69,
1853*f5f40dd6SCy Schubert      262,   261,   261,   262,   261,   175,    70,   146,   305,    41,
1854*f5f40dd6SCy Schubert        9,    19,    60,    61,    79,   100,   109,   111,   127,   148,
1855*f5f40dd6SCy Schubert      149,   187,   189,   197,   201,   202,   232,   233,   234,   235,
1856*f5f40dd6SCy Schubert      236,   237,   238,   161,   327,   329,   330,   332,   205,   217,
1857*f5f40dd6SCy Schubert      175,     4,    29,   114,   122,   141,   199,   203,   258,   216,
1858*f5f40dd6SCy Schubert       44,    53,    62,    82,    85,    91,   116,   120,   121,   124,
1859*f5f40dd6SCy Schubert      125,   126,   128,   129,   130,   132,   162,   197,   263,   262,
1860*f5f40dd6SCy Schubert      262,   262,    30,   303,   229,    69,    69,    69,   191,   175,
1861*f5f40dd6SCy Schubert      217,   205,   221,   330,   220,   322,    69,    57,   219,   228,
1862*f5f40dd6SCy Schubert      209,   331,   217,   210,   333,   334,   322,   217,   221,   334,
1863*f5f40dd6SCy Schubert      205,   322,   220,   211,   212,   213,   214,   215,   335,   336,
1864*f5f40dd6SCy Schubert      337,   221,   336,   205,   217,   205,   322
1865e27abb66SXin LI };
1866e27abb66SXin LI 
1867*f5f40dd6SCy Schubert /* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM.  */
1868a466cc55SCy Schubert static const yytype_int16 yyr1[] =
18699034852cSGleb Smirnoff {
1870*f5f40dd6SCy Schubert        0,   222,   223,   224,   224,   224,   225,   225,   225,   225,
1871*f5f40dd6SCy Schubert      225,   225,   225,   225,   225,   225,   225,   225,   225,   225,
1872*f5f40dd6SCy Schubert      225,   226,   227,   227,   227,   227,   227,   228,   228,   229,
1873*f5f40dd6SCy Schubert      230,   230,   231,   231,   232,   232,   232,   233,   234,   234,
1874*f5f40dd6SCy Schubert      234,   234,   234,   234,   234,   234,   234,   235,   235,   236,
1875*f5f40dd6SCy Schubert      236,   236,   236,   236,   236,   237,   238,   239,   240,   240,
1876*f5f40dd6SCy Schubert      241,   241,   241,   241,   242,   242,   242,   242,   242,   242,
1877*f5f40dd6SCy Schubert      242,   242,   242,   243,   243,   244,   244,   245,   245,   245,
1878*f5f40dd6SCy Schubert      245,   245,   246,   247,   247,   248,   248,   248,   248,   249,
1879*f5f40dd6SCy Schubert      249,   249,   249,   249,   249,   249,   249,   249,   250,   250,
1880*f5f40dd6SCy Schubert      251,   251,   251,   252,   252,   253,   253,   253,   253,   253,
1881*f5f40dd6SCy Schubert      253,   253,   253,   254,   254,   255,   255,   255,   255,   256,
1882*f5f40dd6SCy Schubert      256,   257,   257,   258,   258,   258,   258,   258,   258,   258,
1883*f5f40dd6SCy Schubert      259,   259,   259,   259,   259,   259,   259,   259,   259,   260,
1884*f5f40dd6SCy Schubert      260,   261,   261,   262,   262,   262,   263,   263,   263,   263,
1885*f5f40dd6SCy Schubert      263,   263,   263,   263,   263,   263,   263,   263,   263,   263,
1886*f5f40dd6SCy Schubert      263,   263,   263,   264,   264,   265,   266,   266,   266,   267,
1887*f5f40dd6SCy Schubert      267,   268,   269,   269,   269,   269,   269,   269,   269,   269,
1888*f5f40dd6SCy Schubert      270,   271,   271,   272,   272,   272,   272,   272,   273,   273,
1889*f5f40dd6SCy Schubert      273,   274,   274,   274,   274,   275,   276,   276,   277,   278,
1890*f5f40dd6SCy Schubert      278,   279,   280,   280,   281,   282,   282,   282,   283,   283,
1891*f5f40dd6SCy Schubert      284,   284,   285,   285,   286,   286,   286,   286,   286,   286,
1892*f5f40dd6SCy Schubert      287,   287,   287,   287,   287,   287,   288,   289,   289,   290,
1893*f5f40dd6SCy Schubert      291,   291,   291,   291,   291,   291,   291,   291,   291,   291,
1894*f5f40dd6SCy Schubert      292,   292,   292,   292,   292,   292,   292,   292,   292,   292,
1895*f5f40dd6SCy Schubert      292,   292,   292,   292,   292,   292,   293,   293,   293,   294,
1896*f5f40dd6SCy Schubert      294,   295,   295,   295,   296,   297,   297,   297,   298,   298,
1897*f5f40dd6SCy Schubert      298,   299,   299,   300,   301,   301,   302,   303,   303,   304,
1898*f5f40dd6SCy Schubert      304,   305,   305,   306,   306,   307,   308,   308,   309,   309,
1899*f5f40dd6SCy Schubert      310,   310,   310,   310,   311,   311,   311,   312,   313,   313,
1900*f5f40dd6SCy Schubert      314,   314,   314,   314,   314,   314,   314,   315,   315,   316,
1901*f5f40dd6SCy Schubert      316,   317,   317,   318,   319,   319,   320,   320,   321,   321,
1902*f5f40dd6SCy Schubert      321,   322,   322,   323,   324,   325,   326,   326,   327,   328,
1903*f5f40dd6SCy Schubert      328,   329,   329,   330,   331,   332,   333,   333,   334,   335,
1904*f5f40dd6SCy Schubert      335,   336,   337,   337,   337,   337,   337
19059034852cSGleb Smirnoff };
19069034852cSGleb Smirnoff 
1907*f5f40dd6SCy Schubert /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM.  */
1908a466cc55SCy Schubert static const yytype_int8 yyr2[] =
19099034852cSGleb Smirnoff {
19109034852cSGleb Smirnoff        0,     2,     1,     3,     2,     2,     0,     1,     1,     1,
19119034852cSGleb Smirnoff        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1912a466cc55SCy Schubert        1,     3,     1,     1,     1,     1,     1,     1,     2,     1,
1913a466cc55SCy Schubert        1,     1,     0,     2,     1,     1,     1,     1,     1,     1,
19142d4e511cSCy Schubert        1,     1,     1,     1,     1,     1,     1,     2,     2,     1,
1915a466cc55SCy Schubert        1,     1,     1,     1,     1,     2,     1,     2,     1,     1,
1916a466cc55SCy Schubert        1,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1917a466cc55SCy Schubert        2,     2,     2,     0,     2,     2,     2,     1,     1,     1,
1918a466cc55SCy Schubert        1,     1,     2,     2,     1,     2,     2,     2,     1,     1,
1919a466cc55SCy Schubert        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1920a466cc55SCy Schubert        2,     2,     3,     2,     1,     1,     1,     1,     1,     1,
1921a466cc55SCy Schubert        1,     1,     1,     0,     2,     2,     2,     1,     1,     1,
1922a466cc55SCy Schubert        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1923*f5f40dd6SCy Schubert        2,     2,     5,     4,     5,     5,     4,     3,     3,     0,
1924*f5f40dd6SCy Schubert        2,     0,     2,     0,     2,     3,     1,     1,     1,     1,
1925a466cc55SCy Schubert        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1926*f5f40dd6SCy Schubert        1,     1,     1,     2,     1,     2,     1,     1,     1,     2,
1927*f5f40dd6SCy Schubert        1,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1928*f5f40dd6SCy Schubert        3,     2,     1,     2,     2,     2,     2,     2,     1,     1,
1929*f5f40dd6SCy Schubert        1,     1,     1,     1,     1,     3,     2,     1,     2,     1,
1930*f5f40dd6SCy Schubert        1,     2,     2,     1,     2,     1,     1,     1,     2,     2,
1931*f5f40dd6SCy Schubert        2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1932*f5f40dd6SCy Schubert        1,     1,     1,     1,     1,     1,     2,     2,     1,     2,
1933a466cc55SCy Schubert        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1934*f5f40dd6SCy Schubert        1,     1,     2,     2,     2,     2,     3,     3,     1,     2,
1935*f5f40dd6SCy Schubert        2,     2,     2,     2,     3,     2,     1,     1,     1,     1,
1936*f5f40dd6SCy Schubert        1,     1,     1,     0,     1,     1,     1,     1,     1,     2,
1937*f5f40dd6SCy Schubert        0,     0,     2,     4,     1,     1,     4,     1,     0,     0,
1938*f5f40dd6SCy Schubert        2,     2,     2,     2,     1,     1,     3,     3,     1,     1,
1939*f5f40dd6SCy Schubert        1,     1,     1,     1,     1,     1,     1,     2,     2,     1,
1940*f5f40dd6SCy Schubert        1,     1,     1,     1,     1,     1,     1,     2,     1,     2,
1941*f5f40dd6SCy Schubert        1,     1,     1,     5,     2,     1,     2,     1,     1,     1,
1942*f5f40dd6SCy Schubert        1,     1,     1,     2,     5,     1,     3,     2,     3,     1,
1943*f5f40dd6SCy Schubert        1,     2,     1,     5,     4,     3,     2,     1,     6,     3,
1944*f5f40dd6SCy Schubert        2,     3,     1,     1,     1,     1,     1
19459034852cSGleb Smirnoff };
19469034852cSGleb Smirnoff 
19479034852cSGleb Smirnoff 
1948a466cc55SCy Schubert enum { YYENOMEM = -2 };
1949a466cc55SCy Schubert 
19502b15cb3dSCy Schubert #define yyerrok         (yyerrstatus = 0)
19512b15cb3dSCy Schubert #define yyclearin       (yychar = YYEMPTY)
19522b15cb3dSCy Schubert 
19532b15cb3dSCy Schubert #define YYACCEPT        goto yyacceptlab
19542b15cb3dSCy Schubert #define YYABORT         goto yyabortlab
19552b15cb3dSCy Schubert #define YYERROR         goto yyerrorlab
1956*f5f40dd6SCy Schubert #define YYNOMEM         goto yyexhaustedlab
19572b15cb3dSCy Schubert 
19582b15cb3dSCy Schubert 
19592b15cb3dSCy Schubert #define YYRECOVERING()  (!!yyerrstatus)
19602b15cb3dSCy Schubert 
19612b15cb3dSCy Schubert #define YYBACKUP(Token, Value)                                    \
19622b15cb3dSCy Schubert   do                                                              \
19632b15cb3dSCy Schubert     if (yychar == YYEMPTY)                                        \
19642b15cb3dSCy Schubert       {                                                           \
19652b15cb3dSCy Schubert         yychar = (Token);                                         \
19662b15cb3dSCy Schubert         yylval = (Value);                                         \
19672b15cb3dSCy Schubert         YYPOPSTACK (yylen);                                       \
19682b15cb3dSCy Schubert         yystate = *yyssp;                                         \
19692b15cb3dSCy Schubert         goto yybackup;                                            \
19702b15cb3dSCy Schubert       }                                                           \
19712b15cb3dSCy Schubert     else                                                          \
19722b15cb3dSCy Schubert       {                                                           \
1973276da39aSCy Schubert         yyerror (YY_("syntax error: cannot back up")); \
19742b15cb3dSCy Schubert         YYERROR;                                                  \
19752b15cb3dSCy Schubert       }                                                           \
1976e27abb66SXin LI   while (0)
19772b15cb3dSCy Schubert 
1978a466cc55SCy Schubert /* Backward compatibility with an undocumented macro.
1979a466cc55SCy Schubert    Use YYerror or YYUNDEF. */
1980a466cc55SCy Schubert #define YYERRCODE YYUNDEF
19812b15cb3dSCy Schubert 
19822b15cb3dSCy Schubert 
19832b15cb3dSCy Schubert /* Enable debugging if requested.  */
19842b15cb3dSCy Schubert #if YYDEBUG
19852b15cb3dSCy Schubert 
19862b15cb3dSCy Schubert # ifndef YYFPRINTF
19872b15cb3dSCy Schubert #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
19882b15cb3dSCy Schubert #  define YYFPRINTF fprintf
19892b15cb3dSCy Schubert # endif
19902b15cb3dSCy Schubert 
19912b15cb3dSCy Schubert # define YYDPRINTF(Args)                        \
19922b15cb3dSCy Schubert do {                                            \
19932b15cb3dSCy Schubert   if (yydebug)                                  \
19942b15cb3dSCy Schubert     YYFPRINTF Args;                             \
1995e27abb66SXin LI } while (0)
1996e27abb66SXin LI 
1997*f5f40dd6SCy Schubert 
1998e27abb66SXin LI 
19992b15cb3dSCy Schubert 
2000a466cc55SCy Schubert # define YY_SYMBOL_PRINT(Title, Kind, Value, Location)                    \
20012b15cb3dSCy Schubert do {                                                                      \
20022b15cb3dSCy Schubert   if (yydebug)                                                            \
20032b15cb3dSCy Schubert     {                                                                     \
20042b15cb3dSCy Schubert       YYFPRINTF (stderr, "%s ", Title);                                   \
20052b15cb3dSCy Schubert       yy_symbol_print (stderr,                                            \
2006a466cc55SCy Schubert                   Kind, Value); \
20072b15cb3dSCy Schubert       YYFPRINTF (stderr, "\n");                                           \
20082b15cb3dSCy Schubert     }                                                                     \
2009e27abb66SXin LI } while (0)
20102b15cb3dSCy Schubert 
20112b15cb3dSCy Schubert 
2012a466cc55SCy Schubert /*-----------------------------------.
2013a466cc55SCy Schubert | Print this symbol's value on YYO.  |
2014a466cc55SCy Schubert `-----------------------------------*/
20152b15cb3dSCy Schubert 
20162b15cb3dSCy Schubert static void
2017a466cc55SCy Schubert yy_symbol_value_print (FILE *yyo,
2018a466cc55SCy Schubert                        yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep)
20192b15cb3dSCy Schubert {
2020a466cc55SCy Schubert   FILE *yyoutput = yyo;
2021a466cc55SCy Schubert   YY_USE (yyoutput);
20222b15cb3dSCy Schubert   if (!yyvaluep)
20232b15cb3dSCy Schubert     return;
2024a466cc55SCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
2025a466cc55SCy Schubert   YY_USE (yykind);
2026a466cc55SCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_END
20272b15cb3dSCy Schubert }
20282b15cb3dSCy Schubert 
20292b15cb3dSCy Schubert 
2030a466cc55SCy Schubert /*---------------------------.
2031a466cc55SCy Schubert | Print this symbol on YYO.  |
2032a466cc55SCy Schubert `---------------------------*/
20332b15cb3dSCy Schubert 
20342b15cb3dSCy Schubert static void
2035a466cc55SCy Schubert yy_symbol_print (FILE *yyo,
2036a466cc55SCy Schubert                  yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep)
20372b15cb3dSCy Schubert {
2038a466cc55SCy Schubert   YYFPRINTF (yyo, "%s %s (",
2039a466cc55SCy Schubert              yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind));
20402b15cb3dSCy Schubert 
2041a466cc55SCy Schubert   yy_symbol_value_print (yyo, yykind, yyvaluep);
2042a466cc55SCy Schubert   YYFPRINTF (yyo, ")");
20432b15cb3dSCy Schubert }
20442b15cb3dSCy Schubert 
20452b15cb3dSCy Schubert /*------------------------------------------------------------------.
20462b15cb3dSCy Schubert | yy_stack_print -- Print the state stack from its BOTTOM up to its |
20472b15cb3dSCy Schubert | TOP (included).                                                   |
20482b15cb3dSCy Schubert `------------------------------------------------------------------*/
20492b15cb3dSCy Schubert 
20502b15cb3dSCy Schubert static void
2051a466cc55SCy Schubert yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
20522b15cb3dSCy Schubert {
20532b15cb3dSCy Schubert   YYFPRINTF (stderr, "Stack now");
20542b15cb3dSCy Schubert   for (; yybottom <= yytop; yybottom++)
20552b15cb3dSCy Schubert     {
20562b15cb3dSCy Schubert       int yybot = *yybottom;
20572b15cb3dSCy Schubert       YYFPRINTF (stderr, " %d", yybot);
20582b15cb3dSCy Schubert     }
20592b15cb3dSCy Schubert   YYFPRINTF (stderr, "\n");
20602b15cb3dSCy Schubert }
20612b15cb3dSCy Schubert 
20622b15cb3dSCy Schubert # define YY_STACK_PRINT(Bottom, Top)                            \
20632b15cb3dSCy Schubert do {                                                            \
20642b15cb3dSCy Schubert   if (yydebug)                                                  \
20652b15cb3dSCy Schubert     yy_stack_print ((Bottom), (Top));                           \
2066e27abb66SXin LI } while (0)
20672b15cb3dSCy Schubert 
20682b15cb3dSCy Schubert 
20692b15cb3dSCy Schubert /*------------------------------------------------.
20702b15cb3dSCy Schubert | Report that the YYRULE is going to be reduced.  |
20712b15cb3dSCy Schubert `------------------------------------------------*/
20722b15cb3dSCy Schubert 
20732b15cb3dSCy Schubert static void
2074a466cc55SCy Schubert yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp,
2075a466cc55SCy Schubert                  int yyrule)
20762b15cb3dSCy Schubert {
2077a466cc55SCy Schubert   int yylno = yyrline[yyrule];
20782b15cb3dSCy Schubert   int yynrhs = yyr2[yyrule];
20792b15cb3dSCy Schubert   int yyi;
2080a466cc55SCy Schubert   YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
20812b15cb3dSCy Schubert              yyrule - 1, yylno);
20822b15cb3dSCy Schubert   /* The symbols being reduced.  */
20832b15cb3dSCy Schubert   for (yyi = 0; yyi < yynrhs; yyi++)
20842b15cb3dSCy Schubert     {
20852b15cb3dSCy Schubert       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
2086e27abb66SXin LI       yy_symbol_print (stderr,
2087a466cc55SCy Schubert                        YY_ACCESSING_SYMBOL (+yyssp[yyi + 1 - yynrhs]),
2088a466cc55SCy Schubert                        &yyvsp[(yyi + 1) - (yynrhs)]);
20892b15cb3dSCy Schubert       YYFPRINTF (stderr, "\n");
20902b15cb3dSCy Schubert     }
20912b15cb3dSCy Schubert }
20922b15cb3dSCy Schubert 
20932b15cb3dSCy Schubert # define YY_REDUCE_PRINT(Rule)          \
20942b15cb3dSCy Schubert do {                                    \
20952b15cb3dSCy Schubert   if (yydebug)                          \
2096e27abb66SXin LI     yy_reduce_print (yyssp, yyvsp, Rule); \
2097e27abb66SXin LI } while (0)
20982b15cb3dSCy Schubert 
20992b15cb3dSCy Schubert /* Nonzero means print parse trace.  It is left uninitialized so that
21002b15cb3dSCy Schubert    multiple parsers can coexist.  */
21012b15cb3dSCy Schubert int yydebug;
21022b15cb3dSCy Schubert #else /* !YYDEBUG */
2103a466cc55SCy Schubert # define YYDPRINTF(Args) ((void) 0)
2104a466cc55SCy Schubert # define YY_SYMBOL_PRINT(Title, Kind, Value, Location)
21052b15cb3dSCy Schubert # define YY_STACK_PRINT(Bottom, Top)
21062b15cb3dSCy Schubert # define YY_REDUCE_PRINT(Rule)
21072b15cb3dSCy Schubert #endif /* !YYDEBUG */
21082b15cb3dSCy Schubert 
21092b15cb3dSCy Schubert 
21102b15cb3dSCy Schubert /* YYINITDEPTH -- initial size of the parser's stacks.  */
21112b15cb3dSCy Schubert #ifndef YYINITDEPTH
21122b15cb3dSCy Schubert # define YYINITDEPTH 200
21132b15cb3dSCy Schubert #endif
21142b15cb3dSCy Schubert 
21152b15cb3dSCy Schubert /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
21162b15cb3dSCy Schubert    if the built-in stack extension method is used).
21172b15cb3dSCy Schubert 
21182b15cb3dSCy Schubert    Do not make this value too large; the results are undefined if
21192b15cb3dSCy Schubert    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
21202b15cb3dSCy Schubert    evaluated with infinite-precision integer arithmetic.  */
21212b15cb3dSCy Schubert 
21222b15cb3dSCy Schubert #ifndef YYMAXDEPTH
21232b15cb3dSCy Schubert # define YYMAXDEPTH 10000
21242b15cb3dSCy Schubert #endif
21252b15cb3dSCy Schubert 
21262b15cb3dSCy Schubert 
21272b15cb3dSCy Schubert 
21282b15cb3dSCy Schubert 
21292b15cb3dSCy Schubert 
21302b15cb3dSCy Schubert 
21312b15cb3dSCy Schubert /*-----------------------------------------------.
21322b15cb3dSCy Schubert | Release the memory associated to this symbol.  |
21332b15cb3dSCy Schubert `-----------------------------------------------*/
21342b15cb3dSCy Schubert 
21352b15cb3dSCy Schubert static void
2136a466cc55SCy Schubert yydestruct (const char *yymsg,
2137a466cc55SCy Schubert             yysymbol_kind_t yykind, YYSTYPE *yyvaluep)
21382b15cb3dSCy Schubert {
2139a466cc55SCy Schubert   YY_USE (yyvaluep);
21402b15cb3dSCy Schubert   if (!yymsg)
21412b15cb3dSCy Schubert     yymsg = "Deleting";
2142a466cc55SCy Schubert   YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp);
21432b15cb3dSCy Schubert 
2144e27abb66SXin LI   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
2145a466cc55SCy Schubert   YY_USE (yykind);
2146e27abb66SXin LI   YY_IGNORE_MAYBE_UNINITIALIZED_END
21472b15cb3dSCy Schubert }
21482b15cb3dSCy Schubert 
21492b15cb3dSCy Schubert 
2150a466cc55SCy Schubert /* Lookahead token kind.  */
21512b15cb3dSCy Schubert int yychar;
21522b15cb3dSCy Schubert 
21532b15cb3dSCy Schubert /* The semantic value of the lookahead symbol.  */
2154e27abb66SXin LI YYSTYPE yylval;
21552b15cb3dSCy Schubert /* Number of syntax errors so far.  */
21562b15cb3dSCy Schubert int yynerrs;
21572b15cb3dSCy Schubert 
21582b15cb3dSCy Schubert 
2159a466cc55SCy Schubert 
2160a466cc55SCy Schubert 
21612b15cb3dSCy Schubert /*----------.
21622b15cb3dSCy Schubert | yyparse.  |
21632b15cb3dSCy Schubert `----------*/
21642b15cb3dSCy Schubert 
2165276da39aSCy Schubert int
2166276da39aSCy Schubert yyparse (void)
21672b15cb3dSCy Schubert {
2168a466cc55SCy Schubert     yy_state_fast_t yystate = 0;
21692b15cb3dSCy Schubert     /* Number of tokens to shift before error messages enabled.  */
2170a466cc55SCy Schubert     int yyerrstatus = 0;
21712b15cb3dSCy Schubert 
2172a466cc55SCy Schubert     /* Refer to the stacks through separate pointers, to allow yyoverflow
21732b15cb3dSCy Schubert        to reallocate them elsewhere.  */
21742b15cb3dSCy Schubert 
2175a466cc55SCy Schubert     /* Their size.  */
2176a466cc55SCy Schubert     YYPTRDIFF_T yystacksize = YYINITDEPTH;
21772b15cb3dSCy Schubert 
2178a466cc55SCy Schubert     /* The state stack: array, bottom, top.  */
2179a466cc55SCy Schubert     yy_state_t yyssa[YYINITDEPTH];
2180a466cc55SCy Schubert     yy_state_t *yyss = yyssa;
2181a466cc55SCy Schubert     yy_state_t *yyssp = yyss;
2182a466cc55SCy Schubert 
2183a466cc55SCy Schubert     /* The semantic value stack: array, bottom, top.  */
21842b15cb3dSCy Schubert     YYSTYPE yyvsa[YYINITDEPTH];
2185a466cc55SCy Schubert     YYSTYPE *yyvs = yyvsa;
2186a466cc55SCy Schubert     YYSTYPE *yyvsp = yyvs;
21872b15cb3dSCy Schubert 
21882b15cb3dSCy Schubert   int yyn;
2189a466cc55SCy Schubert   /* The return value of yyparse.  */
21902b15cb3dSCy Schubert   int yyresult;
2191a466cc55SCy Schubert   /* Lookahead symbol kind.  */
2192a466cc55SCy Schubert   yysymbol_kind_t yytoken = YYSYMBOL_YYEMPTY;
21932b15cb3dSCy Schubert   /* The variables used to return semantic value and location from the
21942b15cb3dSCy Schubert      action routines.  */
21952b15cb3dSCy Schubert   YYSTYPE yyval;
21962b15cb3dSCy Schubert 
2197a466cc55SCy Schubert 
21982b15cb3dSCy Schubert 
21992b15cb3dSCy Schubert #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
22002b15cb3dSCy Schubert 
22012b15cb3dSCy Schubert   /* The number of symbols on the RHS of the reduced rule.
22022b15cb3dSCy Schubert      Keep to zero when no symbol should be popped.  */
22032b15cb3dSCy Schubert   int yylen = 0;
22042b15cb3dSCy Schubert 
22052b15cb3dSCy Schubert   YYDPRINTF ((stderr, "Starting parse\n"));
22062b15cb3dSCy Schubert 
22072b15cb3dSCy Schubert   yychar = YYEMPTY; /* Cause a token to be read.  */
2208*f5f40dd6SCy Schubert 
22092b15cb3dSCy Schubert   goto yysetstate;
22102b15cb3dSCy Schubert 
2211a466cc55SCy Schubert 
22122b15cb3dSCy Schubert /*------------------------------------------------------------.
2213a466cc55SCy Schubert | yynewstate -- push a new state, which is found in yystate.  |
22142b15cb3dSCy Schubert `------------------------------------------------------------*/
22152b15cb3dSCy Schubert yynewstate:
22162b15cb3dSCy Schubert   /* In all cases, when you get here, the value and location stacks
22172b15cb3dSCy Schubert      have just been pushed.  So pushing a state here evens the stacks.  */
22182b15cb3dSCy Schubert   yyssp++;
22192b15cb3dSCy Schubert 
2220a466cc55SCy Schubert 
2221a466cc55SCy Schubert /*--------------------------------------------------------------------.
2222a466cc55SCy Schubert | yysetstate -- set current state (the top of the stack) to yystate.  |
2223a466cc55SCy Schubert `--------------------------------------------------------------------*/
22242b15cb3dSCy Schubert yysetstate:
2225a466cc55SCy Schubert   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
2226a466cc55SCy Schubert   YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
2227a466cc55SCy Schubert   YY_IGNORE_USELESS_CAST_BEGIN
2228a466cc55SCy Schubert   *yyssp = YY_CAST (yy_state_t, yystate);
2229a466cc55SCy Schubert   YY_IGNORE_USELESS_CAST_END
2230a466cc55SCy Schubert   YY_STACK_PRINT (yyss, yyssp);
22312b15cb3dSCy Schubert 
22322b15cb3dSCy Schubert   if (yyss + yystacksize - 1 <= yyssp)
2233a466cc55SCy Schubert #if !defined yyoverflow && !defined YYSTACK_RELOCATE
2234*f5f40dd6SCy Schubert     YYNOMEM;
2235a466cc55SCy Schubert #else
22362b15cb3dSCy Schubert     {
22372b15cb3dSCy Schubert       /* Get the current used size of the three stacks, in elements.  */
2238a466cc55SCy Schubert       YYPTRDIFF_T yysize = yyssp - yyss + 1;
22392b15cb3dSCy Schubert 
2240a466cc55SCy Schubert # if defined yyoverflow
22412b15cb3dSCy Schubert       {
22422b15cb3dSCy Schubert         /* Give user a chance to reallocate the stack.  Use copies of
22432b15cb3dSCy Schubert            these so that the &'s don't force the real ones into
22442b15cb3dSCy Schubert            memory.  */
2245a466cc55SCy Schubert         yy_state_t *yyss1 = yyss;
22462b15cb3dSCy Schubert         YYSTYPE *yyvs1 = yyvs;
22472b15cb3dSCy Schubert 
22482b15cb3dSCy Schubert         /* Each stack pointer address is followed by the size of the
22492b15cb3dSCy Schubert            data in use in that stack, in bytes.  This used to be a
22502b15cb3dSCy Schubert            conditional around just the two extra args, but that might
22512b15cb3dSCy Schubert            be undefined if yyoverflow is a macro.  */
22522b15cb3dSCy Schubert         yyoverflow (YY_("memory exhausted"),
2253a466cc55SCy Schubert                     &yyss1, yysize * YYSIZEOF (*yyssp),
2254a466cc55SCy Schubert                     &yyvs1, yysize * YYSIZEOF (*yyvsp),
22552b15cb3dSCy Schubert                     &yystacksize);
22562b15cb3dSCy Schubert         yyss = yyss1;
22572b15cb3dSCy Schubert         yyvs = yyvs1;
22582b15cb3dSCy Schubert       }
2259a466cc55SCy Schubert # else /* defined YYSTACK_RELOCATE */
22602b15cb3dSCy Schubert       /* Extend the stack our own way.  */
22612b15cb3dSCy Schubert       if (YYMAXDEPTH <= yystacksize)
2262*f5f40dd6SCy Schubert         YYNOMEM;
22632b15cb3dSCy Schubert       yystacksize *= 2;
22642b15cb3dSCy Schubert       if (YYMAXDEPTH < yystacksize)
22652b15cb3dSCy Schubert         yystacksize = YYMAXDEPTH;
22662b15cb3dSCy Schubert 
22672b15cb3dSCy Schubert       {
2268a466cc55SCy Schubert         yy_state_t *yyss1 = yyss;
22692b15cb3dSCy Schubert         union yyalloc *yyptr =
2270a466cc55SCy Schubert           YY_CAST (union yyalloc *,
2271a466cc55SCy Schubert                    YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
22722b15cb3dSCy Schubert         if (! yyptr)
2273*f5f40dd6SCy Schubert           YYNOMEM;
22742b15cb3dSCy Schubert         YYSTACK_RELOCATE (yyss_alloc, yyss);
22752b15cb3dSCy Schubert         YYSTACK_RELOCATE (yyvs_alloc, yyvs);
22762b15cb3dSCy Schubert #  undef YYSTACK_RELOCATE
22772b15cb3dSCy Schubert         if (yyss1 != yyssa)
22782b15cb3dSCy Schubert           YYSTACK_FREE (yyss1);
22792b15cb3dSCy Schubert       }
22802b15cb3dSCy Schubert # endif
22812b15cb3dSCy Schubert 
22822b15cb3dSCy Schubert       yyssp = yyss + yysize - 1;
22832b15cb3dSCy Schubert       yyvsp = yyvs + yysize - 1;
22842b15cb3dSCy Schubert 
2285a466cc55SCy Schubert       YY_IGNORE_USELESS_CAST_BEGIN
2286a466cc55SCy Schubert       YYDPRINTF ((stderr, "Stack size increased to %ld\n",
2287a466cc55SCy Schubert                   YY_CAST (long, yystacksize)));
2288a466cc55SCy Schubert       YY_IGNORE_USELESS_CAST_END
22892b15cb3dSCy Schubert 
22902b15cb3dSCy Schubert       if (yyss + yystacksize - 1 <= yyssp)
22912b15cb3dSCy Schubert         YYABORT;
22922b15cb3dSCy Schubert     }
2293a466cc55SCy Schubert #endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
22942b15cb3dSCy Schubert 
2295*f5f40dd6SCy Schubert 
22962b15cb3dSCy Schubert   if (yystate == YYFINAL)
22972b15cb3dSCy Schubert     YYACCEPT;
22982b15cb3dSCy Schubert 
22992b15cb3dSCy Schubert   goto yybackup;
23002b15cb3dSCy Schubert 
2301a466cc55SCy Schubert 
23022b15cb3dSCy Schubert /*-----------.
23032b15cb3dSCy Schubert | yybackup.  |
23042b15cb3dSCy Schubert `-----------*/
23052b15cb3dSCy Schubert yybackup:
23062b15cb3dSCy Schubert   /* Do appropriate processing given the current state.  Read a
23072b15cb3dSCy Schubert      lookahead token if we need one and don't already have one.  */
23082b15cb3dSCy Schubert 
23092b15cb3dSCy Schubert   /* First try to decide what to do without reference to lookahead token.  */
23102b15cb3dSCy Schubert   yyn = yypact[yystate];
23112b15cb3dSCy Schubert   if (yypact_value_is_default (yyn))
23122b15cb3dSCy Schubert     goto yydefault;
23132b15cb3dSCy Schubert 
23142b15cb3dSCy Schubert   /* Not known => get a lookahead token if don't already have one.  */
23152b15cb3dSCy Schubert 
2316a466cc55SCy Schubert   /* YYCHAR is either empty, or end-of-input, or a valid lookahead.  */
23172b15cb3dSCy Schubert   if (yychar == YYEMPTY)
23182b15cb3dSCy Schubert     {
2319a466cc55SCy Schubert       YYDPRINTF ((stderr, "Reading a token\n"));
2320e27abb66SXin LI       yychar = yylex ();
23212b15cb3dSCy Schubert     }
23222b15cb3dSCy Schubert 
23232b15cb3dSCy Schubert   if (yychar <= YYEOF)
23242b15cb3dSCy Schubert     {
2325a466cc55SCy Schubert       yychar = YYEOF;
2326a466cc55SCy Schubert       yytoken = YYSYMBOL_YYEOF;
23272b15cb3dSCy Schubert       YYDPRINTF ((stderr, "Now at end of input.\n"));
23282b15cb3dSCy Schubert     }
2329a466cc55SCy Schubert   else if (yychar == YYerror)
2330a466cc55SCy Schubert     {
2331a466cc55SCy Schubert       /* The scanner already issued an error message, process directly
2332a466cc55SCy Schubert          to error recovery.  But do not keep the error token as
2333a466cc55SCy Schubert          lookahead, it is too special and may lead us to an endless
2334a466cc55SCy Schubert          loop in error recovery. */
2335a466cc55SCy Schubert       yychar = YYUNDEF;
2336a466cc55SCy Schubert       yytoken = YYSYMBOL_YYerror;
2337a466cc55SCy Schubert       goto yyerrlab1;
2338a466cc55SCy Schubert     }
23392b15cb3dSCy Schubert   else
23402b15cb3dSCy Schubert     {
23412b15cb3dSCy Schubert       yytoken = YYTRANSLATE (yychar);
23422b15cb3dSCy Schubert       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
23432b15cb3dSCy Schubert     }
23442b15cb3dSCy Schubert 
23452b15cb3dSCy Schubert   /* If the proper action on seeing token YYTOKEN is to reduce or to
23462b15cb3dSCy Schubert      detect an error, take that action.  */
23472b15cb3dSCy Schubert   yyn += yytoken;
23482b15cb3dSCy Schubert   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
23492b15cb3dSCy Schubert     goto yydefault;
23502b15cb3dSCy Schubert   yyn = yytable[yyn];
23512b15cb3dSCy Schubert   if (yyn <= 0)
23522b15cb3dSCy Schubert     {
23532b15cb3dSCy Schubert       if (yytable_value_is_error (yyn))
23542b15cb3dSCy Schubert         goto yyerrlab;
23552b15cb3dSCy Schubert       yyn = -yyn;
23562b15cb3dSCy Schubert       goto yyreduce;
23572b15cb3dSCy Schubert     }
23582b15cb3dSCy Schubert 
23592b15cb3dSCy Schubert   /* Count tokens shifted since error; after three, turn off error
23602b15cb3dSCy Schubert      status.  */
23612b15cb3dSCy Schubert   if (yyerrstatus)
23622b15cb3dSCy Schubert     yyerrstatus--;
23632b15cb3dSCy Schubert 
23642b15cb3dSCy Schubert   /* Shift the lookahead token.  */
23652b15cb3dSCy Schubert   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
23662b15cb3dSCy Schubert   yystate = yyn;
23672b15cb3dSCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
23682b15cb3dSCy Schubert   *++yyvsp = yylval;
23692b15cb3dSCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_END
23702b15cb3dSCy Schubert 
2371a466cc55SCy Schubert   /* Discard the shifted token.  */
2372a466cc55SCy Schubert   yychar = YYEMPTY;
23732b15cb3dSCy Schubert   goto yynewstate;
23742b15cb3dSCy Schubert 
23752b15cb3dSCy Schubert 
23762b15cb3dSCy Schubert /*-----------------------------------------------------------.
23772b15cb3dSCy Schubert | yydefault -- do the default action for the current state.  |
23782b15cb3dSCy Schubert `-----------------------------------------------------------*/
23792b15cb3dSCy Schubert yydefault:
23802b15cb3dSCy Schubert   yyn = yydefact[yystate];
23812b15cb3dSCy Schubert   if (yyn == 0)
23822b15cb3dSCy Schubert     goto yyerrlab;
23832b15cb3dSCy Schubert   goto yyreduce;
23842b15cb3dSCy Schubert 
23852b15cb3dSCy Schubert 
23862b15cb3dSCy Schubert /*-----------------------------.
2387a466cc55SCy Schubert | yyreduce -- do a reduction.  |
23882b15cb3dSCy Schubert `-----------------------------*/
23892b15cb3dSCy Schubert yyreduce:
23902b15cb3dSCy Schubert   /* yyn is the number of a rule to reduce with.  */
23912b15cb3dSCy Schubert   yylen = yyr2[yyn];
23922b15cb3dSCy Schubert 
23932b15cb3dSCy Schubert   /* If YYLEN is nonzero, implement the default value of the action:
2394e27abb66SXin LI      '$$ = $1'.
23952b15cb3dSCy Schubert 
23962b15cb3dSCy Schubert      Otherwise, the following line sets YYVAL to garbage.
23972b15cb3dSCy Schubert      This behavior is undocumented and Bison
23982b15cb3dSCy Schubert      users should not rely upon it.  Assigning to YYVAL
23992b15cb3dSCy Schubert      unconditionally makes the parser a bit smaller, and it avoids a
24002b15cb3dSCy Schubert      GCC warning that YYVAL may be used uninitialized.  */
24012b15cb3dSCy Schubert   yyval = yyvsp[1-yylen];
24022b15cb3dSCy Schubert 
24032b15cb3dSCy Schubert 
24042b15cb3dSCy Schubert   YY_REDUCE_PRINT (yyn);
24052b15cb3dSCy Schubert   switch (yyn)
24062b15cb3dSCy Schubert     {
2407a466cc55SCy Schubert   case 5: /* command_list: error T_EOC  */
2408*f5f40dd6SCy Schubert #line 406 "../../ntpd/ntp_parser.y"
24092b15cb3dSCy Schubert                 {
24102b15cb3dSCy Schubert 			/* I will need to incorporate much more fine grained
24112b15cb3dSCy Schubert 			 * error messages. The following should suffice for
24122b15cb3dSCy Schubert 			 * the time being.
24132b15cb3dSCy Schubert 			 */
2414276da39aSCy Schubert 			struct FILE_INFO * ip_ctx = lex_current();
24152b15cb3dSCy Schubert 			msyslog(LOG_ERR,
24162b15cb3dSCy Schubert 				"syntax error in %s line %d, column %d",
2417276da39aSCy Schubert 				ip_ctx->fname,
2418276da39aSCy Schubert 				ip_ctx->errpos.nline,
2419276da39aSCy Schubert 				ip_ctx->errpos.ncol);
24202b15cb3dSCy Schubert 		}
2421*f5f40dd6SCy Schubert #line 2422 "ntp_parser.c"
24222b15cb3dSCy Schubert     break;
24232b15cb3dSCy Schubert 
2424a466cc55SCy Schubert   case 21: /* server_command: client_type address option_list  */
2425*f5f40dd6SCy Schubert #line 443 "../../ntpd/ntp_parser.y"
24262b15cb3dSCy Schubert                 {
24272b15cb3dSCy Schubert 			peer_node *my_node;
24282b15cb3dSCy Schubert 
2429e27abb66SXin LI 			my_node = create_peer_node((yyvsp[-2].Integer), (yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
24302b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.peers, my_node);
24312b15cb3dSCy Schubert 		}
2432*f5f40dd6SCy Schubert #line 2433 "ntp_parser.c"
24332b15cb3dSCy Schubert     break;
24342b15cb3dSCy Schubert 
2435a466cc55SCy Schubert   case 28: /* address: address_fam T_String  */
2436*f5f40dd6SCy Schubert #line 462 "../../ntpd/ntp_parser.y"
2437e27abb66SXin LI                         { (yyval.Address_node) = create_address_node((yyvsp[0].String), (yyvsp[-1].Integer)); }
2438*f5f40dd6SCy Schubert #line 2439 "ntp_parser.c"
24392b15cb3dSCy Schubert     break;
24402b15cb3dSCy Schubert 
2441a466cc55SCy Schubert   case 29: /* ip_address: T_String  */
2442*f5f40dd6SCy Schubert #line 467 "../../ntpd/ntp_parser.y"
2443e27abb66SXin LI                         { (yyval.Address_node) = create_address_node((yyvsp[0].String), AF_UNSPEC); }
2444*f5f40dd6SCy Schubert #line 2445 "ntp_parser.c"
24452b15cb3dSCy Schubert     break;
24462b15cb3dSCy Schubert 
2447a466cc55SCy Schubert   case 30: /* address_fam: T_Ipv4_flag  */
2448*f5f40dd6SCy Schubert #line 472 "../../ntpd/ntp_parser.y"
2449a25439b6SCy Schubert                         { (yyval.Integer) = AF_INET; }
2450*f5f40dd6SCy Schubert #line 2451 "ntp_parser.c"
24512b15cb3dSCy Schubert     break;
24522b15cb3dSCy Schubert 
2453a466cc55SCy Schubert   case 31: /* address_fam: T_Ipv6_flag  */
2454*f5f40dd6SCy Schubert #line 474 "../../ntpd/ntp_parser.y"
2455a25439b6SCy Schubert                         { (yyval.Integer) = AF_INET6; }
2456*f5f40dd6SCy Schubert #line 2457 "ntp_parser.c"
24572b15cb3dSCy Schubert     break;
24582b15cb3dSCy Schubert 
2459a466cc55SCy Schubert   case 32: /* option_list: %empty  */
2460*f5f40dd6SCy Schubert #line 479 "../../ntpd/ntp_parser.y"
2461a25439b6SCy Schubert                         { (yyval.Attr_val_fifo) = NULL; }
2462*f5f40dd6SCy Schubert #line 2463 "ntp_parser.c"
2463a25439b6SCy Schubert     break;
2464a25439b6SCy Schubert 
2465a466cc55SCy Schubert   case 33: /* option_list: option_list option  */
2466*f5f40dd6SCy Schubert #line 481 "../../ntpd/ntp_parser.y"
24672b15cb3dSCy Schubert                 {
2468e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2469e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
24702b15cb3dSCy Schubert 		}
2471*f5f40dd6SCy Schubert #line 2472 "ntp_parser.c"
24722b15cb3dSCy Schubert     break;
24732b15cb3dSCy Schubert 
2474a466cc55SCy Schubert   case 37: /* option_flag: option_flag_keyword  */
2475*f5f40dd6SCy Schubert #line 495 "../../ntpd/ntp_parser.y"
2476e27abb66SXin LI                         { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
2477*f5f40dd6SCy Schubert #line 2478 "ntp_parser.c"
24782b15cb3dSCy Schubert     break;
24792b15cb3dSCy Schubert 
2480a466cc55SCy Schubert   case 47: /* option_int: option_int_keyword T_Integer  */
2481*f5f40dd6SCy Schubert #line 512 "../../ntpd/ntp_parser.y"
24822d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2483*f5f40dd6SCy Schubert #line 2484 "ntp_parser.c"
24842d4e511cSCy Schubert     break;
24852d4e511cSCy Schubert 
2486a466cc55SCy Schubert   case 48: /* option_int: option_int_keyword T_U_int  */
2487*f5f40dd6SCy Schubert #line 514 "../../ntpd/ntp_parser.y"
2488e27abb66SXin LI                         { (yyval.Attr_val) = create_attr_uval((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2489*f5f40dd6SCy Schubert #line 2490 "ntp_parser.c"
24902b15cb3dSCy Schubert     break;
24912b15cb3dSCy Schubert 
2492a466cc55SCy Schubert   case 55: /* option_str: option_str_keyword T_String  */
2493*f5f40dd6SCy Schubert #line 528 "../../ntpd/ntp_parser.y"
2494e27abb66SXin LI                         { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2495*f5f40dd6SCy Schubert #line 2496 "ntp_parser.c"
2496a25439b6SCy Schubert     break;
2497a25439b6SCy Schubert 
2498a466cc55SCy Schubert   case 57: /* unpeer_command: unpeer_keyword address  */
2499*f5f40dd6SCy Schubert #line 542 "../../ntpd/ntp_parser.y"
25002b15cb3dSCy Schubert                 {
25012b15cb3dSCy Schubert 			unpeer_node *my_node;
25022b15cb3dSCy Schubert 
2503e27abb66SXin LI 			my_node = create_unpeer_node((yyvsp[0].Address_node));
25042b15cb3dSCy Schubert 			if (my_node)
25052b15cb3dSCy Schubert 				APPEND_G_FIFO(cfgt.unpeers, my_node);
25062b15cb3dSCy Schubert 		}
2507*f5f40dd6SCy Schubert #line 2508 "ntp_parser.c"
25082b15cb3dSCy Schubert     break;
25092b15cb3dSCy Schubert 
2510a466cc55SCy Schubert   case 60: /* other_mode_command: T_Broadcastclient  */
2511*f5f40dd6SCy Schubert #line 563 "../../ntpd/ntp_parser.y"
25122d4e511cSCy Schubert                         { cfgt.broadcastclient = 1; }
2513*f5f40dd6SCy Schubert #line 2514 "ntp_parser.c"
25142b15cb3dSCy Schubert     break;
25152b15cb3dSCy Schubert 
2516a466cc55SCy Schubert   case 61: /* other_mode_command: T_Manycastserver address_list  */
2517*f5f40dd6SCy Schubert #line 565 "../../ntpd/ntp_parser.y"
25182d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.manycastserver, (yyvsp[0].Address_fifo)); }
2519*f5f40dd6SCy Schubert #line 2520 "ntp_parser.c"
25202b15cb3dSCy Schubert     break;
25212b15cb3dSCy Schubert 
2522a466cc55SCy Schubert   case 62: /* other_mode_command: T_Multicastclient address_list  */
2523*f5f40dd6SCy Schubert #line 567 "../../ntpd/ntp_parser.y"
25242d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.multicastclient, (yyvsp[0].Address_fifo)); }
2525*f5f40dd6SCy Schubert #line 2526 "ntp_parser.c"
2526a25439b6SCy Schubert     break;
2527a25439b6SCy Schubert 
2528a466cc55SCy Schubert   case 63: /* other_mode_command: T_Mdnstries T_Integer  */
2529*f5f40dd6SCy Schubert #line 569 "../../ntpd/ntp_parser.y"
25302d4e511cSCy Schubert                         { cfgt.mdnstries = (yyvsp[0].Integer); }
2531*f5f40dd6SCy Schubert #line 2532 "ntp_parser.c"
25322d4e511cSCy Schubert     break;
25332d4e511cSCy Schubert 
2534a466cc55SCy Schubert   case 64: /* authentication_command: T_Automax T_Integer  */
2535*f5f40dd6SCy Schubert #line 580 "../../ntpd/ntp_parser.y"
25362b15cb3dSCy Schubert                 {
25372b15cb3dSCy Schubert 			attr_val *atrv;
25382b15cb3dSCy Schubert 
2539e27abb66SXin LI 			atrv = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
25402b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.vars, atrv);
25412b15cb3dSCy Schubert 		}
2542*f5f40dd6SCy Schubert #line 2543 "ntp_parser.c"
2543a25439b6SCy Schubert     break;
2544a25439b6SCy Schubert 
2545a466cc55SCy Schubert   case 65: /* authentication_command: T_ControlKey T_Integer  */
2546*f5f40dd6SCy Schubert #line 587 "../../ntpd/ntp_parser.y"
25472d4e511cSCy Schubert                         { cfgt.auth.control_key = (yyvsp[0].Integer); }
2548*f5f40dd6SCy Schubert #line 2549 "ntp_parser.c"
25492d4e511cSCy Schubert     break;
25502d4e511cSCy Schubert 
2551a466cc55SCy Schubert   case 66: /* authentication_command: T_Crypto crypto_command_list  */
2552*f5f40dd6SCy Schubert #line 589 "../../ntpd/ntp_parser.y"
25532b15cb3dSCy Schubert                 {
25542b15cb3dSCy Schubert 			cfgt.auth.cryptosw++;
2555e27abb66SXin LI 			CONCAT_G_FIFOS(cfgt.auth.crypto_cmd_list, (yyvsp[0].Attr_val_fifo));
25562b15cb3dSCy Schubert 		}
2557*f5f40dd6SCy Schubert #line 2558 "ntp_parser.c"
25582b15cb3dSCy Schubert     break;
25592b15cb3dSCy Schubert 
2560a466cc55SCy Schubert   case 67: /* authentication_command: T_Keys T_String  */
2561*f5f40dd6SCy Schubert #line 594 "../../ntpd/ntp_parser.y"
25622d4e511cSCy Schubert                         { cfgt.auth.keys = (yyvsp[0].String); }
2563*f5f40dd6SCy Schubert #line 2564 "ntp_parser.c"
25642b15cb3dSCy Schubert     break;
25652b15cb3dSCy Schubert 
2566a466cc55SCy Schubert   case 68: /* authentication_command: T_Keysdir T_String  */
2567*f5f40dd6SCy Schubert #line 596 "../../ntpd/ntp_parser.y"
25682d4e511cSCy Schubert                         { cfgt.auth.keysdir = (yyvsp[0].String); }
2569*f5f40dd6SCy Schubert #line 2570 "ntp_parser.c"
25702b15cb3dSCy Schubert     break;
25712b15cb3dSCy Schubert 
2572a466cc55SCy Schubert   case 69: /* authentication_command: T_Requestkey T_Integer  */
2573*f5f40dd6SCy Schubert #line 598 "../../ntpd/ntp_parser.y"
25742d4e511cSCy Schubert                         { cfgt.auth.request_key = (yyvsp[0].Integer); }
2575*f5f40dd6SCy Schubert #line 2576 "ntp_parser.c"
2576a25439b6SCy Schubert     break;
2577a25439b6SCy Schubert 
2578a466cc55SCy Schubert   case 70: /* authentication_command: T_Revoke T_Integer  */
2579*f5f40dd6SCy Schubert #line 600 "../../ntpd/ntp_parser.y"
25802d4e511cSCy Schubert                         { cfgt.auth.revoke = (yyvsp[0].Integer); }
2581*f5f40dd6SCy Schubert #line 2582 "ntp_parser.c"
25822d4e511cSCy Schubert     break;
25832d4e511cSCy Schubert 
2584a466cc55SCy Schubert   case 71: /* authentication_command: T_Trustedkey integer_list_range  */
2585*f5f40dd6SCy Schubert #line 602 "../../ntpd/ntp_parser.y"
25862b15cb3dSCy Schubert                 {
258709100258SXin LI 			/* [Bug 948] leaves it open if appending or
258809100258SXin LI 			 * replacing the trusted key list is the right
258909100258SXin LI 			 * way. In any case, either alternative should
259009100258SXin LI 			 * be coded correctly!
259109100258SXin LI 			 */
259209100258SXin LI 			DESTROY_G_FIFO(cfgt.auth.trusted_key_list, destroy_attr_val); /* remove for append */
259309100258SXin LI 			CONCAT_G_FIFOS(cfgt.auth.trusted_key_list, (yyvsp[0].Attr_val_fifo));
25942b15cb3dSCy Schubert 		}
2595*f5f40dd6SCy Schubert #line 2596 "ntp_parser.c"
25962b15cb3dSCy Schubert     break;
25972b15cb3dSCy Schubert 
2598a466cc55SCy Schubert   case 72: /* authentication_command: T_NtpSignDsocket T_String  */
2599*f5f40dd6SCy Schubert #line 612 "../../ntpd/ntp_parser.y"
26002d4e511cSCy Schubert                         { cfgt.auth.ntp_signd_socket = (yyvsp[0].String); }
2601*f5f40dd6SCy Schubert #line 2602 "ntp_parser.c"
2602a25439b6SCy Schubert     break;
2603a25439b6SCy Schubert 
2604a466cc55SCy Schubert   case 73: /* crypto_command_list: %empty  */
2605*f5f40dd6SCy Schubert #line 617 "../../ntpd/ntp_parser.y"
26062d4e511cSCy Schubert                         { (yyval.Attr_val_fifo) = NULL; }
2607*f5f40dd6SCy Schubert #line 2608 "ntp_parser.c"
26082d4e511cSCy Schubert     break;
26092d4e511cSCy Schubert 
2610a466cc55SCy Schubert   case 74: /* crypto_command_list: crypto_command_list crypto_command  */
2611*f5f40dd6SCy Schubert #line 619 "../../ntpd/ntp_parser.y"
26122b15cb3dSCy Schubert                 {
2613e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2614e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
26152b15cb3dSCy Schubert 		}
2616*f5f40dd6SCy Schubert #line 2617 "ntp_parser.c"
2617a25439b6SCy Schubert     break;
2618a25439b6SCy Schubert 
2619a466cc55SCy Schubert   case 75: /* crypto_command: crypto_str_keyword T_String  */
2620*f5f40dd6SCy Schubert #line 627 "../../ntpd/ntp_parser.y"
26212d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2622*f5f40dd6SCy Schubert #line 2623 "ntp_parser.c"
26232d4e511cSCy Schubert     break;
26242d4e511cSCy Schubert 
2625a466cc55SCy Schubert   case 76: /* crypto_command: T_Revoke T_Integer  */
2626*f5f40dd6SCy Schubert #line 629 "../../ntpd/ntp_parser.y"
26272b15cb3dSCy Schubert                 {
26282b15cb3dSCy Schubert 			(yyval.Attr_val) = NULL;
2629e27abb66SXin LI 			cfgt.auth.revoke = (yyvsp[0].Integer);
26302b15cb3dSCy Schubert 			msyslog(LOG_WARNING,
26312b15cb3dSCy Schubert 				"'crypto revoke %d' is deprecated, "
26322b15cb3dSCy Schubert 				"please use 'revoke %d' instead.",
26332b15cb3dSCy Schubert 				cfgt.auth.revoke, cfgt.auth.revoke);
26342b15cb3dSCy Schubert 		}
2635*f5f40dd6SCy Schubert #line 2636 "ntp_parser.c"
2636a25439b6SCy Schubert     break;
2637a25439b6SCy Schubert 
2638a466cc55SCy Schubert   case 82: /* orphan_mode_command: T_Tos tos_option_list  */
2639*f5f40dd6SCy Schubert #line 654 "../../ntpd/ntp_parser.y"
26402d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.orphan_cmds, (yyvsp[0].Attr_val_fifo)); }
2641*f5f40dd6SCy Schubert #line 2642 "ntp_parser.c"
26422d4e511cSCy Schubert     break;
26432d4e511cSCy Schubert 
2644a466cc55SCy Schubert   case 83: /* tos_option_list: tos_option_list tos_option  */
2645*f5f40dd6SCy Schubert #line 659 "../../ntpd/ntp_parser.y"
26462b15cb3dSCy Schubert                 {
2647e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2648e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
26492b15cb3dSCy Schubert 		}
2650*f5f40dd6SCy Schubert #line 2651 "ntp_parser.c"
26512b15cb3dSCy Schubert     break;
26522b15cb3dSCy Schubert 
2653a466cc55SCy Schubert   case 84: /* tos_option_list: tos_option  */
2654*f5f40dd6SCy Schubert #line 664 "../../ntpd/ntp_parser.y"
26552b15cb3dSCy Schubert                 {
26562b15cb3dSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
2657e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
26582b15cb3dSCy Schubert 		}
2659*f5f40dd6SCy Schubert #line 2660 "ntp_parser.c"
2660f391d6bcSXin LI     break;
2661f391d6bcSXin LI 
2662a466cc55SCy Schubert   case 85: /* tos_option: tos_option_int_keyword T_Integer  */
2663*f5f40dd6SCy Schubert #line 672 "../../ntpd/ntp_parser.y"
26642d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); }
2665*f5f40dd6SCy Schubert #line 2666 "ntp_parser.c"
266609100258SXin LI     break;
266709100258SXin LI 
2668a466cc55SCy Schubert   case 86: /* tos_option: tos_option_dbl_keyword number  */
2669*f5f40dd6SCy Schubert #line 674 "../../ntpd/ntp_parser.y"
26702d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
2671*f5f40dd6SCy Schubert #line 2672 "ntp_parser.c"
267209100258SXin LI     break;
267309100258SXin LI 
2674a466cc55SCy Schubert   case 87: /* tos_option: T_Cohort boolean  */
2675*f5f40dd6SCy Schubert #line 676 "../../ntpd/ntp_parser.y"
26762d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); }
2677*f5f40dd6SCy Schubert #line 2678 "ntp_parser.c"
267809100258SXin LI     break;
267909100258SXin LI 
2680a466cc55SCy Schubert   case 88: /* tos_option: basedate  */
2681*f5f40dd6SCy Schubert #line 678 "../../ntpd/ntp_parser.y"
26822d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_ival(T_Basedate, (yyvsp[0].Integer)); }
2683*f5f40dd6SCy Schubert #line 2684 "ntp_parser.c"
268409100258SXin LI     break;
268509100258SXin LI 
2686a466cc55SCy Schubert   case 100: /* monitoring_command: T_Statistics stats_list  */
2687*f5f40dd6SCy Schubert #line 705 "../../ntpd/ntp_parser.y"
26882d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.stats_list, (yyvsp[0].Int_fifo)); }
2689*f5f40dd6SCy Schubert #line 2690 "ntp_parser.c"
26902d4e511cSCy Schubert     break;
26912d4e511cSCy Schubert 
2692a466cc55SCy Schubert   case 101: /* monitoring_command: T_Statsdir T_String  */
2693*f5f40dd6SCy Schubert #line 707 "../../ntpd/ntp_parser.y"
26942b15cb3dSCy Schubert                 {
2695276da39aSCy Schubert 			if (lex_from_file()) {
2696e27abb66SXin LI 				cfgt.stats_dir = (yyvsp[0].String);
26972b15cb3dSCy Schubert 			} else {
2698e27abb66SXin LI 				YYFREE((yyvsp[0].String));
2699276da39aSCy Schubert 				yyerror("statsdir remote configuration ignored");
27002b15cb3dSCy Schubert 			}
27012b15cb3dSCy Schubert 		}
2702*f5f40dd6SCy Schubert #line 2703 "ntp_parser.c"
27032b15cb3dSCy Schubert     break;
27042b15cb3dSCy Schubert 
2705a466cc55SCy Schubert   case 102: /* monitoring_command: T_Filegen stat filegen_option_list  */
2706*f5f40dd6SCy Schubert #line 716 "../../ntpd/ntp_parser.y"
27072b15cb3dSCy Schubert                 {
27082b15cb3dSCy Schubert 			filegen_node *fgn;
27092b15cb3dSCy Schubert 
2710e27abb66SXin LI 			fgn = create_filegen_node((yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo));
27112b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.filegen_opts, fgn);
27122b15cb3dSCy Schubert 		}
2713*f5f40dd6SCy Schubert #line 2714 "ntp_parser.c"
27142b15cb3dSCy Schubert     break;
27152b15cb3dSCy Schubert 
2716a466cc55SCy Schubert   case 103: /* stats_list: stats_list stat  */
2717*f5f40dd6SCy Schubert #line 726 "../../ntpd/ntp_parser.y"
27182b15cb3dSCy Schubert                 {
2719e27abb66SXin LI 			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
2720e27abb66SXin LI 			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
27212b15cb3dSCy Schubert 		}
2722*f5f40dd6SCy Schubert #line 2723 "ntp_parser.c"
27232b15cb3dSCy Schubert     break;
27242b15cb3dSCy Schubert 
2725a466cc55SCy Schubert   case 104: /* stats_list: stat  */
2726*f5f40dd6SCy Schubert #line 731 "../../ntpd/ntp_parser.y"
27272b15cb3dSCy Schubert                 {
27282b15cb3dSCy Schubert 			(yyval.Int_fifo) = NULL;
2729e27abb66SXin LI 			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
27302b15cb3dSCy Schubert 		}
2731*f5f40dd6SCy Schubert #line 2732 "ntp_parser.c"
273209100258SXin LI     break;
273309100258SXin LI 
2734a466cc55SCy Schubert   case 113: /* filegen_option_list: %empty  */
2735*f5f40dd6SCy Schubert #line 750 "../../ntpd/ntp_parser.y"
27362d4e511cSCy Schubert                         { (yyval.Attr_val_fifo) = NULL; }
2737*f5f40dd6SCy Schubert #line 2738 "ntp_parser.c"
27382d4e511cSCy Schubert     break;
27392d4e511cSCy Schubert 
2740a466cc55SCy Schubert   case 114: /* filegen_option_list: filegen_option_list filegen_option  */
2741*f5f40dd6SCy Schubert #line 752 "../../ntpd/ntp_parser.y"
27422b15cb3dSCy Schubert                 {
2743e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2744e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
27452b15cb3dSCy Schubert 		}
2746*f5f40dd6SCy Schubert #line 2747 "ntp_parser.c"
27472b15cb3dSCy Schubert     break;
27482b15cb3dSCy Schubert 
2749a466cc55SCy Schubert   case 115: /* filegen_option: T_File T_String  */
2750*f5f40dd6SCy Schubert #line 760 "../../ntpd/ntp_parser.y"
27512b15cb3dSCy Schubert                 {
2752276da39aSCy Schubert 			if (lex_from_file()) {
2753e27abb66SXin LI 				(yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
27542b15cb3dSCy Schubert 			} else {
27552b15cb3dSCy Schubert 				(yyval.Attr_val) = NULL;
2756e27abb66SXin LI 				YYFREE((yyvsp[0].String));
2757276da39aSCy Schubert 				yyerror("filegen file remote config ignored");
27582b15cb3dSCy Schubert 			}
27592b15cb3dSCy Schubert 		}
2760*f5f40dd6SCy Schubert #line 2761 "ntp_parser.c"
27612b15cb3dSCy Schubert     break;
27622b15cb3dSCy Schubert 
2763a466cc55SCy Schubert   case 116: /* filegen_option: T_Type filegen_type  */
2764*f5f40dd6SCy Schubert #line 770 "../../ntpd/ntp_parser.y"
27652b15cb3dSCy Schubert                 {
2766276da39aSCy Schubert 			if (lex_from_file()) {
2767e27abb66SXin LI 				(yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
27682b15cb3dSCy Schubert 			} else {
27692b15cb3dSCy Schubert 				(yyval.Attr_val) = NULL;
2770276da39aSCy Schubert 				yyerror("filegen type remote config ignored");
27712b15cb3dSCy Schubert 			}
27722b15cb3dSCy Schubert 		}
2773*f5f40dd6SCy Schubert #line 2774 "ntp_parser.c"
27742b15cb3dSCy Schubert     break;
27752b15cb3dSCy Schubert 
2776a466cc55SCy Schubert   case 117: /* filegen_option: link_nolink  */
2777*f5f40dd6SCy Schubert #line 779 "../../ntpd/ntp_parser.y"
27782b15cb3dSCy Schubert                 {
27792b15cb3dSCy Schubert 			const char *err;
27802b15cb3dSCy Schubert 
2781276da39aSCy Schubert 			if (lex_from_file()) {
2782e27abb66SXin LI 				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer));
27832b15cb3dSCy Schubert 			} else {
27842b15cb3dSCy Schubert 				(yyval.Attr_val) = NULL;
2785e27abb66SXin LI 				if (T_Link == (yyvsp[0].Integer))
27862b15cb3dSCy Schubert 					err = "filegen link remote config ignored";
27872b15cb3dSCy Schubert 				else
27882b15cb3dSCy Schubert 					err = "filegen nolink remote config ignored";
2789276da39aSCy Schubert 				yyerror(err);
27902b15cb3dSCy Schubert 			}
27912b15cb3dSCy Schubert 		}
2792*f5f40dd6SCy Schubert #line 2793 "ntp_parser.c"
27932b15cb3dSCy Schubert     break;
27942b15cb3dSCy Schubert 
2795a466cc55SCy Schubert   case 118: /* filegen_option: enable_disable  */
2796*f5f40dd6SCy Schubert #line 794 "../../ntpd/ntp_parser.y"
2797e27abb66SXin LI                         { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
2798*f5f40dd6SCy Schubert #line 2799 "ntp_parser.c"
2799f391d6bcSXin LI     break;
2800f391d6bcSXin LI 
2801a466cc55SCy Schubert   case 130: /* access_control_command: T_Discard discard_option_list  */
2802*f5f40dd6SCy Schubert #line 824 "../../ntpd/ntp_parser.y"
28032b15cb3dSCy Schubert                 {
28042d4e511cSCy Schubert 			CONCAT_G_FIFOS(cfgt.discard_opts, (yyvsp[0].Attr_val_fifo));
28052b15cb3dSCy Schubert 		}
2806*f5f40dd6SCy Schubert #line 2807 "ntp_parser.c"
28072b15cb3dSCy Schubert     break;
28082b15cb3dSCy Schubert 
2809a466cc55SCy Schubert   case 131: /* access_control_command: T_Mru mru_option_list  */
2810*f5f40dd6SCy Schubert #line 828 "../../ntpd/ntp_parser.y"
28112b15cb3dSCy Schubert                 {
28122d4e511cSCy Schubert 			CONCAT_G_FIFOS(cfgt.mru_opts, (yyvsp[0].Attr_val_fifo));
28132b15cb3dSCy Schubert 		}
2814*f5f40dd6SCy Schubert #line 2815 "ntp_parser.c"
28152b15cb3dSCy Schubert     break;
28162b15cb3dSCy Schubert 
2817*f5f40dd6SCy Schubert   case 132: /* access_control_command: T_Restrict address restrict_mask res_ippeerlimit ac_flag_list  */
2818*f5f40dd6SCy Schubert #line 832 "../../ntpd/ntp_parser.y"
2819f391d6bcSXin LI                 {
2820f391d6bcSXin LI 			restrict_node *rn;
2821f391d6bcSXin LI 
2822*f5f40dd6SCy Schubert 			rn = create_restrict_node((yyvsp[-3].Address_node), (yyvsp[-2].Address_node), (yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo), FALSE,
2823*f5f40dd6SCy Schubert 						  lex_current()->curpos.nline,
2824*f5f40dd6SCy Schubert 						  lex_current()->curpos.ncol);
2825f391d6bcSXin LI 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
2826f391d6bcSXin LI 		}
2827*f5f40dd6SCy Schubert #line 2828 "ntp_parser.c"
282809100258SXin LI     break;
282909100258SXin LI 
2830*f5f40dd6SCy Schubert   case 133: /* access_control_command: T_Restrict T_Default res_ippeerlimit ac_flag_list  */
2831*f5f40dd6SCy Schubert #line 841 "../../ntpd/ntp_parser.y"
283209100258SXin LI                 {
283309100258SXin LI 			restrict_node *rn;
283409100258SXin LI 
2835*f5f40dd6SCy Schubert 			rn = create_restrict_node(NULL, NULL, (yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo), FALSE,
2836*f5f40dd6SCy Schubert 						  lex_current()->curpos.nline,
2837*f5f40dd6SCy Schubert 						  lex_current()->curpos.ncol);
283809100258SXin LI 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
283909100258SXin LI 		}
2840*f5f40dd6SCy Schubert #line 2841 "ntp_parser.c"
2841f391d6bcSXin LI     break;
2842f391d6bcSXin LI 
2843*f5f40dd6SCy Schubert   case 134: /* access_control_command: T_Restrict T_Ipv4_flag T_Default res_ippeerlimit ac_flag_list  */
2844*f5f40dd6SCy Schubert #line 850 "../../ntpd/ntp_parser.y"
28452b15cb3dSCy Schubert                 {
28462b15cb3dSCy Schubert 			restrict_node *rn;
28472b15cb3dSCy Schubert 
28482b15cb3dSCy Schubert 			rn = create_restrict_node(
284909100258SXin LI 				create_address_node(
28502d4e511cSCy Schubert 					estrdup("0.0.0.0"),
28512d4e511cSCy Schubert 					AF_INET),
285209100258SXin LI 				create_address_node(
28532d4e511cSCy Schubert 					estrdup("0.0.0.0"),
28542d4e511cSCy Schubert 					AF_INET),
2855*f5f40dd6SCy Schubert 				(yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo), FALSE,
2856*f5f40dd6SCy Schubert 				lex_current()->curpos.nline,
2857*f5f40dd6SCy Schubert 				lex_current()->curpos.ncol);
28582b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
28592b15cb3dSCy Schubert 		}
2860*f5f40dd6SCy Schubert #line 2861 "ntp_parser.c"
2861a25439b6SCy Schubert     break;
2862a25439b6SCy Schubert 
2863*f5f40dd6SCy Schubert   case 135: /* access_control_command: T_Restrict T_Ipv6_flag T_Default res_ippeerlimit ac_flag_list  */
2864*f5f40dd6SCy Schubert #line 866 "../../ntpd/ntp_parser.y"
28652b15cb3dSCy Schubert                 {
286609100258SXin LI 			restrict_node *rn;
28672b15cb3dSCy Schubert 
286809100258SXin LI 			rn = create_restrict_node(
28692d4e511cSCy Schubert 				create_address_node(
28702d4e511cSCy Schubert 					estrdup("::"),
28712d4e511cSCy Schubert 					AF_INET6),
28722d4e511cSCy Schubert 				create_address_node(
28732d4e511cSCy Schubert 					estrdup("::"),
28742d4e511cSCy Schubert 					AF_INET6),
2875*f5f40dd6SCy Schubert 				(yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo), FALSE,
2876*f5f40dd6SCy Schubert 				lex_current()->curpos.nline,
2877*f5f40dd6SCy Schubert 				lex_current()->curpos.ncol);
287809100258SXin LI 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
28792b15cb3dSCy Schubert 		}
2880*f5f40dd6SCy Schubert #line 2881 "ntp_parser.c"
28812b15cb3dSCy Schubert     break;
28822b15cb3dSCy Schubert 
2883*f5f40dd6SCy Schubert   case 136: /* access_control_command: T_Restrict T_Source res_ippeerlimit ac_flag_list  */
2884*f5f40dd6SCy Schubert #line 882 "../../ntpd/ntp_parser.y"
28852d4e511cSCy Schubert                 {
28862d4e511cSCy Schubert 			restrict_node *	rn;
28872d4e511cSCy Schubert 
28882d4e511cSCy Schubert 			APPEND_G_FIFO((yyvsp[0].Attr_val_fifo), create_attr_ival((yyvsp[-2].Integer), 1));
2889*f5f40dd6SCy Schubert 			rn = create_restrict_node(NULL, NULL, (yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo), FALSE,
2890*f5f40dd6SCy Schubert 						  lex_current()->curpos.nline,
2891*f5f40dd6SCy Schubert 						  lex_current()->curpos.ncol);
28922d4e511cSCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
28932d4e511cSCy Schubert 		}
2894*f5f40dd6SCy Schubert #line 2895 "ntp_parser.c"
289509100258SXin LI     break;
289609100258SXin LI 
2897*f5f40dd6SCy Schubert   case 137: /* access_control_command: T_Delrestrict ip_address restrict_mask  */
2898*f5f40dd6SCy Schubert #line 892 "../../ntpd/ntp_parser.y"
2899*f5f40dd6SCy Schubert                 {
2900*f5f40dd6SCy Schubert 			restrict_node *	rn;
2901*f5f40dd6SCy Schubert 
2902*f5f40dd6SCy Schubert 			rn = create_restrict_node((yyvsp[-1].Address_node), (yyvsp[0].Address_node), -1, NULL, TRUE,
2903*f5f40dd6SCy Schubert 						  lex_current()->curpos.nline,
2904*f5f40dd6SCy Schubert 						  lex_current()->curpos.ncol);
2905*f5f40dd6SCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
2906*f5f40dd6SCy Schubert 		}
2907*f5f40dd6SCy Schubert #line 2908 "ntp_parser.c"
2908*f5f40dd6SCy Schubert     break;
2909*f5f40dd6SCy Schubert 
2910*f5f40dd6SCy Schubert   case 138: /* access_control_command: T_Delrestrict T_Source ip_address  */
2911*f5f40dd6SCy Schubert #line 901 "../../ntpd/ntp_parser.y"
2912*f5f40dd6SCy Schubert                 {
2913*f5f40dd6SCy Schubert 			restrict_node *	rn;
2914*f5f40dd6SCy Schubert 			attr_val_fifo * avf;
2915*f5f40dd6SCy Schubert 
2916*f5f40dd6SCy Schubert 			avf = NULL;
2917*f5f40dd6SCy Schubert 			APPEND_G_FIFO(avf, create_attr_ival((yyvsp[-1].Integer), 1));
2918*f5f40dd6SCy Schubert 			rn = create_restrict_node((yyvsp[0].Address_node), NULL, -1, avf, TRUE,
2919*f5f40dd6SCy Schubert 						  lex_current()->curpos.nline,
2920*f5f40dd6SCy Schubert 						  lex_current()->curpos.ncol);
2921*f5f40dd6SCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
2922*f5f40dd6SCy Schubert 		}
2923*f5f40dd6SCy Schubert #line 2924 "ntp_parser.c"
2924*f5f40dd6SCy Schubert     break;
2925*f5f40dd6SCy Schubert 
2926*f5f40dd6SCy Schubert   case 139: /* restrict_mask: %empty  */
2927*f5f40dd6SCy Schubert #line 916 "../../ntpd/ntp_parser.y"
2928*f5f40dd6SCy Schubert                         { (yyval.Address_node) = NULL; }
2929*f5f40dd6SCy Schubert #line 2930 "ntp_parser.c"
2930*f5f40dd6SCy Schubert     break;
2931*f5f40dd6SCy Schubert 
2932*f5f40dd6SCy Schubert   case 140: /* restrict_mask: T_Mask ip_address  */
2933*f5f40dd6SCy Schubert #line 918 "../../ntpd/ntp_parser.y"
2934*f5f40dd6SCy Schubert                 {
2935*f5f40dd6SCy Schubert 			(yyval.Address_node) = (yyvsp[0].Address_node);
2936*f5f40dd6SCy Schubert 		}
2937*f5f40dd6SCy Schubert #line 2938 "ntp_parser.c"
2938*f5f40dd6SCy Schubert     break;
2939*f5f40dd6SCy Schubert 
2940*f5f40dd6SCy Schubert   case 141: /* res_ippeerlimit: %empty  */
2941*f5f40dd6SCy Schubert #line 925 "../../ntpd/ntp_parser.y"
29422d4e511cSCy Schubert                         { (yyval.Integer) = -1; }
2943*f5f40dd6SCy Schubert #line 2944 "ntp_parser.c"
29442d4e511cSCy Schubert     break;
29452d4e511cSCy Schubert 
2946*f5f40dd6SCy Schubert   case 142: /* res_ippeerlimit: T_Ippeerlimit T_Integer  */
2947*f5f40dd6SCy Schubert #line 927 "../../ntpd/ntp_parser.y"
29482b15cb3dSCy Schubert                 {
294909100258SXin LI 			if (((yyvsp[0].Integer) < -1) || ((yyvsp[0].Integer) > 100)) {
295009100258SXin LI 				struct FILE_INFO * ip_ctx;
295109100258SXin LI 
295209100258SXin LI 				ip_ctx = lex_current();
295309100258SXin LI 				msyslog(LOG_ERR,
295409100258SXin LI 					"Unreasonable ippeerlimit value (%d) in %s line %d, column %d.  Using 0.",
295509100258SXin LI 					(yyvsp[0].Integer),
295609100258SXin LI 					ip_ctx->fname,
2957*f5f40dd6SCy Schubert 					ip_ctx->curpos.nline,
2958*f5f40dd6SCy Schubert 					ip_ctx->curpos.ncol);
295909100258SXin LI 				(yyvsp[0].Integer) = 0;
29602b15cb3dSCy Schubert 			}
296109100258SXin LI 			(yyval.Integer) = (yyvsp[0].Integer);
296209100258SXin LI 		}
2963*f5f40dd6SCy Schubert #line 2964 "ntp_parser.c"
2964f391d6bcSXin LI     break;
2965f391d6bcSXin LI 
2966*f5f40dd6SCy Schubert   case 143: /* ac_flag_list: %empty  */
2967*f5f40dd6SCy Schubert #line 946 "../../ntpd/ntp_parser.y"
29682d4e511cSCy Schubert                         { (yyval.Attr_val_fifo) = NULL; }
2969*f5f40dd6SCy Schubert #line 2970 "ntp_parser.c"
297009100258SXin LI     break;
297109100258SXin LI 
2972*f5f40dd6SCy Schubert   case 144: /* ac_flag_list: ac_flag_list access_control_flag  */
2973*f5f40dd6SCy Schubert #line 948 "../../ntpd/ntp_parser.y"
2974f391d6bcSXin LI                 {
29752d4e511cSCy Schubert 			attr_val *av;
29762d4e511cSCy Schubert 
2977f391d6bcSXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
29782d4e511cSCy Schubert 			av = create_attr_ival((yyvsp[0].Integer), 1);
29792d4e511cSCy Schubert 			APPEND_G_FIFO((yyval.Attr_val_fifo), av);
2980f391d6bcSXin LI 		}
2981*f5f40dd6SCy Schubert #line 2982 "ntp_parser.c"
29822b15cb3dSCy Schubert     break;
29832b15cb3dSCy Schubert 
2984*f5f40dd6SCy Schubert   case 145: /* ac_flag_list: ac_flag_list T_Serverresponse T_Fuzz  */
2985*f5f40dd6SCy Schubert #line 956 "../../ntpd/ntp_parser.y"
2986f391d6bcSXin LI                 {
29872d4e511cSCy Schubert 			attr_val *av;
29882d4e511cSCy Schubert 
29892d4e511cSCy Schubert 			(yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo);
29902d4e511cSCy Schubert 			av = create_attr_ival(T_ServerresponseFuzz, 1);
29912d4e511cSCy Schubert 			APPEND_G_FIFO((yyval.Attr_val_fifo), av);
2992f391d6bcSXin LI 		}
2993*f5f40dd6SCy Schubert #line 2994 "ntp_parser.c"
2994a25439b6SCy Schubert     break;
2995a25439b6SCy Schubert 
2996*f5f40dd6SCy Schubert   case 163: /* discard_option_list: discard_option_list discard_option  */
2997*f5f40dd6SCy Schubert #line 987 "../../ntpd/ntp_parser.y"
299809100258SXin LI                 {
299909100258SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
300009100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
300109100258SXin LI 		}
3002*f5f40dd6SCy Schubert #line 3003 "ntp_parser.c"
300309100258SXin LI     break;
300409100258SXin LI 
3005*f5f40dd6SCy Schubert   case 164: /* discard_option_list: discard_option  */
3006*f5f40dd6SCy Schubert #line 992 "../../ntpd/ntp_parser.y"
300709100258SXin LI                 {
300809100258SXin LI 			(yyval.Attr_val_fifo) = NULL;
300909100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
301009100258SXin LI 		}
3011*f5f40dd6SCy Schubert #line 3012 "ntp_parser.c"
30122d4e511cSCy Schubert     break;
30132d4e511cSCy Schubert 
3014*f5f40dd6SCy Schubert   case 165: /* discard_option: discard_option_keyword T_Integer  */
3015*f5f40dd6SCy Schubert #line 1000 "../../ntpd/ntp_parser.y"
30162d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
3017*f5f40dd6SCy Schubert #line 3018 "ntp_parser.c"
301809100258SXin LI     break;
301909100258SXin LI 
3020*f5f40dd6SCy Schubert   case 169: /* mru_option_list: mru_option_list mru_option  */
3021*f5f40dd6SCy Schubert #line 1011 "../../ntpd/ntp_parser.y"
30222d4e511cSCy Schubert                 {
30232d4e511cSCy Schubert 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
30242d4e511cSCy Schubert 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
30252d4e511cSCy Schubert 		}
3026*f5f40dd6SCy Schubert #line 3027 "ntp_parser.c"
302709100258SXin LI     break;
302809100258SXin LI 
3029*f5f40dd6SCy Schubert   case 170: /* mru_option_list: mru_option  */
3030*f5f40dd6SCy Schubert #line 1016 "../../ntpd/ntp_parser.y"
30312d4e511cSCy Schubert                 {
30322d4e511cSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
30332d4e511cSCy Schubert 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
30342d4e511cSCy Schubert 		}
3035*f5f40dd6SCy Schubert #line 3036 "ntp_parser.c"
30362d4e511cSCy Schubert     break;
30372d4e511cSCy Schubert 
3038*f5f40dd6SCy Schubert   case 171: /* mru_option: mru_option_keyword T_Integer  */
3039*f5f40dd6SCy Schubert #line 1024 "../../ntpd/ntp_parser.y"
30402d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
3041*f5f40dd6SCy Schubert #line 3042 "ntp_parser.c"
30422d4e511cSCy Schubert     break;
30432d4e511cSCy Schubert 
3044*f5f40dd6SCy Schubert   case 180: /* fudge_command: T_Fudge address fudge_factor_list  */
3045*f5f40dd6SCy Schubert #line 1044 "../../ntpd/ntp_parser.y"
30462b15cb3dSCy Schubert                 {
30472b15cb3dSCy Schubert 			addr_opts_node *aon;
30482b15cb3dSCy Schubert 
3049e27abb66SXin LI 			aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
30502b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.fudge, aon);
30512b15cb3dSCy Schubert 		}
3052*f5f40dd6SCy Schubert #line 3053 "ntp_parser.c"
30532b15cb3dSCy Schubert     break;
30542b15cb3dSCy Schubert 
3055*f5f40dd6SCy Schubert   case 181: /* fudge_factor_list: fudge_factor_list fudge_factor  */
3056*f5f40dd6SCy Schubert #line 1054 "../../ntpd/ntp_parser.y"
30572b15cb3dSCy Schubert                 {
3058e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3059e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
30602b15cb3dSCy Schubert 		}
3061*f5f40dd6SCy Schubert #line 3062 "ntp_parser.c"
30622b15cb3dSCy Schubert     break;
30632b15cb3dSCy Schubert 
3064*f5f40dd6SCy Schubert   case 182: /* fudge_factor_list: fudge_factor  */
3065*f5f40dd6SCy Schubert #line 1059 "../../ntpd/ntp_parser.y"
30662b15cb3dSCy Schubert                 {
30672b15cb3dSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
3068e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
30692b15cb3dSCy Schubert 		}
3070*f5f40dd6SCy Schubert #line 3071 "ntp_parser.c"
3071f391d6bcSXin LI     break;
3072f391d6bcSXin LI 
3073*f5f40dd6SCy Schubert   case 183: /* fudge_factor: fudge_factor_dbl_keyword number  */
3074*f5f40dd6SCy Schubert #line 1067 "../../ntpd/ntp_parser.y"
30752d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
3076*f5f40dd6SCy Schubert #line 3077 "ntp_parser.c"
30772d4e511cSCy Schubert     break;
30782d4e511cSCy Schubert 
3079*f5f40dd6SCy Schubert   case 184: /* fudge_factor: fudge_factor_bool_keyword boolean  */
3080*f5f40dd6SCy Schubert #line 1069 "../../ntpd/ntp_parser.y"
30812d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
3082*f5f40dd6SCy Schubert #line 3083 "ntp_parser.c"
30832d4e511cSCy Schubert     break;
30842d4e511cSCy Schubert 
3085*f5f40dd6SCy Schubert   case 185: /* fudge_factor: T_Stratum T_Integer  */
3086*f5f40dd6SCy Schubert #line 1071 "../../ntpd/ntp_parser.y"
30873311ff84SXin LI                 {
3088e27abb66SXin LI 			if ((yyvsp[0].Integer) >= 0 && (yyvsp[0].Integer) <= 16) {
3089e27abb66SXin LI 				(yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
30903311ff84SXin LI 			} else {
30913311ff84SXin LI 				(yyval.Attr_val) = NULL;
30923311ff84SXin LI 				yyerror("fudge factor: stratum value not in [0..16], ignored");
30933311ff84SXin LI 			}
30943311ff84SXin LI 		}
3095*f5f40dd6SCy Schubert #line 3096 "ntp_parser.c"
30962b15cb3dSCy Schubert     break;
30972b15cb3dSCy Schubert 
3098*f5f40dd6SCy Schubert   case 186: /* fudge_factor: T_Abbrev T_String  */
3099*f5f40dd6SCy Schubert #line 1080 "../../ntpd/ntp_parser.y"
3100e27abb66SXin LI                         { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
3101*f5f40dd6SCy Schubert #line 3102 "ntp_parser.c"
31022b15cb3dSCy Schubert     break;
31032b15cb3dSCy Schubert 
3104*f5f40dd6SCy Schubert   case 187: /* fudge_factor: T_Refid T_String  */
3105*f5f40dd6SCy Schubert #line 1082 "../../ntpd/ntp_parser.y"
3106f391d6bcSXin LI                         { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
3107*f5f40dd6SCy Schubert #line 3108 "ntp_parser.c"
3108a25439b6SCy Schubert     break;
3109a25439b6SCy Schubert 
3110*f5f40dd6SCy Schubert   case 195: /* device_command: T_Device address device_item_list  */
3111*f5f40dd6SCy Schubert #line 1104 "../../ntpd/ntp_parser.y"
3112a466cc55SCy Schubert                 {
3113a466cc55SCy Schubert 			addr_opts_node *aon;
3114a466cc55SCy Schubert 
3115a466cc55SCy Schubert 			aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
3116a466cc55SCy Schubert 			APPEND_G_FIFO(cfgt.device, aon);
3117a466cc55SCy Schubert 		}
3118*f5f40dd6SCy Schubert #line 3119 "ntp_parser.c"
3119a466cc55SCy Schubert     break;
3120a466cc55SCy Schubert 
3121*f5f40dd6SCy Schubert   case 196: /* device_item_list: device_item_list device_item  */
3122*f5f40dd6SCy Schubert #line 1114 "../../ntpd/ntp_parser.y"
3123a466cc55SCy Schubert                 {
3124a466cc55SCy Schubert 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3125a466cc55SCy Schubert 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3126a466cc55SCy Schubert 		}
3127*f5f40dd6SCy Schubert #line 3128 "ntp_parser.c"
3128a466cc55SCy Schubert     break;
3129a466cc55SCy Schubert 
3130*f5f40dd6SCy Schubert   case 197: /* device_item_list: device_item  */
3131*f5f40dd6SCy Schubert #line 1119 "../../ntpd/ntp_parser.y"
3132a466cc55SCy Schubert                 {
3133a466cc55SCy Schubert 			(yyval.Attr_val_fifo) = NULL;
3134a466cc55SCy Schubert 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3135a466cc55SCy Schubert 		}
3136*f5f40dd6SCy Schubert #line 3137 "ntp_parser.c"
3137a466cc55SCy Schubert     break;
3138a466cc55SCy Schubert 
3139*f5f40dd6SCy Schubert   case 198: /* device_item: device_item_path_keyword T_String  */
3140*f5f40dd6SCy Schubert #line 1127 "../../ntpd/ntp_parser.y"
3141a466cc55SCy Schubert                         { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
3142*f5f40dd6SCy Schubert #line 3143 "ntp_parser.c"
3143a466cc55SCy Schubert     break;
3144a466cc55SCy Schubert 
3145*f5f40dd6SCy Schubert   case 201: /* rlimit_command: T_Rlimit rlimit_option_list  */
3146*f5f40dd6SCy Schubert #line 1141 "../../ntpd/ntp_parser.y"
31472d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.rlimit, (yyvsp[0].Attr_val_fifo)); }
3148*f5f40dd6SCy Schubert #line 3149 "ntp_parser.c"
3149f391d6bcSXin LI     break;
3150f391d6bcSXin LI 
3151*f5f40dd6SCy Schubert   case 202: /* rlimit_option_list: rlimit_option_list rlimit_option  */
3152*f5f40dd6SCy Schubert #line 1146 "../../ntpd/ntp_parser.y"
315309100258SXin LI                 {
315409100258SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
315509100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
315609100258SXin LI 		}
3157*f5f40dd6SCy Schubert #line 3158 "ntp_parser.c"
315809100258SXin LI     break;
315909100258SXin LI 
3160*f5f40dd6SCy Schubert   case 203: /* rlimit_option_list: rlimit_option  */
3161*f5f40dd6SCy Schubert #line 1151 "../../ntpd/ntp_parser.y"
316209100258SXin LI                 {
316309100258SXin LI 			(yyval.Attr_val_fifo) = NULL;
316409100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
316509100258SXin LI 		}
3166*f5f40dd6SCy Schubert #line 3167 "ntp_parser.c"
31672d4e511cSCy Schubert     break;
31682d4e511cSCy Schubert 
3169*f5f40dd6SCy Schubert   case 204: /* rlimit_option: rlimit_option_keyword T_Integer  */
3170*f5f40dd6SCy Schubert #line 1159 "../../ntpd/ntp_parser.y"
31712d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
3172*f5f40dd6SCy Schubert #line 3173 "ntp_parser.c"
31732d4e511cSCy Schubert     break;
31742d4e511cSCy Schubert 
3175*f5f40dd6SCy Schubert   case 208: /* system_option_command: T_Enable system_option_list  */
3176*f5f40dd6SCy Schubert #line 1175 "../../ntpd/ntp_parser.y"
31772d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.enable_opts, (yyvsp[0].Attr_val_fifo)); }
3178*f5f40dd6SCy Schubert #line 3179 "ntp_parser.c"
317909100258SXin LI     break;
318009100258SXin LI 
3181*f5f40dd6SCy Schubert   case 209: /* system_option_command: T_Disable system_option_list  */
3182*f5f40dd6SCy Schubert #line 1177 "../../ntpd/ntp_parser.y"
31832d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.disable_opts, (yyvsp[0].Attr_val_fifo)); }
3184*f5f40dd6SCy Schubert #line 3185 "ntp_parser.c"
318509100258SXin LI     break;
318609100258SXin LI 
3187*f5f40dd6SCy Schubert   case 210: /* system_option_list: system_option_list system_option  */
3188*f5f40dd6SCy Schubert #line 1182 "../../ntpd/ntp_parser.y"
31892d4e511cSCy Schubert                 {
31902d4e511cSCy Schubert 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
31912d4e511cSCy Schubert 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
31922d4e511cSCy Schubert 		}
3193*f5f40dd6SCy Schubert #line 3194 "ntp_parser.c"
31942d4e511cSCy Schubert     break;
31952d4e511cSCy Schubert 
3196*f5f40dd6SCy Schubert   case 211: /* system_option_list: system_option  */
3197*f5f40dd6SCy Schubert #line 1187 "../../ntpd/ntp_parser.y"
31982d4e511cSCy Schubert                 {
31992d4e511cSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
32002d4e511cSCy Schubert 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
32012d4e511cSCy Schubert 		}
3202*f5f40dd6SCy Schubert #line 3203 "ntp_parser.c"
32032d4e511cSCy Schubert     break;
32042d4e511cSCy Schubert 
3205*f5f40dd6SCy Schubert   case 212: /* system_option: system_option_flag_keyword  */
3206*f5f40dd6SCy Schubert #line 1195 "../../ntpd/ntp_parser.y"
32072d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
3208*f5f40dd6SCy Schubert #line 3209 "ntp_parser.c"
32092d4e511cSCy Schubert     break;
32102d4e511cSCy Schubert 
3211*f5f40dd6SCy Schubert   case 213: /* system_option: system_option_local_flag_keyword  */
3212*f5f40dd6SCy Schubert #line 1197 "../../ntpd/ntp_parser.y"
32132b15cb3dSCy Schubert                 {
3214276da39aSCy Schubert 			if (lex_from_file()) {
3215e27abb66SXin LI 				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer));
32162b15cb3dSCy Schubert 			} else {
32172b15cb3dSCy Schubert 				char err_str[128];
32182b15cb3dSCy Schubert 
32192b15cb3dSCy Schubert 				(yyval.Attr_val) = NULL;
32202b15cb3dSCy Schubert 				snprintf(err_str, sizeof(err_str),
32212b15cb3dSCy Schubert 					 "enable/disable %s remote configuration ignored",
3222e27abb66SXin LI 					 keyword((yyvsp[0].Integer)));
3223276da39aSCy Schubert 				yyerror(err_str);
32242b15cb3dSCy Schubert 			}
32252b15cb3dSCy Schubert 		}
3226*f5f40dd6SCy Schubert #line 3227 "ntp_parser.c"
32272b15cb3dSCy Schubert     break;
32282b15cb3dSCy Schubert 
3229*f5f40dd6SCy Schubert   case 226: /* tinker_command: T_Tinker tinker_option_list  */
3230*f5f40dd6SCy Schubert #line 1236 "../../ntpd/ntp_parser.y"
3231f391d6bcSXin LI                         { CONCAT_G_FIFOS(cfgt.tinker, (yyvsp[0].Attr_val_fifo)); }
3232*f5f40dd6SCy Schubert #line 3233 "ntp_parser.c"
3233f391d6bcSXin LI     break;
3234f391d6bcSXin LI 
3235*f5f40dd6SCy Schubert   case 227: /* tinker_option_list: tinker_option_list tinker_option  */
3236*f5f40dd6SCy Schubert #line 1241 "../../ntpd/ntp_parser.y"
32372b15cb3dSCy Schubert                 {
3238e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3239e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
32402b15cb3dSCy Schubert 		}
3241*f5f40dd6SCy Schubert #line 3242 "ntp_parser.c"
32422b15cb3dSCy Schubert     break;
32432b15cb3dSCy Schubert 
3244*f5f40dd6SCy Schubert   case 228: /* tinker_option_list: tinker_option  */
3245*f5f40dd6SCy Schubert #line 1246 "../../ntpd/ntp_parser.y"
3246e27abb66SXin LI                 {
3247e27abb66SXin LI 			(yyval.Attr_val_fifo) = NULL;
3248e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3249e27abb66SXin LI 		}
3250*f5f40dd6SCy Schubert #line 3251 "ntp_parser.c"
3251276da39aSCy Schubert     break;
3252276da39aSCy Schubert 
3253*f5f40dd6SCy Schubert   case 229: /* tinker_option: tinker_option_keyword number  */
3254*f5f40dd6SCy Schubert #line 1254 "../../ntpd/ntp_parser.y"
3255e27abb66SXin LI                         { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
3256*f5f40dd6SCy Schubert #line 3257 "ntp_parser.c"
325768ba7e87SXin LI     break;
325868ba7e87SXin LI 
3259*f5f40dd6SCy Schubert   case 242: /* miscellaneous_command: misc_cmd_dbl_keyword number  */
3260*f5f40dd6SCy Schubert #line 1279 "../../ntpd/ntp_parser.y"
326168ba7e87SXin LI                 {
326268ba7e87SXin LI 			attr_val *av;
326368ba7e87SXin LI 
3264e27abb66SXin LI 			av = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double));
326568ba7e87SXin LI 			APPEND_G_FIFO(cfgt.vars, av);
326668ba7e87SXin LI 		}
3267*f5f40dd6SCy Schubert #line 3268 "ntp_parser.c"
326868ba7e87SXin LI     break;
326968ba7e87SXin LI 
3270*f5f40dd6SCy Schubert   case 243: /* miscellaneous_command: misc_cmd_int_keyword T_Integer  */
3271*f5f40dd6SCy Schubert #line 1286 "../../ntpd/ntp_parser.y"
327268ba7e87SXin LI                 {
327368ba7e87SXin LI 			attr_val *av;
327468ba7e87SXin LI 
3275e27abb66SXin LI 			av = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
327668ba7e87SXin LI 			APPEND_G_FIFO(cfgt.vars, av);
327768ba7e87SXin LI 		}
3278*f5f40dd6SCy Schubert #line 3279 "ntp_parser.c"
327968ba7e87SXin LI     break;
328068ba7e87SXin LI 
3281*f5f40dd6SCy Schubert   case 244: /* miscellaneous_command: misc_cmd_str_keyword T_String  */
3282*f5f40dd6SCy Schubert #line 1293 "../../ntpd/ntp_parser.y"
3283e27abb66SXin LI                 {
3284e27abb66SXin LI 			attr_val *av;
3285e27abb66SXin LI 
3286e27abb66SXin LI 			av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
3287e27abb66SXin LI 			APPEND_G_FIFO(cfgt.vars, av);
3288e27abb66SXin LI 		}
3289*f5f40dd6SCy Schubert #line 3290 "ntp_parser.c"
3290e27abb66SXin LI     break;
3291e27abb66SXin LI 
3292*f5f40dd6SCy Schubert   case 245: /* miscellaneous_command: misc_cmd_str_lcl_keyword T_String  */
3293*f5f40dd6SCy Schubert #line 1300 "../../ntpd/ntp_parser.y"
32942b15cb3dSCy Schubert                 {
32952b15cb3dSCy Schubert 			char error_text[64];
32962b15cb3dSCy Schubert 			attr_val *av;
32972b15cb3dSCy Schubert 
3298276da39aSCy Schubert 			if (lex_from_file()) {
3299e27abb66SXin LI 				av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
33002b15cb3dSCy Schubert 				APPEND_G_FIFO(cfgt.vars, av);
33012b15cb3dSCy Schubert 			} else {
3302e27abb66SXin LI 				YYFREE((yyvsp[0].String));
33032b15cb3dSCy Schubert 				snprintf(error_text, sizeof(error_text),
33042b15cb3dSCy Schubert 					 "%s remote config ignored",
3305e27abb66SXin LI 					 keyword((yyvsp[-1].Integer)));
3306276da39aSCy Schubert 				yyerror(error_text);
33072b15cb3dSCy Schubert 			}
33082b15cb3dSCy Schubert 		}
3309*f5f40dd6SCy Schubert #line 3310 "ntp_parser.c"
33102b15cb3dSCy Schubert     break;
33112b15cb3dSCy Schubert 
3312*f5f40dd6SCy Schubert   case 246: /* miscellaneous_command: T_Includefile T_String command  */
3313*f5f40dd6SCy Schubert #line 1316 "../../ntpd/ntp_parser.y"
33142b15cb3dSCy Schubert                 {
3315276da39aSCy Schubert 			if (!lex_from_file()) {
3316e27abb66SXin LI 				YYFREE((yyvsp[-1].String)); /* avoid leak */
3317276da39aSCy Schubert 				yyerror("remote includefile ignored");
3318276da39aSCy Schubert 				break;
33192b15cb3dSCy Schubert 			}
3320276da39aSCy Schubert 			if (lex_level() > MAXINCLUDELEVEL) {
3321276da39aSCy Schubert 				fprintf(stderr, "getconfig: Maximum include file level exceeded.\n");
3322276da39aSCy Schubert 				msyslog(LOG_ERR, "getconfig: Maximum include file level exceeded.");
3323276da39aSCy Schubert 			} else {
3324e27abb66SXin LI 				const char * path = FindConfig((yyvsp[-1].String)); /* might return $2! */
3325276da39aSCy Schubert 				if (!lex_push_file(path, "r")) {
3326276da39aSCy Schubert 					fprintf(stderr, "getconfig: Couldn't open <%s>\n", path);
3327276da39aSCy Schubert 					msyslog(LOG_ERR, "getconfig: Couldn't open <%s>", path);
3328276da39aSCy Schubert 				}
3329276da39aSCy Schubert 			}
3330e27abb66SXin LI 			YYFREE((yyvsp[-1].String)); /* avoid leak */
3331276da39aSCy Schubert 		}
3332*f5f40dd6SCy Schubert #line 3333 "ntp_parser.c"
333309100258SXin LI     break;
333409100258SXin LI 
3335*f5f40dd6SCy Schubert   case 247: /* miscellaneous_command: T_Leapfile T_String opt_hash_check  */
3336*f5f40dd6SCy Schubert #line 1335 "../../ntpd/ntp_parser.y"
33372d4e511cSCy Schubert                 {
33382d4e511cSCy Schubert 			attr_val *av;
33392d4e511cSCy Schubert 
33402d4e511cSCy Schubert 			av = create_attr_sval((yyvsp[-2].Integer), (yyvsp[-1].String));
33412d4e511cSCy Schubert 			av->flag = (yyvsp[0].Integer);
33422d4e511cSCy Schubert 			APPEND_G_FIFO(cfgt.vars, av);
33432d4e511cSCy Schubert 		}
3344*f5f40dd6SCy Schubert #line 3345 "ntp_parser.c"
334509100258SXin LI     break;
334609100258SXin LI 
3347*f5f40dd6SCy Schubert   case 248: /* miscellaneous_command: T_End  */
3348*f5f40dd6SCy Schubert #line 1343 "../../ntpd/ntp_parser.y"
33492d4e511cSCy Schubert                         { lex_flush_stack(); }
3350*f5f40dd6SCy Schubert #line 3351 "ntp_parser.c"
335109100258SXin LI     break;
335209100258SXin LI 
3353*f5f40dd6SCy Schubert   case 249: /* miscellaneous_command: T_Driftfile drift_parm  */
3354*f5f40dd6SCy Schubert #line 1345 "../../ntpd/ntp_parser.y"
33552d4e511cSCy Schubert                         { /* see drift_parm below for actions */ }
3356*f5f40dd6SCy Schubert #line 3357 "ntp_parser.c"
33572d4e511cSCy Schubert     break;
33582d4e511cSCy Schubert 
3359*f5f40dd6SCy Schubert   case 250: /* miscellaneous_command: T_Logconfig log_config_list  */
3360*f5f40dd6SCy Schubert #line 1347 "../../ntpd/ntp_parser.y"
33612d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.logconfig, (yyvsp[0].Attr_val_fifo)); }
3362*f5f40dd6SCy Schubert #line 3363 "ntp_parser.c"
33632d4e511cSCy Schubert     break;
33642d4e511cSCy Schubert 
3365*f5f40dd6SCy Schubert   case 251: /* miscellaneous_command: T_Phone string_list  */
3366*f5f40dd6SCy Schubert #line 1349 "../../ntpd/ntp_parser.y"
33672d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.phone, (yyvsp[0].String_fifo)); }
3368*f5f40dd6SCy Schubert #line 3369 "ntp_parser.c"
33692d4e511cSCy Schubert     break;
33702d4e511cSCy Schubert 
3371*f5f40dd6SCy Schubert   case 252: /* miscellaneous_command: T_PollSkewList pollskew_list  */
3372*f5f40dd6SCy Schubert #line 1351 "../../ntpd/ntp_parser.y"
33732d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.pollskewlist, (yyvsp[0].Attr_val_fifo)); }
3374*f5f40dd6SCy Schubert #line 3375 "ntp_parser.c"
33752d4e511cSCy Schubert     break;
33762d4e511cSCy Schubert 
3377*f5f40dd6SCy Schubert   case 253: /* miscellaneous_command: T_Setvar variable_assign  */
3378*f5f40dd6SCy Schubert #line 1353 "../../ntpd/ntp_parser.y"
33792d4e511cSCy Schubert                         { APPEND_G_FIFO(cfgt.setvar, (yyvsp[0].Set_var)); }
3380*f5f40dd6SCy Schubert #line 3381 "ntp_parser.c"
33812d4e511cSCy Schubert     break;
33822d4e511cSCy Schubert 
3383*f5f40dd6SCy Schubert   case 254: /* miscellaneous_command: T_Trap ip_address trap_option_list  */
3384*f5f40dd6SCy Schubert #line 1355 "../../ntpd/ntp_parser.y"
3385e27abb66SXin LI                 {
3386e27abb66SXin LI 			addr_opts_node *aon;
3387e27abb66SXin LI 
3388e27abb66SXin LI 			aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
3389e27abb66SXin LI 			APPEND_G_FIFO(cfgt.trap, aon);
3390e27abb66SXin LI 		}
3391*f5f40dd6SCy Schubert #line 3392 "ntp_parser.c"
339209100258SXin LI     break;
339309100258SXin LI 
3394*f5f40dd6SCy Schubert   case 255: /* miscellaneous_command: T_Ttl integer_list  */
3395*f5f40dd6SCy Schubert #line 1362 "../../ntpd/ntp_parser.y"
33962d4e511cSCy Schubert                         { CONCAT_G_FIFOS(cfgt.ttl, (yyvsp[0].Attr_val_fifo)); }
3397*f5f40dd6SCy Schubert #line 3398 "ntp_parser.c"
33982d4e511cSCy Schubert     break;
33992d4e511cSCy Schubert 
3400*f5f40dd6SCy Schubert   case 260: /* misc_cmd_int_keyword: T_Leapsmearinterval  */
3401*f5f40dd6SCy Schubert #line 1377 "../../ntpd/ntp_parser.y"
3402276da39aSCy Schubert                 {
3403276da39aSCy Schubert #ifndef LEAP_SMEAR
3404276da39aSCy Schubert 			yyerror("Built without LEAP_SMEAR support.");
3405276da39aSCy Schubert #endif
3406276da39aSCy Schubert 		}
3407*f5f40dd6SCy Schubert #line 3408 "ntp_parser.c"
34082b15cb3dSCy Schubert     break;
34092b15cb3dSCy Schubert 
3410*f5f40dd6SCy Schubert   case 261: /* opt_hash_check: T_Ignorehash  */
3411*f5f40dd6SCy Schubert #line 1386 "../../ntpd/ntp_parser.y"
34122d4e511cSCy Schubert                         { (yyval.Integer) = FALSE; }
3413*f5f40dd6SCy Schubert #line 3414 "ntp_parser.c"
34142d4e511cSCy Schubert     break;
34152d4e511cSCy Schubert 
3416*f5f40dd6SCy Schubert   case 262: /* opt_hash_check: T_Checkhash  */
3417*f5f40dd6SCy Schubert #line 1388 "../../ntpd/ntp_parser.y"
34182d4e511cSCy Schubert                         { (yyval.Integer) = TRUE; }
3419*f5f40dd6SCy Schubert #line 3420 "ntp_parser.c"
34202d4e511cSCy Schubert     break;
34212d4e511cSCy Schubert 
3422*f5f40dd6SCy Schubert   case 263: /* opt_hash_check: %empty  */
3423*f5f40dd6SCy Schubert #line 1390 "../../ntpd/ntp_parser.y"
34242d4e511cSCy Schubert                         {  (yyval.Integer) = TRUE; }
3425*f5f40dd6SCy Schubert #line 3426 "ntp_parser.c"
34262d4e511cSCy Schubert     break;
34272d4e511cSCy Schubert 
3428*f5f40dd6SCy Schubert   case 268: /* drift_parm: T_String  */
3429*f5f40dd6SCy Schubert #line 1405 "../../ntpd/ntp_parser.y"
34302b15cb3dSCy Schubert                 {
34319034852cSGleb Smirnoff 			if (lex_from_file()) {
34322b15cb3dSCy Schubert 				attr_val *av;
3433e27abb66SXin LI 				av = create_attr_sval(T_Driftfile, (yyvsp[0].String));
34342b15cb3dSCy Schubert 				APPEND_G_FIFO(cfgt.vars, av);
34359034852cSGleb Smirnoff 			} else {
3436e27abb66SXin LI 				YYFREE((yyvsp[0].String));
34379034852cSGleb Smirnoff 				yyerror("driftfile remote configuration ignored");
34382b15cb3dSCy Schubert 			}
34399034852cSGleb Smirnoff 		}
3440*f5f40dd6SCy Schubert #line 3441 "ntp_parser.c"
34412b15cb3dSCy Schubert     break;
34422b15cb3dSCy Schubert 
3443*f5f40dd6SCy Schubert   case 269: /* drift_parm: T_String T_Double  */
3444*f5f40dd6SCy Schubert #line 1416 "../../ntpd/ntp_parser.y"
3445e27abb66SXin LI                 {
3446e27abb66SXin LI 			if (lex_from_file()) {
3447e27abb66SXin LI 				attr_val *av;
3448e27abb66SXin LI 				av = create_attr_sval(T_Driftfile, (yyvsp[-1].String));
3449e27abb66SXin LI 				APPEND_G_FIFO(cfgt.vars, av);
3450e27abb66SXin LI 				av = create_attr_dval(T_WanderThreshold, (yyvsp[0].Double));
3451e27abb66SXin LI 				APPEND_G_FIFO(cfgt.vars, av);
345209100258SXin LI 			msyslog(LOG_WARNING,
345309100258SXin LI 				"'driftfile FILENAME WanderValue' is deprecated, "
345409100258SXin LI 				"please use separate 'driftfile FILENAME' and "
345509100258SXin LI 				"'nonvolatile WanderValue' lines instead.");
3456e27abb66SXin LI 			} else {
3457e27abb66SXin LI 				YYFREE((yyvsp[-1].String));
3458e27abb66SXin LI 				yyerror("driftfile remote configuration ignored");
3459e27abb66SXin LI 			}
3460e27abb66SXin LI 		}
3461*f5f40dd6SCy Schubert #line 3462 "ntp_parser.c"
3462e27abb66SXin LI     break;
3463e27abb66SXin LI 
3464*f5f40dd6SCy Schubert   case 270: /* drift_parm: %empty  */
3465*f5f40dd6SCy Schubert #line 1433 "../../ntpd/ntp_parser.y"
34662b15cb3dSCy Schubert                 {
34679034852cSGleb Smirnoff 			if (lex_from_file()) {
34682b15cb3dSCy Schubert 				attr_val *av;
34699034852cSGleb Smirnoff 				av = create_attr_sval(T_Driftfile, estrdup(""));
34702b15cb3dSCy Schubert 				APPEND_G_FIFO(cfgt.vars, av);
34719034852cSGleb Smirnoff 			} else {
34729034852cSGleb Smirnoff 				yyerror("driftfile remote configuration ignored");
34732b15cb3dSCy Schubert 			}
34749034852cSGleb Smirnoff 		}
3475*f5f40dd6SCy Schubert #line 3476 "ntp_parser.c"
3476a25439b6SCy Schubert     break;
3477a25439b6SCy Schubert 
3478*f5f40dd6SCy Schubert   case 271: /* pollskew_list: %empty  */
3479*f5f40dd6SCy Schubert #line 1446 "../../ntpd/ntp_parser.y"
3480f391d6bcSXin LI                         { (yyval.Attr_val_fifo) = NULL; }
3481*f5f40dd6SCy Schubert #line 3482 "ntp_parser.c"
3482f391d6bcSXin LI     break;
3483f391d6bcSXin LI 
3484*f5f40dd6SCy Schubert   case 272: /* pollskew_list: pollskew_list pollskew_spec  */
3485*f5f40dd6SCy Schubert #line 1448 "../../ntpd/ntp_parser.y"
34862d4e511cSCy Schubert                         { (yyval.Attr_val_fifo) = append_gen_fifo((yyvsp[-1].Attr_val_fifo), (yyvsp[0].Attr_val)); }
3487*f5f40dd6SCy Schubert #line 3488 "ntp_parser.c"
34882d4e511cSCy Schubert     break;
34892d4e511cSCy Schubert 
3490*f5f40dd6SCy Schubert   case 273: /* pollskew_spec: pollskew_cycle T_Integer '|' T_Integer  */
3491*f5f40dd6SCy Schubert #line 1453 "../../ntpd/ntp_parser.y"
34922d4e511cSCy Schubert                 {
34932d4e511cSCy Schubert 			if ((yyvsp[-2].Integer) < 0 || (yyvsp[0].Integer) < 0) {
34942d4e511cSCy Schubert 				/* bad numbers */
34952d4e511cSCy Schubert 				yyerror("pollskewlist: skew values must be >=0");
34962d4e511cSCy Schubert 				destroy_attr_val((yyvsp[-3].Attr_val));
34972d4e511cSCy Schubert 				(yyvsp[-3].Attr_val) = NULL;
34982d4e511cSCy Schubert 			} else if ((yyvsp[-3].Attr_val) == NULL) {
34992d4e511cSCy Schubert 				yyerror("pollskewlist: poll value must be 3-17, inclusive");
35002d4e511cSCy Schubert 			} else if ((yyvsp[-3].Attr_val)->attr <= 0) {
35012d4e511cSCy Schubert 				/* process default range */
35022d4e511cSCy Schubert 				(yyvsp[-3].Attr_val)->value.r.first = (yyvsp[-2].Integer);
35032d4e511cSCy Schubert 				(yyvsp[-3].Attr_val)->value.r.last  = (yyvsp[0].Integer);
35042d4e511cSCy Schubert 			} else if ((yyvsp[-2].Integer) < (1 << ((yyvsp[-3].Attr_val)->attr - 1)) && (yyvsp[0].Integer) < (1 << ((yyvsp[-3].Attr_val)->attr - 1))) {
35052d4e511cSCy Schubert 				(yyvsp[-3].Attr_val)->value.r.first = (yyvsp[-2].Integer);
35062d4e511cSCy Schubert 				(yyvsp[-3].Attr_val)->value.r.last  = (yyvsp[0].Integer);
35072d4e511cSCy Schubert 			} else {
35082d4e511cSCy Schubert 				yyerror("pollskewlist: randomization limit must be <= half the poll interval");
35092d4e511cSCy Schubert 				destroy_attr_val((yyvsp[-3].Attr_val));
35102d4e511cSCy Schubert 				(yyvsp[-3].Attr_val) = NULL;
35112d4e511cSCy Schubert 			}
35122d4e511cSCy Schubert 			(yyval.Attr_val) = (yyvsp[-3].Attr_val);
35132d4e511cSCy Schubert 		}
3514*f5f40dd6SCy Schubert #line 3515 "ntp_parser.c"
35152d4e511cSCy Schubert     break;
35162d4e511cSCy Schubert 
3517*f5f40dd6SCy Schubert   case 274: /* pollskew_cycle: T_Integer  */
3518*f5f40dd6SCy Schubert #line 1479 "../../ntpd/ntp_parser.y"
3519*f5f40dd6SCy Schubert                 {
3520*f5f40dd6SCy Schubert 			(yyval.Attr_val) = ((yyvsp[0].Integer) >= NTP_MINPOLL && (yyvsp[0].Integer) <= NTP_MAXPOLL)
3521*f5f40dd6SCy Schubert 				? create_attr_rval((yyvsp[0].Integer), 0, 0)
3522*f5f40dd6SCy Schubert 				: NULL;
3523*f5f40dd6SCy Schubert 		}
3524*f5f40dd6SCy Schubert #line 3525 "ntp_parser.c"
35252d4e511cSCy Schubert     break;
35262d4e511cSCy Schubert 
3527*f5f40dd6SCy Schubert   case 275: /* pollskew_cycle: T_Default  */
3528*f5f40dd6SCy Schubert #line 1484 "../../ntpd/ntp_parser.y"
35292d4e511cSCy Schubert                           { (yyval.Attr_val) = create_attr_rval(-1, 0, 0); }
3530*f5f40dd6SCy Schubert #line 3531 "ntp_parser.c"
35312d4e511cSCy Schubert     break;
35322d4e511cSCy Schubert 
3533*f5f40dd6SCy Schubert   case 276: /* variable_assign: T_String '=' T_String t_default_or_zero  */
3534*f5f40dd6SCy Schubert #line 1490 "../../ntpd/ntp_parser.y"
35352d4e511cSCy Schubert                         { (yyval.Set_var) = create_setvar_node((yyvsp[-3].String), (yyvsp[-1].String), (yyvsp[0].Integer)); }
3536*f5f40dd6SCy Schubert #line 3537 "ntp_parser.c"
35372d4e511cSCy Schubert     break;
35382d4e511cSCy Schubert 
3539*f5f40dd6SCy Schubert   case 278: /* t_default_or_zero: %empty  */
3540*f5f40dd6SCy Schubert #line 1496 "../../ntpd/ntp_parser.y"
35412d4e511cSCy Schubert                         { (yyval.Integer) = 0; }
3542*f5f40dd6SCy Schubert #line 3543 "ntp_parser.c"
35432d4e511cSCy Schubert     break;
35442d4e511cSCy Schubert 
3545*f5f40dd6SCy Schubert   case 279: /* trap_option_list: %empty  */
3546*f5f40dd6SCy Schubert #line 1501 "../../ntpd/ntp_parser.y"
35472d4e511cSCy Schubert                         { (yyval.Attr_val_fifo) = NULL; }
3548*f5f40dd6SCy Schubert #line 3549 "ntp_parser.c"
35492d4e511cSCy Schubert     break;
35502d4e511cSCy Schubert 
3551*f5f40dd6SCy Schubert   case 280: /* trap_option_list: trap_option_list trap_option  */
3552*f5f40dd6SCy Schubert #line 1503 "../../ntpd/ntp_parser.y"
3553e27abb66SXin LI                 {
3554e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3555e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3556e27abb66SXin LI 		}
3557*f5f40dd6SCy Schubert #line 3558 "ntp_parser.c"
355868ba7e87SXin LI     break;
355968ba7e87SXin LI 
3560*f5f40dd6SCy Schubert   case 281: /* trap_option: T_Port T_Integer  */
3561*f5f40dd6SCy Schubert #line 1511 "../../ntpd/ntp_parser.y"
3562f391d6bcSXin LI                         { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
3563*f5f40dd6SCy Schubert #line 3564 "ntp_parser.c"
3564f391d6bcSXin LI     break;
3565f391d6bcSXin LI 
3566*f5f40dd6SCy Schubert   case 282: /* trap_option: T_Interface ip_address  */
3567*f5f40dd6SCy Schubert #line 1513 "../../ntpd/ntp_parser.y"
356868ba7e87SXin LI                 {
3569e27abb66SXin LI 			(yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), estrdup((yyvsp[0].Address_node)->address));
3570e27abb66SXin LI 			destroy_address_node((yyvsp[0].Address_node));
357168ba7e87SXin LI 		}
3572*f5f40dd6SCy Schubert #line 3573 "ntp_parser.c"
357368ba7e87SXin LI     break;
357468ba7e87SXin LI 
3575*f5f40dd6SCy Schubert   case 283: /* log_config_list: log_config_list log_config_command  */
3576*f5f40dd6SCy Schubert #line 1521 "../../ntpd/ntp_parser.y"
357768ba7e87SXin LI                 {
3578e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3579e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
358068ba7e87SXin LI 		}
3581*f5f40dd6SCy Schubert #line 3582 "ntp_parser.c"
358268ba7e87SXin LI     break;
358368ba7e87SXin LI 
3584*f5f40dd6SCy Schubert   case 284: /* log_config_list: log_config_command  */
3585*f5f40dd6SCy Schubert #line 1526 "../../ntpd/ntp_parser.y"
3586e27abb66SXin LI                 {
3587e27abb66SXin LI 			(yyval.Attr_val_fifo) = NULL;
3588e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3589e27abb66SXin LI 		}
3590*f5f40dd6SCy Schubert #line 3591 "ntp_parser.c"
3591e27abb66SXin LI     break;
3592e27abb66SXin LI 
3593*f5f40dd6SCy Schubert   case 285: /* log_config_command: T_String  */
3594*f5f40dd6SCy Schubert #line 1534 "../../ntpd/ntp_parser.y"
35952b15cb3dSCy Schubert                 {
35962b15cb3dSCy Schubert 			char	prefix;
35972b15cb3dSCy Schubert 			char *	type;
35982b15cb3dSCy Schubert 
3599e27abb66SXin LI 			switch ((yyvsp[0].String)[0]) {
36002b15cb3dSCy Schubert 
36012b15cb3dSCy Schubert 			case '+':
36022b15cb3dSCy Schubert 			case '-':
36032b15cb3dSCy Schubert 			case '=':
3604e27abb66SXin LI 				prefix = (yyvsp[0].String)[0];
3605e27abb66SXin LI 				type = (yyvsp[0].String) + 1;
36062b15cb3dSCy Schubert 				break;
36072b15cb3dSCy Schubert 
36082b15cb3dSCy Schubert 			default:
36092b15cb3dSCy Schubert 				prefix = '=';
3610e27abb66SXin LI 				type = (yyvsp[0].String);
36112b15cb3dSCy Schubert 			}
36122b15cb3dSCy Schubert 
36132b15cb3dSCy Schubert 			(yyval.Attr_val) = create_attr_sval(prefix, estrdup(type));
3614e27abb66SXin LI 			YYFREE((yyvsp[0].String));
36152b15cb3dSCy Schubert 		}
3616*f5f40dd6SCy Schubert #line 3617 "ntp_parser.c"
36172b15cb3dSCy Schubert     break;
36182b15cb3dSCy Schubert 
3619*f5f40dd6SCy Schubert   case 286: /* interface_command: interface_nic nic_rule_action nic_rule_class  */
3620*f5f40dd6SCy Schubert #line 1559 "../../ntpd/ntp_parser.y"
36212b15cb3dSCy Schubert                 {
36222b15cb3dSCy Schubert 			nic_rule_node *nrn;
36232b15cb3dSCy Schubert 
3624e27abb66SXin LI 			nrn = create_nic_rule_node((yyvsp[0].Integer), NULL, (yyvsp[-1].Integer));
36252b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.nic_rules, nrn);
36262b15cb3dSCy Schubert 		}
3627*f5f40dd6SCy Schubert #line 3628 "ntp_parser.c"
36282b15cb3dSCy Schubert     break;
36292b15cb3dSCy Schubert 
3630*f5f40dd6SCy Schubert   case 287: /* interface_command: interface_nic nic_rule_action T_String  */
3631*f5f40dd6SCy Schubert #line 1566 "../../ntpd/ntp_parser.y"
3632e27abb66SXin LI                 {
3633e27abb66SXin LI 			nic_rule_node *nrn;
3634e27abb66SXin LI 
3635e27abb66SXin LI 			nrn = create_nic_rule_node(0, (yyvsp[0].String), (yyvsp[-1].Integer));
3636e27abb66SXin LI 			APPEND_G_FIFO(cfgt.nic_rules, nrn);
3637e27abb66SXin LI 		}
3638*f5f40dd6SCy Schubert #line 3639 "ntp_parser.c"
36392b15cb3dSCy Schubert     break;
36402b15cb3dSCy Schubert 
3641*f5f40dd6SCy Schubert   case 297: /* reset_command: T_Reset counter_set_list  */
3642*f5f40dd6SCy Schubert #line 1594 "../../ntpd/ntp_parser.y"
3643f391d6bcSXin LI                         { CONCAT_G_FIFOS(cfgt.reset_counters, (yyvsp[0].Int_fifo)); }
3644*f5f40dd6SCy Schubert #line 3645 "ntp_parser.c"
3645f391d6bcSXin LI     break;
3646f391d6bcSXin LI 
3647*f5f40dd6SCy Schubert   case 298: /* counter_set_list: counter_set_list counter_set_keyword  */
3648*f5f40dd6SCy Schubert #line 1599 "../../ntpd/ntp_parser.y"
36492b15cb3dSCy Schubert                 {
3650e27abb66SXin LI 			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
3651e27abb66SXin LI 			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
36522b15cb3dSCy Schubert 		}
3653*f5f40dd6SCy Schubert #line 3654 "ntp_parser.c"
36542b15cb3dSCy Schubert     break;
36552b15cb3dSCy Schubert 
3656*f5f40dd6SCy Schubert   case 299: /* counter_set_list: counter_set_keyword  */
3657*f5f40dd6SCy Schubert #line 1604 "../../ntpd/ntp_parser.y"
3658276da39aSCy Schubert                 {
3659e27abb66SXin LI 			(yyval.Int_fifo) = NULL;
3660e27abb66SXin LI 			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
3661276da39aSCy Schubert 		}
3662*f5f40dd6SCy Schubert #line 3663 "ntp_parser.c"
366368ba7e87SXin LI     break;
366468ba7e87SXin LI 
3665*f5f40dd6SCy Schubert   case 307: /* integer_list: integer_list T_Integer  */
3666*f5f40dd6SCy Schubert #line 1628 "../../ntpd/ntp_parser.y"
3667f391d6bcSXin LI                 {
3668f391d6bcSXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3669f391d6bcSXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer)));
3670f391d6bcSXin LI 		}
3671*f5f40dd6SCy Schubert #line 3672 "ntp_parser.c"
36722b15cb3dSCy Schubert     break;
36732b15cb3dSCy Schubert 
3674*f5f40dd6SCy Schubert   case 308: /* integer_list: T_Integer  */
3675*f5f40dd6SCy Schubert #line 1633 "../../ntpd/ntp_parser.y"
367609100258SXin LI                 {
367709100258SXin LI 			(yyval.Attr_val_fifo) = NULL;
367809100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer)));
367909100258SXin LI 		}
3680*f5f40dd6SCy Schubert #line 3681 "ntp_parser.c"
3681f391d6bcSXin LI     break;
3682f391d6bcSXin LI 
3683*f5f40dd6SCy Schubert   case 309: /* integer_list_range: integer_list_range integer_list_range_elt  */
3684*f5f40dd6SCy Schubert #line 1641 "../../ntpd/ntp_parser.y"
368509100258SXin LI                 {
368609100258SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
368709100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
368809100258SXin LI 		}
3689*f5f40dd6SCy Schubert #line 3690 "ntp_parser.c"
369009100258SXin LI     break;
369109100258SXin LI 
3692*f5f40dd6SCy Schubert   case 310: /* integer_list_range: integer_list_range_elt  */
3693*f5f40dd6SCy Schubert #line 1646 "../../ntpd/ntp_parser.y"
369409100258SXin LI                 {
369509100258SXin LI 			(yyval.Attr_val_fifo) = NULL;
369609100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
369709100258SXin LI 		}
3698*f5f40dd6SCy Schubert #line 3699 "ntp_parser.c"
369909100258SXin LI     break;
370009100258SXin LI 
3701*f5f40dd6SCy Schubert   case 311: /* integer_list_range_elt: T_Integer  */
3702*f5f40dd6SCy Schubert #line 1654 "../../ntpd/ntp_parser.y"
370309100258SXin LI                         { (yyval.Attr_val) = create_attr_ival('i', (yyvsp[0].Integer)); }
3704*f5f40dd6SCy Schubert #line 3705 "ntp_parser.c"
370509100258SXin LI     break;
370609100258SXin LI 
3707*f5f40dd6SCy Schubert   case 313: /* integer_range: '(' T_Integer T_Ellipsis T_Integer ')'  */
3708*f5f40dd6SCy Schubert #line 1660 "../../ntpd/ntp_parser.y"
37092d4e511cSCy Schubert                         { (yyval.Attr_val) = create_attr_rval('-', (yyvsp[-3].Integer), (yyvsp[-1].Integer)); }
3710*f5f40dd6SCy Schubert #line 3711 "ntp_parser.c"
371109100258SXin LI     break;
371209100258SXin LI 
3713*f5f40dd6SCy Schubert   case 314: /* string_list: string_list T_String  */
3714*f5f40dd6SCy Schubert #line 1665 "../../ntpd/ntp_parser.y"
3715276da39aSCy Schubert                 {
3716e27abb66SXin LI 			(yyval.String_fifo) = (yyvsp[-1].String_fifo);
3717e27abb66SXin LI 			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String)));
3718276da39aSCy Schubert 		}
3719*f5f40dd6SCy Schubert #line 3720 "ntp_parser.c"
3720276da39aSCy Schubert     break;
3721276da39aSCy Schubert 
3722*f5f40dd6SCy Schubert   case 315: /* string_list: T_String  */
3723*f5f40dd6SCy Schubert #line 1670 "../../ntpd/ntp_parser.y"
372468ba7e87SXin LI                 {
3725e27abb66SXin LI 			(yyval.String_fifo) = NULL;
3726e27abb66SXin LI 			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String)));
372768ba7e87SXin LI 		}
3728*f5f40dd6SCy Schubert #line 3729 "ntp_parser.c"
3729a25439b6SCy Schubert     break;
3730a25439b6SCy Schubert 
3731*f5f40dd6SCy Schubert   case 316: /* address_list: address_list address  */
3732*f5f40dd6SCy Schubert #line 1678 "../../ntpd/ntp_parser.y"
373368ba7e87SXin LI                 {
3734e27abb66SXin LI 			(yyval.Address_fifo) = (yyvsp[-1].Address_fifo);
3735e27abb66SXin LI 			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node));
373668ba7e87SXin LI 		}
3737*f5f40dd6SCy Schubert #line 3738 "ntp_parser.c"
3738276da39aSCy Schubert     break;
3739276da39aSCy Schubert 
3740*f5f40dd6SCy Schubert   case 317: /* address_list: address  */
3741*f5f40dd6SCy Schubert #line 1683 "../../ntpd/ntp_parser.y"
374268ba7e87SXin LI                 {
3743e27abb66SXin LI 			(yyval.Address_fifo) = NULL;
3744e27abb66SXin LI 			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node));
374568ba7e87SXin LI 		}
3746*f5f40dd6SCy Schubert #line 3747 "ntp_parser.c"
374768ba7e87SXin LI     break;
374868ba7e87SXin LI 
3749*f5f40dd6SCy Schubert   case 318: /* boolean: T_Integer  */
3750*f5f40dd6SCy Schubert #line 1691 "../../ntpd/ntp_parser.y"
3751e27abb66SXin LI                 {
3752e27abb66SXin LI 			if ((yyvsp[0].Integer) != 0 && (yyvsp[0].Integer) != 1) {
3753e27abb66SXin LI 				yyerror("Integer value is not boolean (0 or 1). Assuming 1");
3754e27abb66SXin LI 				(yyval.Integer) = 1;
3755e27abb66SXin LI 			} else {
3756e27abb66SXin LI 				(yyval.Integer) = (yyvsp[0].Integer);
3757e27abb66SXin LI 			}
3758e27abb66SXin LI 		}
3759*f5f40dd6SCy Schubert #line 3760 "ntp_parser.c"
376068ba7e87SXin LI     break;
376168ba7e87SXin LI 
3762*f5f40dd6SCy Schubert   case 319: /* boolean: T_True  */
3763*f5f40dd6SCy Schubert #line 1699 "../../ntpd/ntp_parser.y"
3764f391d6bcSXin LI                         { (yyval.Integer) = 1; }
3765*f5f40dd6SCy Schubert #line 3766 "ntp_parser.c"
376668ba7e87SXin LI     break;
376768ba7e87SXin LI 
3768*f5f40dd6SCy Schubert   case 320: /* boolean: T_False  */
3769*f5f40dd6SCy Schubert #line 1700 "../../ntpd/ntp_parser.y"
3770f391d6bcSXin LI                         { (yyval.Integer) = 0; }
3771*f5f40dd6SCy Schubert #line 3772 "ntp_parser.c"
3772e27abb66SXin LI     break;
3773e27abb66SXin LI 
3774*f5f40dd6SCy Schubert   case 321: /* number: T_Integer  */
3775*f5f40dd6SCy Schubert #line 1704 "../../ntpd/ntp_parser.y"
3776f391d6bcSXin LI                                 { (yyval.Double) = (double)(yyvsp[0].Integer); }
3777*f5f40dd6SCy Schubert #line 3778 "ntp_parser.c"
3778f391d6bcSXin LI     break;
3779f391d6bcSXin LI 
3780*f5f40dd6SCy Schubert   case 323: /* basedate: T_Basedate T_String  */
3781*f5f40dd6SCy Schubert #line 1710 "../../ntpd/ntp_parser.y"
378209100258SXin LI                         { (yyval.Integer) = basedate_eval_string((yyvsp[0].String)); YYFREE((yyvsp[0].String)); }
3783*f5f40dd6SCy Schubert #line 3784 "ntp_parser.c"
378409100258SXin LI     break;
378509100258SXin LI 
3786*f5f40dd6SCy Schubert   case 324: /* simulate_command: sim_conf_start '{' sim_init_statement_list sim_server_list '}'  */
3787*f5f40dd6SCy Schubert #line 1718 "../../ntpd/ntp_parser.y"
37882b15cb3dSCy Schubert                 {
37892b15cb3dSCy Schubert 			sim_node *sn;
37902b15cb3dSCy Schubert 
3791e27abb66SXin LI 			sn =  create_sim_node((yyvsp[-2].Attr_val_fifo), (yyvsp[-1].Sim_server_fifo));
37922b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.sim_details, sn);
37932b15cb3dSCy Schubert 
37942b15cb3dSCy Schubert 			/* Revert from ; to \n for end-of-command */
37952b15cb3dSCy Schubert 			old_config_style = 1;
37962b15cb3dSCy Schubert 		}
3797*f5f40dd6SCy Schubert #line 3798 "ntp_parser.c"
3798276da39aSCy Schubert     break;
3799276da39aSCy Schubert 
3800*f5f40dd6SCy Schubert   case 325: /* sim_conf_start: T_Simulate  */
3801*f5f40dd6SCy Schubert #line 1735 "../../ntpd/ntp_parser.y"
380209100258SXin LI                            { old_config_style = 0; }
3803*f5f40dd6SCy Schubert #line 3804 "ntp_parser.c"
3804f391d6bcSXin LI     break;
3805f391d6bcSXin LI 
3806*f5f40dd6SCy Schubert   case 326: /* sim_init_statement_list: sim_init_statement_list sim_init_statement T_EOC  */
3807*f5f40dd6SCy Schubert #line 1740 "../../ntpd/ntp_parser.y"
3808276da39aSCy Schubert                 {
380909100258SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo);
381009100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
3811276da39aSCy Schubert 		}
3812*f5f40dd6SCy Schubert #line 3813 "ntp_parser.c"
3813276da39aSCy Schubert     break;
3814276da39aSCy Schubert 
3815*f5f40dd6SCy Schubert   case 327: /* sim_init_statement_list: sim_init_statement T_EOC  */
3816*f5f40dd6SCy Schubert #line 1745 "../../ntpd/ntp_parser.y"
3817e27abb66SXin LI                 {
3818e27abb66SXin LI 			(yyval.Attr_val_fifo) = NULL;
3819e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
3820e27abb66SXin LI 		}
3821*f5f40dd6SCy Schubert #line 3822 "ntp_parser.c"
382209100258SXin LI     break;
382309100258SXin LI 
3824*f5f40dd6SCy Schubert   case 328: /* sim_init_statement: sim_init_keyword '=' number  */
3825*f5f40dd6SCy Schubert #line 1753 "../../ntpd/ntp_parser.y"
382609100258SXin LI                         { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); }
3827*f5f40dd6SCy Schubert #line 3828 "ntp_parser.c"
382809100258SXin LI     break;
382909100258SXin LI 
3830*f5f40dd6SCy Schubert   case 331: /* sim_server_list: sim_server_list sim_server  */
3831*f5f40dd6SCy Schubert #line 1763 "../../ntpd/ntp_parser.y"
383209100258SXin LI                 {
383309100258SXin LI 			(yyval.Sim_server_fifo) = (yyvsp[-1].Sim_server_fifo);
383409100258SXin LI 			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server));
383509100258SXin LI 		}
3836*f5f40dd6SCy Schubert #line 3837 "ntp_parser.c"
383709100258SXin LI     break;
383809100258SXin LI 
3839*f5f40dd6SCy Schubert   case 332: /* sim_server_list: sim_server  */
3840*f5f40dd6SCy Schubert #line 1768 "../../ntpd/ntp_parser.y"
384109100258SXin LI                 {
384209100258SXin LI 			(yyval.Sim_server_fifo) = NULL;
384309100258SXin LI 			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server));
384409100258SXin LI 		}
3845*f5f40dd6SCy Schubert #line 3846 "ntp_parser.c"
3846e27abb66SXin LI     break;
3847e27abb66SXin LI 
3848*f5f40dd6SCy Schubert   case 333: /* sim_server: sim_server_name '{' sim_server_offset sim_act_list '}'  */
3849*f5f40dd6SCy Schubert #line 1776 "../../ntpd/ntp_parser.y"
385009100258SXin LI                         { (yyval.Sim_server) = ONLY_SIM(create_sim_server((yyvsp[-4].Address_node), (yyvsp[-2].Double), (yyvsp[-1].Sim_script_fifo))); }
3851*f5f40dd6SCy Schubert #line 3852 "ntp_parser.c"
3852a25439b6SCy Schubert     break;
38532b15cb3dSCy Schubert 
3854*f5f40dd6SCy Schubert   case 334: /* sim_server_offset: T_Server_Offset '=' number T_EOC  */
3855*f5f40dd6SCy Schubert #line 1781 "../../ntpd/ntp_parser.y"
385609100258SXin LI                         { (yyval.Double) = (yyvsp[-1].Double); }
3857*f5f40dd6SCy Schubert #line 3858 "ntp_parser.c"
385809100258SXin LI     break;
3859a25439b6SCy Schubert 
3860*f5f40dd6SCy Schubert   case 335: /* sim_server_name: T_Server '=' address  */
3861*f5f40dd6SCy Schubert #line 1786 "../../ntpd/ntp_parser.y"
386209100258SXin LI                         { (yyval.Address_node) = (yyvsp[0].Address_node); }
3863*f5f40dd6SCy Schubert #line 3864 "ntp_parser.c"
386409100258SXin LI     break;
386509100258SXin LI 
3866*f5f40dd6SCy Schubert   case 336: /* sim_act_list: sim_act_list sim_act  */
3867*f5f40dd6SCy Schubert #line 1791 "../../ntpd/ntp_parser.y"
386809100258SXin LI                 {
386909100258SXin LI 			(yyval.Sim_script_fifo) = (yyvsp[-1].Sim_script_fifo);
387009100258SXin LI 			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script));
387109100258SXin LI 		}
3872*f5f40dd6SCy Schubert #line 3873 "ntp_parser.c"
387309100258SXin LI     break;
387409100258SXin LI 
3875*f5f40dd6SCy Schubert   case 337: /* sim_act_list: sim_act  */
3876*f5f40dd6SCy Schubert #line 1796 "../../ntpd/ntp_parser.y"
387709100258SXin LI                 {
387809100258SXin LI 			(yyval.Sim_script_fifo) = NULL;
387909100258SXin LI 			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script));
388009100258SXin LI 		}
3881*f5f40dd6SCy Schubert #line 3882 "ntp_parser.c"
388209100258SXin LI     break;
388309100258SXin LI 
3884*f5f40dd6SCy Schubert   case 338: /* sim_act: T_Duration '=' number '{' sim_act_stmt_list '}'  */
3885*f5f40dd6SCy Schubert #line 1804 "../../ntpd/ntp_parser.y"
388609100258SXin LI                         { (yyval.Sim_script) = ONLY_SIM(create_sim_script_info((yyvsp[-3].Double), (yyvsp[-1].Attr_val_fifo))); }
3887*f5f40dd6SCy Schubert #line 3888 "ntp_parser.c"
388809100258SXin LI     break;
388909100258SXin LI 
3890*f5f40dd6SCy Schubert   case 339: /* sim_act_stmt_list: sim_act_stmt_list sim_act_stmt T_EOC  */
3891*f5f40dd6SCy Schubert #line 1809 "../../ntpd/ntp_parser.y"
389209100258SXin LI                 {
389309100258SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo);
389409100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
389509100258SXin LI 		}
3896*f5f40dd6SCy Schubert #line 3897 "ntp_parser.c"
389709100258SXin LI     break;
389809100258SXin LI 
3899*f5f40dd6SCy Schubert   case 340: /* sim_act_stmt_list: sim_act_stmt T_EOC  */
3900*f5f40dd6SCy Schubert #line 1814 "../../ntpd/ntp_parser.y"
390109100258SXin LI                 {
390209100258SXin LI 			(yyval.Attr_val_fifo) = NULL;
390309100258SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
390409100258SXin LI 		}
3905*f5f40dd6SCy Schubert #line 3906 "ntp_parser.c"
390609100258SXin LI     break;
390709100258SXin LI 
3908*f5f40dd6SCy Schubert   case 341: /* sim_act_stmt: sim_act_keyword '=' number  */
3909*f5f40dd6SCy Schubert #line 1822 "../../ntpd/ntp_parser.y"
391009100258SXin LI                         { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); }
3911*f5f40dd6SCy Schubert #line 3912 "ntp_parser.c"
391209100258SXin LI     break;
391309100258SXin LI 
391409100258SXin LI 
3915*f5f40dd6SCy Schubert #line 3916 "ntp_parser.c"
3916a466cc55SCy Schubert 
39172b15cb3dSCy Schubert       default: break;
39182b15cb3dSCy Schubert     }
39192b15cb3dSCy Schubert   /* User semantic actions sometimes alter yychar, and that requires
39202b15cb3dSCy Schubert      that yytoken be updated with the new translation.  We take the
39212b15cb3dSCy Schubert      approach of translating immediately before every use of yytoken.
39222b15cb3dSCy Schubert      One alternative is translating here after every semantic action,
39232b15cb3dSCy Schubert      but that translation would be missed if the semantic action invokes
39242b15cb3dSCy Schubert      YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
39252b15cb3dSCy Schubert      if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
39262b15cb3dSCy Schubert      incorrect destructor might then be invoked immediately.  In the
39272b15cb3dSCy Schubert      case of YYERROR or YYBACKUP, subsequent parser actions might lead
39282b15cb3dSCy Schubert      to an incorrect destructor call or verbose syntax error message
39292b15cb3dSCy Schubert      before the lookahead is translated.  */
3930a466cc55SCy Schubert   YY_SYMBOL_PRINT ("-> $$ =", YY_CAST (yysymbol_kind_t, yyr1[yyn]), &yyval, &yyloc);
39312b15cb3dSCy Schubert 
39322b15cb3dSCy Schubert   YYPOPSTACK (yylen);
39332b15cb3dSCy Schubert   yylen = 0;
39342b15cb3dSCy Schubert 
39352b15cb3dSCy Schubert   *++yyvsp = yyval;
39362b15cb3dSCy Schubert 
3937e27abb66SXin LI   /* Now 'shift' the result of the reduction.  Determine what state
39382b15cb3dSCy Schubert      that goes to, based on the state we popped back to and the rule
39392b15cb3dSCy Schubert      number reduced by.  */
3940a466cc55SCy Schubert   {
3941a466cc55SCy Schubert     const int yylhs = yyr1[yyn] - YYNTOKENS;
3942a466cc55SCy Schubert     const int yyi = yypgoto[yylhs] + *yyssp;
3943a466cc55SCy Schubert     yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
3944a466cc55SCy Schubert                ? yytable[yyi]
3945a466cc55SCy Schubert                : yydefgoto[yylhs]);
3946a466cc55SCy Schubert   }
39472b15cb3dSCy Schubert 
39482b15cb3dSCy Schubert   goto yynewstate;
39492b15cb3dSCy Schubert 
39502b15cb3dSCy Schubert 
3951e27abb66SXin LI /*--------------------------------------.
3952e27abb66SXin LI | yyerrlab -- here on detecting error.  |
3953e27abb66SXin LI `--------------------------------------*/
39542b15cb3dSCy Schubert yyerrlab:
39552b15cb3dSCy Schubert   /* Make sure we have latest lookahead translation.  See comments at
39562b15cb3dSCy Schubert      user semantic actions for why this is necessary.  */
3957a466cc55SCy Schubert   yytoken = yychar == YYEMPTY ? YYSYMBOL_YYEMPTY : YYTRANSLATE (yychar);
39582b15cb3dSCy Schubert   /* If not already recovering from an error, report this error.  */
39592b15cb3dSCy Schubert   if (!yyerrstatus)
39602b15cb3dSCy Schubert     {
39612b15cb3dSCy Schubert       ++yynerrs;
3962276da39aSCy Schubert       yyerror (YY_("syntax error"));
39632b15cb3dSCy Schubert     }
39642b15cb3dSCy Schubert 
39652b15cb3dSCy Schubert   if (yyerrstatus == 3)
39662b15cb3dSCy Schubert     {
39672b15cb3dSCy Schubert       /* If just tried and failed to reuse lookahead token after an
39682b15cb3dSCy Schubert          error, discard it.  */
39692b15cb3dSCy Schubert 
39702b15cb3dSCy Schubert       if (yychar <= YYEOF)
39712b15cb3dSCy Schubert         {
39722b15cb3dSCy Schubert           /* Return failure if at end of input.  */
39732b15cb3dSCy Schubert           if (yychar == YYEOF)
39742b15cb3dSCy Schubert             YYABORT;
39752b15cb3dSCy Schubert         }
39762b15cb3dSCy Schubert       else
39772b15cb3dSCy Schubert         {
39782b15cb3dSCy Schubert           yydestruct ("Error: discarding",
3979276da39aSCy Schubert                       yytoken, &yylval);
39802b15cb3dSCy Schubert           yychar = YYEMPTY;
39812b15cb3dSCy Schubert         }
39822b15cb3dSCy Schubert     }
39832b15cb3dSCy Schubert 
39842b15cb3dSCy Schubert   /* Else will try to reuse lookahead token after shifting the error
39852b15cb3dSCy Schubert      token.  */
39862b15cb3dSCy Schubert   goto yyerrlab1;
39872b15cb3dSCy Schubert 
39882b15cb3dSCy Schubert 
39892b15cb3dSCy Schubert /*---------------------------------------------------.
39902b15cb3dSCy Schubert | yyerrorlab -- error raised explicitly by YYERROR.  |
39912b15cb3dSCy Schubert `---------------------------------------------------*/
39922b15cb3dSCy Schubert yyerrorlab:
3993a466cc55SCy Schubert   /* Pacify compilers when the user code never invokes YYERROR and the
3994a466cc55SCy Schubert      label yyerrorlab therefore never appears in user code.  */
3995a466cc55SCy Schubert   if (0)
3996a466cc55SCy Schubert     YYERROR;
3997*f5f40dd6SCy Schubert   ++yynerrs;
39982b15cb3dSCy Schubert 
3999e27abb66SXin LI   /* Do not reclaim the symbols of the rule whose action triggered
40002b15cb3dSCy Schubert      this YYERROR.  */
40012b15cb3dSCy Schubert   YYPOPSTACK (yylen);
40022b15cb3dSCy Schubert   yylen = 0;
40032b15cb3dSCy Schubert   YY_STACK_PRINT (yyss, yyssp);
40042b15cb3dSCy Schubert   yystate = *yyssp;
40052b15cb3dSCy Schubert   goto yyerrlab1;
40062b15cb3dSCy Schubert 
40072b15cb3dSCy Schubert 
40082b15cb3dSCy Schubert /*-------------------------------------------------------------.
40092b15cb3dSCy Schubert | yyerrlab1 -- common code for both syntax error and YYERROR.  |
40102b15cb3dSCy Schubert `-------------------------------------------------------------*/
40112b15cb3dSCy Schubert yyerrlab1:
40122b15cb3dSCy Schubert   yyerrstatus = 3;      /* Each real token shifted decrements this.  */
40132b15cb3dSCy Schubert 
4014a466cc55SCy Schubert   /* Pop stack until we find a state that shifts the error token.  */
40152b15cb3dSCy Schubert   for (;;)
40162b15cb3dSCy Schubert     {
40172b15cb3dSCy Schubert       yyn = yypact[yystate];
40182b15cb3dSCy Schubert       if (!yypact_value_is_default (yyn))
40192b15cb3dSCy Schubert         {
4020a466cc55SCy Schubert           yyn += YYSYMBOL_YYerror;
4021a466cc55SCy Schubert           if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYSYMBOL_YYerror)
40222b15cb3dSCy Schubert             {
40232b15cb3dSCy Schubert               yyn = yytable[yyn];
40242b15cb3dSCy Schubert               if (0 < yyn)
40252b15cb3dSCy Schubert                 break;
40262b15cb3dSCy Schubert             }
40272b15cb3dSCy Schubert         }
40282b15cb3dSCy Schubert 
40292b15cb3dSCy Schubert       /* Pop the current state because it cannot handle the error token.  */
40302b15cb3dSCy Schubert       if (yyssp == yyss)
40312b15cb3dSCy Schubert         YYABORT;
40322b15cb3dSCy Schubert 
40332b15cb3dSCy Schubert 
40342b15cb3dSCy Schubert       yydestruct ("Error: popping",
4035a466cc55SCy Schubert                   YY_ACCESSING_SYMBOL (yystate), yyvsp);
40362b15cb3dSCy Schubert       YYPOPSTACK (1);
40372b15cb3dSCy Schubert       yystate = *yyssp;
40382b15cb3dSCy Schubert       YY_STACK_PRINT (yyss, yyssp);
40392b15cb3dSCy Schubert     }
40402b15cb3dSCy Schubert 
40412b15cb3dSCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
40422b15cb3dSCy Schubert   *++yyvsp = yylval;
40432b15cb3dSCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_END
40442b15cb3dSCy Schubert 
40452b15cb3dSCy Schubert 
40462b15cb3dSCy Schubert   /* Shift the error token.  */
4047a466cc55SCy Schubert   YY_SYMBOL_PRINT ("Shifting", YY_ACCESSING_SYMBOL (yyn), yyvsp, yylsp);
40482b15cb3dSCy Schubert 
40492b15cb3dSCy Schubert   yystate = yyn;
40502b15cb3dSCy Schubert   goto yynewstate;
40512b15cb3dSCy Schubert 
40522b15cb3dSCy Schubert 
40532b15cb3dSCy Schubert /*-------------------------------------.
40542b15cb3dSCy Schubert | yyacceptlab -- YYACCEPT comes here.  |
40552b15cb3dSCy Schubert `-------------------------------------*/
40562b15cb3dSCy Schubert yyacceptlab:
40572b15cb3dSCy Schubert   yyresult = 0;
4058*f5f40dd6SCy Schubert   goto yyreturnlab;
40592b15cb3dSCy Schubert 
4060a466cc55SCy Schubert 
40612b15cb3dSCy Schubert /*-----------------------------------.
40622b15cb3dSCy Schubert | yyabortlab -- YYABORT comes here.  |
40632b15cb3dSCy Schubert `-----------------------------------*/
40642b15cb3dSCy Schubert yyabortlab:
40652b15cb3dSCy Schubert   yyresult = 1;
4066*f5f40dd6SCy Schubert   goto yyreturnlab;
40672b15cb3dSCy Schubert 
4068a466cc55SCy Schubert 
4069*f5f40dd6SCy Schubert /*-----------------------------------------------------------.
4070*f5f40dd6SCy Schubert | yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here.  |
4071*f5f40dd6SCy Schubert `-----------------------------------------------------------*/
40722b15cb3dSCy Schubert yyexhaustedlab:
4073276da39aSCy Schubert   yyerror (YY_("memory exhausted"));
40742b15cb3dSCy Schubert   yyresult = 2;
4075*f5f40dd6SCy Schubert   goto yyreturnlab;
40762b15cb3dSCy Schubert 
4077a466cc55SCy Schubert 
4078*f5f40dd6SCy Schubert /*----------------------------------------------------------.
4079*f5f40dd6SCy Schubert | yyreturnlab -- parsing is finished, clean up and return.  |
4080*f5f40dd6SCy Schubert `----------------------------------------------------------*/
4081*f5f40dd6SCy Schubert yyreturnlab:
40822b15cb3dSCy Schubert   if (yychar != YYEMPTY)
40832b15cb3dSCy Schubert     {
40842b15cb3dSCy Schubert       /* Make sure we have latest lookahead translation.  See comments at
40852b15cb3dSCy Schubert          user semantic actions for why this is necessary.  */
40862b15cb3dSCy Schubert       yytoken = YYTRANSLATE (yychar);
40872b15cb3dSCy Schubert       yydestruct ("Cleanup: discarding lookahead",
4088276da39aSCy Schubert                   yytoken, &yylval);
40892b15cb3dSCy Schubert     }
4090e27abb66SXin LI   /* Do not reclaim the symbols of the rule whose action triggered
40912b15cb3dSCy Schubert      this YYABORT or YYACCEPT.  */
40922b15cb3dSCy Schubert   YYPOPSTACK (yylen);
40932b15cb3dSCy Schubert   YY_STACK_PRINT (yyss, yyssp);
40942b15cb3dSCy Schubert   while (yyssp != yyss)
40952b15cb3dSCy Schubert     {
40962b15cb3dSCy Schubert       yydestruct ("Cleanup: popping",
4097a466cc55SCy Schubert                   YY_ACCESSING_SYMBOL (+*yyssp), yyvsp);
40982b15cb3dSCy Schubert       YYPOPSTACK (1);
40992b15cb3dSCy Schubert     }
41002b15cb3dSCy Schubert #ifndef yyoverflow
41012b15cb3dSCy Schubert   if (yyss != yyssa)
41022b15cb3dSCy Schubert     YYSTACK_FREE (yyss);
41032b15cb3dSCy Schubert #endif
4104a466cc55SCy Schubert 
4105e27abb66SXin LI   return yyresult;
41062b15cb3dSCy Schubert }
4107a466cc55SCy Schubert 
4108*f5f40dd6SCy Schubert #line 1833 "../../ntpd/ntp_parser.y"
41092b15cb3dSCy Schubert 
41102b15cb3dSCy Schubert 
41112b15cb3dSCy Schubert void
41122b15cb3dSCy Schubert yyerror(
41132b15cb3dSCy Schubert 	const char *msg
41142b15cb3dSCy Schubert 	)
41152b15cb3dSCy Schubert {
41162b15cb3dSCy Schubert 	int retval;
4117276da39aSCy Schubert 	struct FILE_INFO * ip_ctx;
41182b15cb3dSCy Schubert 
4119276da39aSCy Schubert 	ip_ctx = lex_current();
4120276da39aSCy Schubert 	ip_ctx->errpos = ip_ctx->tokpos;
41212b15cb3dSCy Schubert 
4122276da39aSCy Schubert 	msyslog(LOG_ERR, "line %d column %d %s",
4123276da39aSCy Schubert 		ip_ctx->errpos.nline, ip_ctx->errpos.ncol, msg);
4124276da39aSCy Schubert 	if (!lex_from_file()) {
41252b15cb3dSCy Schubert 		/* Save the error message in the correct buffer */
41262b15cb3dSCy Schubert 		retval = snprintf(remote_config.err_msg + remote_config.err_pos,
4127a466cc55SCy Schubert 				  sizeof remote_config.err_msg - remote_config.err_pos,
41282b15cb3dSCy Schubert 				  "column %d %s",
4129276da39aSCy Schubert 				  ip_ctx->errpos.ncol, msg);
41302b15cb3dSCy Schubert 
41312b15cb3dSCy Schubert 		/* Increment the value of err_pos */
41322b15cb3dSCy Schubert 		if (retval > 0)
41332b15cb3dSCy Schubert 			remote_config.err_pos += retval;
41342b15cb3dSCy Schubert 
41352b15cb3dSCy Schubert 		/* Increment the number of errors */
41362b15cb3dSCy Schubert 		++remote_config.no_errors;
41372b15cb3dSCy Schubert 	}
41382b15cb3dSCy Schubert }
41392b15cb3dSCy Schubert 
41402b15cb3dSCy Schubert 
41412b15cb3dSCy Schubert /*
41422b15cb3dSCy Schubert  * token_name - convert T_ token integers to text
41432b15cb3dSCy Schubert  *		example: token_name(T_Server) returns "T_Server"
41442b15cb3dSCy Schubert  */
41452b15cb3dSCy Schubert const char *
41462b15cb3dSCy Schubert token_name(
41472b15cb3dSCy Schubert 	int token
41482b15cb3dSCy Schubert 	)
41492b15cb3dSCy Schubert {
41502b15cb3dSCy Schubert 	return yytname[YYTRANSLATE(token)];
41512b15cb3dSCy Schubert }
41522b15cb3dSCy Schubert 
41532b15cb3dSCy Schubert 
41542b15cb3dSCy Schubert /* Initial Testing function -- ignore */
41552b15cb3dSCy Schubert #if 0
41562b15cb3dSCy Schubert int main(int argc, char *argv[])
41572b15cb3dSCy Schubert {
41582b15cb3dSCy Schubert 	ip_file = FOPEN(argv[1], "r");
41592b15cb3dSCy Schubert 	if (!ip_file)
41602b15cb3dSCy Schubert 		fprintf(stderr, "ERROR!! Could not open file: %s\n", argv[1]);
41612b15cb3dSCy Schubert 	yyparse();
41622b15cb3dSCy Schubert 	return 0;
41632b15cb3dSCy Schubert }
41642b15cb3dSCy Schubert #endif
41652b15cb3dSCy Schubert 
4166