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