1*2b15cb3dSCy Schubert /* A Bison parser, made by GNU Bison 3.0.2. */ 2*2b15cb3dSCy Schubert 3*2b15cb3dSCy Schubert /* Bison implementation for Yacc-like parsers in C 4*2b15cb3dSCy Schubert 5*2b15cb3dSCy Schubert Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc. 6*2b15cb3dSCy Schubert 7*2b15cb3dSCy Schubert This program is free software: you can redistribute it and/or modify 8*2b15cb3dSCy Schubert it under the terms of the GNU General Public License as published by 9*2b15cb3dSCy Schubert the Free Software Foundation, either version 3 of the License, or 10*2b15cb3dSCy Schubert (at your option) any later version. 11*2b15cb3dSCy Schubert 12*2b15cb3dSCy Schubert This program is distributed in the hope that it will be useful, 13*2b15cb3dSCy Schubert but WITHOUT ANY WARRANTY; without even the implied warranty of 14*2b15cb3dSCy Schubert MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15*2b15cb3dSCy Schubert GNU General Public License for more details. 16*2b15cb3dSCy Schubert 17*2b15cb3dSCy Schubert You should have received a copy of the GNU General Public License 18*2b15cb3dSCy Schubert along with this program. If not, see <http://www.gnu.org/licenses/>. */ 19*2b15cb3dSCy Schubert 20*2b15cb3dSCy Schubert /* As a special exception, you may create a larger work that contains 21*2b15cb3dSCy Schubert part or all of the Bison parser skeleton and distribute that work 22*2b15cb3dSCy Schubert under terms of your choice, so long as that work isn't itself a 23*2b15cb3dSCy Schubert parser generator using the skeleton or a modified version thereof 24*2b15cb3dSCy Schubert as a parser skeleton. Alternatively, if you modify or redistribute 25*2b15cb3dSCy Schubert the parser skeleton itself, you may (at your option) remove this 26*2b15cb3dSCy Schubert special exception, which will cause the skeleton and the resulting 27*2b15cb3dSCy Schubert Bison output files to be licensed under the GNU General Public 28*2b15cb3dSCy Schubert License without this special exception. 29*2b15cb3dSCy Schubert 30*2b15cb3dSCy Schubert This special exception was added by the Free Software Foundation in 31*2b15cb3dSCy Schubert version 2.2 of Bison. */ 32*2b15cb3dSCy Schubert 33*2b15cb3dSCy Schubert /* C LALR(1) parser skeleton written by Richard Stallman, by 34*2b15cb3dSCy Schubert simplifying the original so-called "semantic" parser. */ 35*2b15cb3dSCy Schubert 36*2b15cb3dSCy Schubert /* All symbols defined below should begin with yy or YY, to avoid 37*2b15cb3dSCy Schubert infringing on user name space. This should be done even for local 38*2b15cb3dSCy Schubert variables, as they might otherwise be expanded by user macros. 39*2b15cb3dSCy Schubert There are some unavoidable exceptions within include files to 40*2b15cb3dSCy Schubert define necessary library symbols; they are noted "INFRINGES ON 41*2b15cb3dSCy Schubert USER NAME SPACE" below. */ 42*2b15cb3dSCy Schubert 43*2b15cb3dSCy Schubert /* Identify Bison output. */ 44*2b15cb3dSCy Schubert #define YYBISON 1 45*2b15cb3dSCy Schubert 46*2b15cb3dSCy Schubert /* Bison version. */ 47*2b15cb3dSCy Schubert #define YYBISON_VERSION "3.0.2" 48*2b15cb3dSCy Schubert 49*2b15cb3dSCy Schubert /* Skeleton name. */ 50*2b15cb3dSCy Schubert #define YYSKELETON_NAME "yacc.c" 51*2b15cb3dSCy Schubert 52*2b15cb3dSCy Schubert /* Pure parsers. */ 53*2b15cb3dSCy Schubert #define YYPURE 0 54*2b15cb3dSCy Schubert 55*2b15cb3dSCy Schubert /* Push parsers. */ 56*2b15cb3dSCy Schubert #define YYPUSH 0 57*2b15cb3dSCy Schubert 58*2b15cb3dSCy Schubert /* Pull parsers. */ 59*2b15cb3dSCy Schubert #define YYPULL 1 60*2b15cb3dSCy Schubert 61*2b15cb3dSCy Schubert 62*2b15cb3dSCy Schubert 63*2b15cb3dSCy Schubert 64*2b15cb3dSCy Schubert /* Copy the first part of user declarations. */ 65*2b15cb3dSCy Schubert #line 14 "ntp_parser.y" /* yacc.c:339 */ 66*2b15cb3dSCy Schubert 67*2b15cb3dSCy Schubert #ifdef HAVE_CONFIG_H 68*2b15cb3dSCy Schubert # include <config.h> 69*2b15cb3dSCy Schubert #endif 70*2b15cb3dSCy Schubert 71*2b15cb3dSCy Schubert #include "ntp.h" 72*2b15cb3dSCy Schubert #include "ntpd.h" 73*2b15cb3dSCy Schubert #include "ntp_machine.h" 74*2b15cb3dSCy Schubert #include "ntp_stdlib.h" 75*2b15cb3dSCy Schubert #include "ntp_filegen.h" 76*2b15cb3dSCy Schubert #include "ntp_scanner.h" 77*2b15cb3dSCy Schubert #include "ntp_config.h" 78*2b15cb3dSCy Schubert #include "ntp_crypto.h" 79*2b15cb3dSCy Schubert 80*2b15cb3dSCy Schubert #include "ntpsim.h" /* HMS: Do we really want this all the time? */ 81*2b15cb3dSCy Schubert /* SK: It might be a good idea to always 82*2b15cb3dSCy Schubert include the simulator code. That way 83*2b15cb3dSCy Schubert someone can use the same configuration file 84*2b15cb3dSCy Schubert for both the simulator and the daemon 85*2b15cb3dSCy Schubert */ 86*2b15cb3dSCy Schubert 87*2b15cb3dSCy Schubert #define YYMALLOC emalloc 88*2b15cb3dSCy Schubert #define YYFREE free 89*2b15cb3dSCy Schubert #define YYERROR_VERBOSE 90*2b15cb3dSCy Schubert #define YYMAXDEPTH 1000 /* stop the madness sooner */ 91*2b15cb3dSCy Schubert void yyerror(struct FILE_INFO *ip_file, const char *msg); 92*2b15cb3dSCy Schubert 93*2b15cb3dSCy Schubert #ifdef SIM 94*2b15cb3dSCy Schubert # define ONLY_SIM(a) (a) 95*2b15cb3dSCy Schubert #else 96*2b15cb3dSCy Schubert # define ONLY_SIM(a) NULL 97*2b15cb3dSCy Schubert #endif 98*2b15cb3dSCy Schubert 99*2b15cb3dSCy Schubert #line 100 "ntp_parser.c" /* yacc.c:339 */ 100*2b15cb3dSCy Schubert 101*2b15cb3dSCy Schubert # ifndef YY_NULLPTR 102*2b15cb3dSCy Schubert # if defined __cplusplus && 201103L <= __cplusplus 103*2b15cb3dSCy Schubert # define YY_NULLPTR nullptr 104*2b15cb3dSCy Schubert # else 105*2b15cb3dSCy Schubert # define YY_NULLPTR 0 106*2b15cb3dSCy Schubert # endif 107*2b15cb3dSCy Schubert # endif 108*2b15cb3dSCy Schubert 109*2b15cb3dSCy Schubert /* Enabling verbose error messages. */ 110*2b15cb3dSCy Schubert #ifdef YYERROR_VERBOSE 111*2b15cb3dSCy Schubert # undef YYERROR_VERBOSE 112*2b15cb3dSCy Schubert # define YYERROR_VERBOSE 1 113*2b15cb3dSCy Schubert #else 114*2b15cb3dSCy Schubert # define YYERROR_VERBOSE 0 115*2b15cb3dSCy Schubert #endif 116*2b15cb3dSCy Schubert 117*2b15cb3dSCy Schubert /* In a future release of Bison, this section will be replaced 118*2b15cb3dSCy Schubert by #include "y.tab.h". */ 119*2b15cb3dSCy Schubert #ifndef YY_YY_Y_TAB_H_INCLUDED 120*2b15cb3dSCy Schubert # define YY_YY_Y_TAB_H_INCLUDED 121*2b15cb3dSCy Schubert /* Debug traces. */ 122*2b15cb3dSCy Schubert #ifndef YYDEBUG 123*2b15cb3dSCy Schubert # define YYDEBUG 1 124*2b15cb3dSCy Schubert #endif 125*2b15cb3dSCy Schubert #if YYDEBUG 126*2b15cb3dSCy Schubert extern int yydebug; 127*2b15cb3dSCy Schubert #endif 128*2b15cb3dSCy Schubert 129*2b15cb3dSCy Schubert /* Token type. */ 130*2b15cb3dSCy Schubert #ifndef YYTOKENTYPE 131*2b15cb3dSCy Schubert # define YYTOKENTYPE 132*2b15cb3dSCy Schubert enum yytokentype 133*2b15cb3dSCy Schubert { 134*2b15cb3dSCy Schubert T_Abbrev = 258, 135*2b15cb3dSCy Schubert T_Age = 259, 136*2b15cb3dSCy Schubert T_All = 260, 137*2b15cb3dSCy Schubert T_Allan = 261, 138*2b15cb3dSCy Schubert T_Allpeers = 262, 139*2b15cb3dSCy Schubert T_Auth = 263, 140*2b15cb3dSCy Schubert T_Autokey = 264, 141*2b15cb3dSCy Schubert T_Automax = 265, 142*2b15cb3dSCy Schubert T_Average = 266, 143*2b15cb3dSCy Schubert T_Bclient = 267, 144*2b15cb3dSCy Schubert T_Beacon = 268, 145*2b15cb3dSCy Schubert T_Broadcast = 269, 146*2b15cb3dSCy Schubert T_Broadcastclient = 270, 147*2b15cb3dSCy Schubert T_Broadcastdelay = 271, 148*2b15cb3dSCy Schubert T_Burst = 272, 149*2b15cb3dSCy Schubert T_Calibrate = 273, 150*2b15cb3dSCy Schubert T_Ceiling = 274, 151*2b15cb3dSCy Schubert T_Clockstats = 275, 152*2b15cb3dSCy Schubert T_Cohort = 276, 153*2b15cb3dSCy Schubert T_ControlKey = 277, 154*2b15cb3dSCy Schubert T_Crypto = 278, 155*2b15cb3dSCy Schubert T_Cryptostats = 279, 156*2b15cb3dSCy Schubert T_Ctl = 280, 157*2b15cb3dSCy Schubert T_Day = 281, 158*2b15cb3dSCy Schubert T_Default = 282, 159*2b15cb3dSCy Schubert T_Digest = 283, 160*2b15cb3dSCy Schubert T_Disable = 284, 161*2b15cb3dSCy Schubert T_Discard = 285, 162*2b15cb3dSCy Schubert T_Dispersion = 286, 163*2b15cb3dSCy Schubert T_Double = 287, 164*2b15cb3dSCy Schubert T_Driftfile = 288, 165*2b15cb3dSCy Schubert T_Drop = 289, 166*2b15cb3dSCy Schubert T_Ellipsis = 290, 167*2b15cb3dSCy Schubert T_Enable = 291, 168*2b15cb3dSCy Schubert T_End = 292, 169*2b15cb3dSCy Schubert T_False = 293, 170*2b15cb3dSCy Schubert T_File = 294, 171*2b15cb3dSCy Schubert T_Filegen = 295, 172*2b15cb3dSCy Schubert T_Filenum = 296, 173*2b15cb3dSCy Schubert T_Flag1 = 297, 174*2b15cb3dSCy Schubert T_Flag2 = 298, 175*2b15cb3dSCy Schubert T_Flag3 = 299, 176*2b15cb3dSCy Schubert T_Flag4 = 300, 177*2b15cb3dSCy Schubert T_Flake = 301, 178*2b15cb3dSCy Schubert T_Floor = 302, 179*2b15cb3dSCy Schubert T_Freq = 303, 180*2b15cb3dSCy Schubert T_Fudge = 304, 181*2b15cb3dSCy Schubert T_Host = 305, 182*2b15cb3dSCy Schubert T_Huffpuff = 306, 183*2b15cb3dSCy Schubert T_Iburst = 307, 184*2b15cb3dSCy Schubert T_Ident = 308, 185*2b15cb3dSCy Schubert T_Ignore = 309, 186*2b15cb3dSCy Schubert T_Incalloc = 310, 187*2b15cb3dSCy Schubert T_Incmem = 311, 188*2b15cb3dSCy Schubert T_Initalloc = 312, 189*2b15cb3dSCy Schubert T_Initmem = 313, 190*2b15cb3dSCy Schubert T_Includefile = 314, 191*2b15cb3dSCy Schubert T_Integer = 315, 192*2b15cb3dSCy Schubert T_Interface = 316, 193*2b15cb3dSCy Schubert T_Intrange = 317, 194*2b15cb3dSCy Schubert T_Io = 318, 195*2b15cb3dSCy Schubert T_Ipv4 = 319, 196*2b15cb3dSCy Schubert T_Ipv4_flag = 320, 197*2b15cb3dSCy Schubert T_Ipv6 = 321, 198*2b15cb3dSCy Schubert T_Ipv6_flag = 322, 199*2b15cb3dSCy Schubert T_Kernel = 323, 200*2b15cb3dSCy Schubert T_Key = 324, 201*2b15cb3dSCy Schubert T_Keys = 325, 202*2b15cb3dSCy Schubert T_Keysdir = 326, 203*2b15cb3dSCy Schubert T_Kod = 327, 204*2b15cb3dSCy Schubert T_Mssntp = 328, 205*2b15cb3dSCy Schubert T_Leapfile = 329, 206*2b15cb3dSCy Schubert T_Limited = 330, 207*2b15cb3dSCy Schubert T_Link = 331, 208*2b15cb3dSCy Schubert T_Listen = 332, 209*2b15cb3dSCy Schubert T_Logconfig = 333, 210*2b15cb3dSCy Schubert T_Logfile = 334, 211*2b15cb3dSCy Schubert T_Loopstats = 335, 212*2b15cb3dSCy Schubert T_Lowpriotrap = 336, 213*2b15cb3dSCy Schubert T_Manycastclient = 337, 214*2b15cb3dSCy Schubert T_Manycastserver = 338, 215*2b15cb3dSCy Schubert T_Mask = 339, 216*2b15cb3dSCy Schubert T_Maxage = 340, 217*2b15cb3dSCy Schubert T_Maxclock = 341, 218*2b15cb3dSCy Schubert T_Maxdepth = 342, 219*2b15cb3dSCy Schubert T_Maxdist = 343, 220*2b15cb3dSCy Schubert T_Maxmem = 344, 221*2b15cb3dSCy Schubert T_Maxpoll = 345, 222*2b15cb3dSCy Schubert T_Mdnstries = 346, 223*2b15cb3dSCy Schubert T_Mem = 347, 224*2b15cb3dSCy Schubert T_Memlock = 348, 225*2b15cb3dSCy Schubert T_Minclock = 349, 226*2b15cb3dSCy Schubert T_Mindepth = 350, 227*2b15cb3dSCy Schubert T_Mindist = 351, 228*2b15cb3dSCy Schubert T_Minimum = 352, 229*2b15cb3dSCy Schubert T_Minpoll = 353, 230*2b15cb3dSCy Schubert T_Minsane = 354, 231*2b15cb3dSCy Schubert T_Mode = 355, 232*2b15cb3dSCy Schubert T_Mode7 = 356, 233*2b15cb3dSCy Schubert T_Monitor = 357, 234*2b15cb3dSCy Schubert T_Month = 358, 235*2b15cb3dSCy Schubert T_Mru = 359, 236*2b15cb3dSCy Schubert T_Multicastclient = 360, 237*2b15cb3dSCy Schubert T_Nic = 361, 238*2b15cb3dSCy Schubert T_Nolink = 362, 239*2b15cb3dSCy Schubert T_Nomodify = 363, 240*2b15cb3dSCy Schubert T_Nomrulist = 364, 241*2b15cb3dSCy Schubert T_None = 365, 242*2b15cb3dSCy Schubert T_Nonvolatile = 366, 243*2b15cb3dSCy Schubert T_Nopeer = 367, 244*2b15cb3dSCy Schubert T_Noquery = 368, 245*2b15cb3dSCy Schubert T_Noselect = 369, 246*2b15cb3dSCy Schubert T_Noserve = 370, 247*2b15cb3dSCy Schubert T_Notrap = 371, 248*2b15cb3dSCy Schubert T_Notrust = 372, 249*2b15cb3dSCy Schubert T_Ntp = 373, 250*2b15cb3dSCy Schubert T_Ntpport = 374, 251*2b15cb3dSCy Schubert T_NtpSignDsocket = 375, 252*2b15cb3dSCy Schubert T_Orphan = 376, 253*2b15cb3dSCy Schubert T_Orphanwait = 377, 254*2b15cb3dSCy Schubert T_Panic = 378, 255*2b15cb3dSCy Schubert T_Peer = 379, 256*2b15cb3dSCy Schubert T_Peerstats = 380, 257*2b15cb3dSCy Schubert T_Phone = 381, 258*2b15cb3dSCy Schubert T_Pid = 382, 259*2b15cb3dSCy Schubert T_Pidfile = 383, 260*2b15cb3dSCy Schubert T_Pool = 384, 261*2b15cb3dSCy Schubert T_Port = 385, 262*2b15cb3dSCy Schubert T_Preempt = 386, 263*2b15cb3dSCy Schubert T_Prefer = 387, 264*2b15cb3dSCy Schubert T_Protostats = 388, 265*2b15cb3dSCy Schubert T_Pw = 389, 266*2b15cb3dSCy Schubert T_Randfile = 390, 267*2b15cb3dSCy Schubert T_Rawstats = 391, 268*2b15cb3dSCy Schubert T_Refid = 392, 269*2b15cb3dSCy Schubert T_Requestkey = 393, 270*2b15cb3dSCy Schubert T_Reset = 394, 271*2b15cb3dSCy Schubert T_Restrict = 395, 272*2b15cb3dSCy Schubert T_Revoke = 396, 273*2b15cb3dSCy Schubert T_Rlimit = 397, 274*2b15cb3dSCy Schubert T_Saveconfigdir = 398, 275*2b15cb3dSCy Schubert T_Server = 399, 276*2b15cb3dSCy Schubert T_Setvar = 400, 277*2b15cb3dSCy Schubert T_Source = 401, 278*2b15cb3dSCy Schubert T_Stacksize = 402, 279*2b15cb3dSCy Schubert T_Statistics = 403, 280*2b15cb3dSCy Schubert T_Stats = 404, 281*2b15cb3dSCy Schubert T_Statsdir = 405, 282*2b15cb3dSCy Schubert T_Step = 406, 283*2b15cb3dSCy Schubert T_Stepout = 407, 284*2b15cb3dSCy Schubert T_Stratum = 408, 285*2b15cb3dSCy Schubert T_String = 409, 286*2b15cb3dSCy Schubert T_Sys = 410, 287*2b15cb3dSCy Schubert T_Sysstats = 411, 288*2b15cb3dSCy Schubert T_Tick = 412, 289*2b15cb3dSCy Schubert T_Time1 = 413, 290*2b15cb3dSCy Schubert T_Time2 = 414, 291*2b15cb3dSCy Schubert T_Timer = 415, 292*2b15cb3dSCy Schubert T_Timingstats = 416, 293*2b15cb3dSCy Schubert T_Tinker = 417, 294*2b15cb3dSCy Schubert T_Tos = 418, 295*2b15cb3dSCy Schubert T_Trap = 419, 296*2b15cb3dSCy Schubert T_True = 420, 297*2b15cb3dSCy Schubert T_Trustedkey = 421, 298*2b15cb3dSCy Schubert T_Ttl = 422, 299*2b15cb3dSCy Schubert T_Type = 423, 300*2b15cb3dSCy Schubert T_U_int = 424, 301*2b15cb3dSCy Schubert T_Unconfig = 425, 302*2b15cb3dSCy Schubert T_Unpeer = 426, 303*2b15cb3dSCy Schubert T_Version = 427, 304*2b15cb3dSCy Schubert T_WanderThreshold = 428, 305*2b15cb3dSCy Schubert T_Week = 429, 306*2b15cb3dSCy Schubert T_Wildcard = 430, 307*2b15cb3dSCy Schubert T_Xleave = 431, 308*2b15cb3dSCy Schubert T_Year = 432, 309*2b15cb3dSCy Schubert T_Flag = 433, 310*2b15cb3dSCy Schubert T_EOC = 434, 311*2b15cb3dSCy Schubert T_Simulate = 435, 312*2b15cb3dSCy Schubert T_Beep_Delay = 436, 313*2b15cb3dSCy Schubert T_Sim_Duration = 437, 314*2b15cb3dSCy Schubert T_Server_Offset = 438, 315*2b15cb3dSCy Schubert T_Duration = 439, 316*2b15cb3dSCy Schubert T_Freq_Offset = 440, 317*2b15cb3dSCy Schubert T_Wander = 441, 318*2b15cb3dSCy Schubert T_Jitter = 442, 319*2b15cb3dSCy Schubert T_Prop_Delay = 443, 320*2b15cb3dSCy Schubert T_Proc_Delay = 444 321*2b15cb3dSCy Schubert }; 322*2b15cb3dSCy Schubert #endif 323*2b15cb3dSCy Schubert /* Tokens. */ 324*2b15cb3dSCy Schubert #define T_Abbrev 258 325*2b15cb3dSCy Schubert #define T_Age 259 326*2b15cb3dSCy Schubert #define T_All 260 327*2b15cb3dSCy Schubert #define T_Allan 261 328*2b15cb3dSCy Schubert #define T_Allpeers 262 329*2b15cb3dSCy Schubert #define T_Auth 263 330*2b15cb3dSCy Schubert #define T_Autokey 264 331*2b15cb3dSCy Schubert #define T_Automax 265 332*2b15cb3dSCy Schubert #define T_Average 266 333*2b15cb3dSCy Schubert #define T_Bclient 267 334*2b15cb3dSCy Schubert #define T_Beacon 268 335*2b15cb3dSCy Schubert #define T_Broadcast 269 336*2b15cb3dSCy Schubert #define T_Broadcastclient 270 337*2b15cb3dSCy Schubert #define T_Broadcastdelay 271 338*2b15cb3dSCy Schubert #define T_Burst 272 339*2b15cb3dSCy Schubert #define T_Calibrate 273 340*2b15cb3dSCy Schubert #define T_Ceiling 274 341*2b15cb3dSCy Schubert #define T_Clockstats 275 342*2b15cb3dSCy Schubert #define T_Cohort 276 343*2b15cb3dSCy Schubert #define T_ControlKey 277 344*2b15cb3dSCy Schubert #define T_Crypto 278 345*2b15cb3dSCy Schubert #define T_Cryptostats 279 346*2b15cb3dSCy Schubert #define T_Ctl 280 347*2b15cb3dSCy Schubert #define T_Day 281 348*2b15cb3dSCy Schubert #define T_Default 282 349*2b15cb3dSCy Schubert #define T_Digest 283 350*2b15cb3dSCy Schubert #define T_Disable 284 351*2b15cb3dSCy Schubert #define T_Discard 285 352*2b15cb3dSCy Schubert #define T_Dispersion 286 353*2b15cb3dSCy Schubert #define T_Double 287 354*2b15cb3dSCy Schubert #define T_Driftfile 288 355*2b15cb3dSCy Schubert #define T_Drop 289 356*2b15cb3dSCy Schubert #define T_Ellipsis 290 357*2b15cb3dSCy Schubert #define T_Enable 291 358*2b15cb3dSCy Schubert #define T_End 292 359*2b15cb3dSCy Schubert #define T_False 293 360*2b15cb3dSCy Schubert #define T_File 294 361*2b15cb3dSCy Schubert #define T_Filegen 295 362*2b15cb3dSCy Schubert #define T_Filenum 296 363*2b15cb3dSCy Schubert #define T_Flag1 297 364*2b15cb3dSCy Schubert #define T_Flag2 298 365*2b15cb3dSCy Schubert #define T_Flag3 299 366*2b15cb3dSCy Schubert #define T_Flag4 300 367*2b15cb3dSCy Schubert #define T_Flake 301 368*2b15cb3dSCy Schubert #define T_Floor 302 369*2b15cb3dSCy Schubert #define T_Freq 303 370*2b15cb3dSCy Schubert #define T_Fudge 304 371*2b15cb3dSCy Schubert #define T_Host 305 372*2b15cb3dSCy Schubert #define T_Huffpuff 306 373*2b15cb3dSCy Schubert #define T_Iburst 307 374*2b15cb3dSCy Schubert #define T_Ident 308 375*2b15cb3dSCy Schubert #define T_Ignore 309 376*2b15cb3dSCy Schubert #define T_Incalloc 310 377*2b15cb3dSCy Schubert #define T_Incmem 311 378*2b15cb3dSCy Schubert #define T_Initalloc 312 379*2b15cb3dSCy Schubert #define T_Initmem 313 380*2b15cb3dSCy Schubert #define T_Includefile 314 381*2b15cb3dSCy Schubert #define T_Integer 315 382*2b15cb3dSCy Schubert #define T_Interface 316 383*2b15cb3dSCy Schubert #define T_Intrange 317 384*2b15cb3dSCy Schubert #define T_Io 318 385*2b15cb3dSCy Schubert #define T_Ipv4 319 386*2b15cb3dSCy Schubert #define T_Ipv4_flag 320 387*2b15cb3dSCy Schubert #define T_Ipv6 321 388*2b15cb3dSCy Schubert #define T_Ipv6_flag 322 389*2b15cb3dSCy Schubert #define T_Kernel 323 390*2b15cb3dSCy Schubert #define T_Key 324 391*2b15cb3dSCy Schubert #define T_Keys 325 392*2b15cb3dSCy Schubert #define T_Keysdir 326 393*2b15cb3dSCy Schubert #define T_Kod 327 394*2b15cb3dSCy Schubert #define T_Mssntp 328 395*2b15cb3dSCy Schubert #define T_Leapfile 329 396*2b15cb3dSCy Schubert #define T_Limited 330 397*2b15cb3dSCy Schubert #define T_Link 331 398*2b15cb3dSCy Schubert #define T_Listen 332 399*2b15cb3dSCy Schubert #define T_Logconfig 333 400*2b15cb3dSCy Schubert #define T_Logfile 334 401*2b15cb3dSCy Schubert #define T_Loopstats 335 402*2b15cb3dSCy Schubert #define T_Lowpriotrap 336 403*2b15cb3dSCy Schubert #define T_Manycastclient 337 404*2b15cb3dSCy Schubert #define T_Manycastserver 338 405*2b15cb3dSCy Schubert #define T_Mask 339 406*2b15cb3dSCy Schubert #define T_Maxage 340 407*2b15cb3dSCy Schubert #define T_Maxclock 341 408*2b15cb3dSCy Schubert #define T_Maxdepth 342 409*2b15cb3dSCy Schubert #define T_Maxdist 343 410*2b15cb3dSCy Schubert #define T_Maxmem 344 411*2b15cb3dSCy Schubert #define T_Maxpoll 345 412*2b15cb3dSCy Schubert #define T_Mdnstries 346 413*2b15cb3dSCy Schubert #define T_Mem 347 414*2b15cb3dSCy Schubert #define T_Memlock 348 415*2b15cb3dSCy Schubert #define T_Minclock 349 416*2b15cb3dSCy Schubert #define T_Mindepth 350 417*2b15cb3dSCy Schubert #define T_Mindist 351 418*2b15cb3dSCy Schubert #define T_Minimum 352 419*2b15cb3dSCy Schubert #define T_Minpoll 353 420*2b15cb3dSCy Schubert #define T_Minsane 354 421*2b15cb3dSCy Schubert #define T_Mode 355 422*2b15cb3dSCy Schubert #define T_Mode7 356 423*2b15cb3dSCy Schubert #define T_Monitor 357 424*2b15cb3dSCy Schubert #define T_Month 358 425*2b15cb3dSCy Schubert #define T_Mru 359 426*2b15cb3dSCy Schubert #define T_Multicastclient 360 427*2b15cb3dSCy Schubert #define T_Nic 361 428*2b15cb3dSCy Schubert #define T_Nolink 362 429*2b15cb3dSCy Schubert #define T_Nomodify 363 430*2b15cb3dSCy Schubert #define T_Nomrulist 364 431*2b15cb3dSCy Schubert #define T_None 365 432*2b15cb3dSCy Schubert #define T_Nonvolatile 366 433*2b15cb3dSCy Schubert #define T_Nopeer 367 434*2b15cb3dSCy Schubert #define T_Noquery 368 435*2b15cb3dSCy Schubert #define T_Noselect 369 436*2b15cb3dSCy Schubert #define T_Noserve 370 437*2b15cb3dSCy Schubert #define T_Notrap 371 438*2b15cb3dSCy Schubert #define T_Notrust 372 439*2b15cb3dSCy Schubert #define T_Ntp 373 440*2b15cb3dSCy Schubert #define T_Ntpport 374 441*2b15cb3dSCy Schubert #define T_NtpSignDsocket 375 442*2b15cb3dSCy Schubert #define T_Orphan 376 443*2b15cb3dSCy Schubert #define T_Orphanwait 377 444*2b15cb3dSCy Schubert #define T_Panic 378 445*2b15cb3dSCy Schubert #define T_Peer 379 446*2b15cb3dSCy Schubert #define T_Peerstats 380 447*2b15cb3dSCy Schubert #define T_Phone 381 448*2b15cb3dSCy Schubert #define T_Pid 382 449*2b15cb3dSCy Schubert #define T_Pidfile 383 450*2b15cb3dSCy Schubert #define T_Pool 384 451*2b15cb3dSCy Schubert #define T_Port 385 452*2b15cb3dSCy Schubert #define T_Preempt 386 453*2b15cb3dSCy Schubert #define T_Prefer 387 454*2b15cb3dSCy Schubert #define T_Protostats 388 455*2b15cb3dSCy Schubert #define T_Pw 389 456*2b15cb3dSCy Schubert #define T_Randfile 390 457*2b15cb3dSCy Schubert #define T_Rawstats 391 458*2b15cb3dSCy Schubert #define T_Refid 392 459*2b15cb3dSCy Schubert #define T_Requestkey 393 460*2b15cb3dSCy Schubert #define T_Reset 394 461*2b15cb3dSCy Schubert #define T_Restrict 395 462*2b15cb3dSCy Schubert #define T_Revoke 396 463*2b15cb3dSCy Schubert #define T_Rlimit 397 464*2b15cb3dSCy Schubert #define T_Saveconfigdir 398 465*2b15cb3dSCy Schubert #define T_Server 399 466*2b15cb3dSCy Schubert #define T_Setvar 400 467*2b15cb3dSCy Schubert #define T_Source 401 468*2b15cb3dSCy Schubert #define T_Stacksize 402 469*2b15cb3dSCy Schubert #define T_Statistics 403 470*2b15cb3dSCy Schubert #define T_Stats 404 471*2b15cb3dSCy Schubert #define T_Statsdir 405 472*2b15cb3dSCy Schubert #define T_Step 406 473*2b15cb3dSCy Schubert #define T_Stepout 407 474*2b15cb3dSCy Schubert #define T_Stratum 408 475*2b15cb3dSCy Schubert #define T_String 409 476*2b15cb3dSCy Schubert #define T_Sys 410 477*2b15cb3dSCy Schubert #define T_Sysstats 411 478*2b15cb3dSCy Schubert #define T_Tick 412 479*2b15cb3dSCy Schubert #define T_Time1 413 480*2b15cb3dSCy Schubert #define T_Time2 414 481*2b15cb3dSCy Schubert #define T_Timer 415 482*2b15cb3dSCy Schubert #define T_Timingstats 416 483*2b15cb3dSCy Schubert #define T_Tinker 417 484*2b15cb3dSCy Schubert #define T_Tos 418 485*2b15cb3dSCy Schubert #define T_Trap 419 486*2b15cb3dSCy Schubert #define T_True 420 487*2b15cb3dSCy Schubert #define T_Trustedkey 421 488*2b15cb3dSCy Schubert #define T_Ttl 422 489*2b15cb3dSCy Schubert #define T_Type 423 490*2b15cb3dSCy Schubert #define T_U_int 424 491*2b15cb3dSCy Schubert #define T_Unconfig 425 492*2b15cb3dSCy Schubert #define T_Unpeer 426 493*2b15cb3dSCy Schubert #define T_Version 427 494*2b15cb3dSCy Schubert #define T_WanderThreshold 428 495*2b15cb3dSCy Schubert #define T_Week 429 496*2b15cb3dSCy Schubert #define T_Wildcard 430 497*2b15cb3dSCy Schubert #define T_Xleave 431 498*2b15cb3dSCy Schubert #define T_Year 432 499*2b15cb3dSCy Schubert #define T_Flag 433 500*2b15cb3dSCy Schubert #define T_EOC 434 501*2b15cb3dSCy Schubert #define T_Simulate 435 502*2b15cb3dSCy Schubert #define T_Beep_Delay 436 503*2b15cb3dSCy Schubert #define T_Sim_Duration 437 504*2b15cb3dSCy Schubert #define T_Server_Offset 438 505*2b15cb3dSCy Schubert #define T_Duration 439 506*2b15cb3dSCy Schubert #define T_Freq_Offset 440 507*2b15cb3dSCy Schubert #define T_Wander 441 508*2b15cb3dSCy Schubert #define T_Jitter 442 509*2b15cb3dSCy Schubert #define T_Prop_Delay 443 510*2b15cb3dSCy Schubert #define T_Proc_Delay 444 511*2b15cb3dSCy Schubert 512*2b15cb3dSCy Schubert /* Value type. */ 513*2b15cb3dSCy Schubert #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 514*2b15cb3dSCy Schubert typedef union YYSTYPE YYSTYPE; 515*2b15cb3dSCy Schubert union YYSTYPE 516*2b15cb3dSCy Schubert { 517*2b15cb3dSCy Schubert #line 54 "ntp_parser.y" /* yacc.c:355 */ 518*2b15cb3dSCy Schubert 519*2b15cb3dSCy Schubert char * String; 520*2b15cb3dSCy Schubert double Double; 521*2b15cb3dSCy Schubert int Integer; 522*2b15cb3dSCy Schubert unsigned U_int; 523*2b15cb3dSCy Schubert gen_fifo * Generic_fifo; 524*2b15cb3dSCy Schubert attr_val * Attr_val; 525*2b15cb3dSCy Schubert attr_val_fifo * Attr_val_fifo; 526*2b15cb3dSCy Schubert int_fifo * Int_fifo; 527*2b15cb3dSCy Schubert string_fifo * String_fifo; 528*2b15cb3dSCy Schubert address_node * Address_node; 529*2b15cb3dSCy Schubert address_fifo * Address_fifo; 530*2b15cb3dSCy Schubert setvar_node * Set_var; 531*2b15cb3dSCy Schubert server_info * Sim_server; 532*2b15cb3dSCy Schubert server_info_fifo * Sim_server_fifo; 533*2b15cb3dSCy Schubert script_info * Sim_script; 534*2b15cb3dSCy Schubert script_info_fifo * Sim_script_fifo; 535*2b15cb3dSCy Schubert 536*2b15cb3dSCy Schubert #line 537 "ntp_parser.c" /* yacc.c:355 */ 537*2b15cb3dSCy Schubert }; 538*2b15cb3dSCy Schubert # define YYSTYPE_IS_TRIVIAL 1 539*2b15cb3dSCy Schubert # define YYSTYPE_IS_DECLARED 1 540*2b15cb3dSCy Schubert #endif 541*2b15cb3dSCy Schubert 542*2b15cb3dSCy Schubert 543*2b15cb3dSCy Schubert extern YYSTYPE yylval; 544*2b15cb3dSCy Schubert 545*2b15cb3dSCy Schubert int yyparse (struct FILE_INFO *ip_file); 546*2b15cb3dSCy Schubert 547*2b15cb3dSCy Schubert #endif /* !YY_YY_Y_TAB_H_INCLUDED */ 548*2b15cb3dSCy Schubert 549*2b15cb3dSCy Schubert /* Copy the second part of user declarations. */ 550*2b15cb3dSCy Schubert 551*2b15cb3dSCy Schubert #line 552 "ntp_parser.c" /* yacc.c:358 */ 552*2b15cb3dSCy Schubert 553*2b15cb3dSCy Schubert #ifdef short 554*2b15cb3dSCy Schubert # undef short 555*2b15cb3dSCy Schubert #endif 556*2b15cb3dSCy Schubert 557*2b15cb3dSCy Schubert #ifdef YYTYPE_UINT8 558*2b15cb3dSCy Schubert typedef YYTYPE_UINT8 yytype_uint8; 559*2b15cb3dSCy Schubert #else 560*2b15cb3dSCy Schubert typedef unsigned char yytype_uint8; 561*2b15cb3dSCy Schubert #endif 562*2b15cb3dSCy Schubert 563*2b15cb3dSCy Schubert #ifdef YYTYPE_INT8 564*2b15cb3dSCy Schubert typedef YYTYPE_INT8 yytype_int8; 565*2b15cb3dSCy Schubert #else 566*2b15cb3dSCy Schubert typedef signed char yytype_int8; 567*2b15cb3dSCy Schubert #endif 568*2b15cb3dSCy Schubert 569*2b15cb3dSCy Schubert #ifdef YYTYPE_UINT16 570*2b15cb3dSCy Schubert typedef YYTYPE_UINT16 yytype_uint16; 571*2b15cb3dSCy Schubert #else 572*2b15cb3dSCy Schubert typedef unsigned short int yytype_uint16; 573*2b15cb3dSCy Schubert #endif 574*2b15cb3dSCy Schubert 575*2b15cb3dSCy Schubert #ifdef YYTYPE_INT16 576*2b15cb3dSCy Schubert typedef YYTYPE_INT16 yytype_int16; 577*2b15cb3dSCy Schubert #else 578*2b15cb3dSCy Schubert typedef short int yytype_int16; 579*2b15cb3dSCy Schubert #endif 580*2b15cb3dSCy Schubert 581*2b15cb3dSCy Schubert #ifndef YYSIZE_T 582*2b15cb3dSCy Schubert # ifdef __SIZE_TYPE__ 583*2b15cb3dSCy Schubert # define YYSIZE_T __SIZE_TYPE__ 584*2b15cb3dSCy Schubert # elif defined size_t 585*2b15cb3dSCy Schubert # define YYSIZE_T size_t 586*2b15cb3dSCy Schubert # elif ! defined YYSIZE_T 587*2b15cb3dSCy Schubert # include <stddef.h> /* INFRINGES ON USER NAME SPACE */ 588*2b15cb3dSCy Schubert # define YYSIZE_T size_t 589*2b15cb3dSCy Schubert # else 590*2b15cb3dSCy Schubert # define YYSIZE_T unsigned int 591*2b15cb3dSCy Schubert # endif 592*2b15cb3dSCy Schubert #endif 593*2b15cb3dSCy Schubert 594*2b15cb3dSCy Schubert #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) 595*2b15cb3dSCy Schubert 596*2b15cb3dSCy Schubert #ifndef YY_ 597*2b15cb3dSCy Schubert # if defined YYENABLE_NLS && YYENABLE_NLS 598*2b15cb3dSCy Schubert # if ENABLE_NLS 599*2b15cb3dSCy Schubert # include <libintl.h> /* INFRINGES ON USER NAME SPACE */ 600*2b15cb3dSCy Schubert # define YY_(Msgid) dgettext ("bison-runtime", Msgid) 601*2b15cb3dSCy Schubert # endif 602*2b15cb3dSCy Schubert # endif 603*2b15cb3dSCy Schubert # ifndef YY_ 604*2b15cb3dSCy Schubert # define YY_(Msgid) Msgid 605*2b15cb3dSCy Schubert # endif 606*2b15cb3dSCy Schubert #endif 607*2b15cb3dSCy Schubert 608*2b15cb3dSCy Schubert #ifndef YY_ATTRIBUTE 609*2b15cb3dSCy Schubert # if (defined __GNUC__ \ 610*2b15cb3dSCy Schubert && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ 611*2b15cb3dSCy Schubert || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C 612*2b15cb3dSCy Schubert # define YY_ATTRIBUTE(Spec) __attribute__(Spec) 613*2b15cb3dSCy Schubert # else 614*2b15cb3dSCy Schubert # define YY_ATTRIBUTE(Spec) /* empty */ 615*2b15cb3dSCy Schubert # endif 616*2b15cb3dSCy Schubert #endif 617*2b15cb3dSCy Schubert 618*2b15cb3dSCy Schubert #ifndef YY_ATTRIBUTE_PURE 619*2b15cb3dSCy Schubert # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) 620*2b15cb3dSCy Schubert #endif 621*2b15cb3dSCy Schubert 622*2b15cb3dSCy Schubert #ifndef YY_ATTRIBUTE_UNUSED 623*2b15cb3dSCy Schubert # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) 624*2b15cb3dSCy Schubert #endif 625*2b15cb3dSCy Schubert 626*2b15cb3dSCy Schubert #if !defined _Noreturn \ 627*2b15cb3dSCy Schubert && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112) 628*2b15cb3dSCy Schubert # if defined _MSC_VER && 1200 <= _MSC_VER 629*2b15cb3dSCy Schubert # define _Noreturn __declspec (noreturn) 630*2b15cb3dSCy Schubert # else 631*2b15cb3dSCy Schubert # define _Noreturn YY_ATTRIBUTE ((__noreturn__)) 632*2b15cb3dSCy Schubert # endif 633*2b15cb3dSCy Schubert #endif 634*2b15cb3dSCy Schubert 635*2b15cb3dSCy Schubert /* Suppress unused-variable warnings by "using" E. */ 636*2b15cb3dSCy Schubert #if ! defined lint || defined __GNUC__ 637*2b15cb3dSCy Schubert # define YYUSE(E) ((void) (E)) 638*2b15cb3dSCy Schubert #else 639*2b15cb3dSCy Schubert # define YYUSE(E) /* empty */ 640*2b15cb3dSCy Schubert #endif 641*2b15cb3dSCy Schubert 642*2b15cb3dSCy Schubert #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ 643*2b15cb3dSCy Schubert /* Suppress an incorrect diagnostic about yylval being uninitialized. */ 644*2b15cb3dSCy Schubert # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ 645*2b15cb3dSCy Schubert _Pragma ("GCC diagnostic push") \ 646*2b15cb3dSCy Schubert _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ 647*2b15cb3dSCy Schubert _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") 648*2b15cb3dSCy Schubert # define YY_IGNORE_MAYBE_UNINITIALIZED_END \ 649*2b15cb3dSCy Schubert _Pragma ("GCC diagnostic pop") 650*2b15cb3dSCy Schubert #else 651*2b15cb3dSCy Schubert # define YY_INITIAL_VALUE(Value) Value 652*2b15cb3dSCy Schubert #endif 653*2b15cb3dSCy Schubert #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 654*2b15cb3dSCy Schubert # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 655*2b15cb3dSCy Schubert # define YY_IGNORE_MAYBE_UNINITIALIZED_END 656*2b15cb3dSCy Schubert #endif 657*2b15cb3dSCy Schubert #ifndef YY_INITIAL_VALUE 658*2b15cb3dSCy Schubert # define YY_INITIAL_VALUE(Value) /* Nothing. */ 659*2b15cb3dSCy Schubert #endif 660*2b15cb3dSCy Schubert 661*2b15cb3dSCy Schubert 662*2b15cb3dSCy Schubert #if ! defined yyoverflow || YYERROR_VERBOSE 663*2b15cb3dSCy Schubert 664*2b15cb3dSCy Schubert /* The parser invokes alloca or malloc; define the necessary symbols. */ 665*2b15cb3dSCy Schubert 666*2b15cb3dSCy Schubert # ifdef YYSTACK_USE_ALLOCA 667*2b15cb3dSCy Schubert # if YYSTACK_USE_ALLOCA 668*2b15cb3dSCy Schubert # ifdef __GNUC__ 669*2b15cb3dSCy Schubert # define YYSTACK_ALLOC __builtin_alloca 670*2b15cb3dSCy Schubert # elif defined __BUILTIN_VA_ARG_INCR 671*2b15cb3dSCy Schubert # include <alloca.h> /* INFRINGES ON USER NAME SPACE */ 672*2b15cb3dSCy Schubert # elif defined _AIX 673*2b15cb3dSCy Schubert # define YYSTACK_ALLOC __alloca 674*2b15cb3dSCy Schubert # elif defined _MSC_VER 675*2b15cb3dSCy Schubert # include <malloc.h> /* INFRINGES ON USER NAME SPACE */ 676*2b15cb3dSCy Schubert # define alloca _alloca 677*2b15cb3dSCy Schubert # else 678*2b15cb3dSCy Schubert # define YYSTACK_ALLOC alloca 679*2b15cb3dSCy Schubert # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS 680*2b15cb3dSCy Schubert # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 681*2b15cb3dSCy Schubert /* Use EXIT_SUCCESS as a witness for stdlib.h. */ 682*2b15cb3dSCy Schubert # ifndef EXIT_SUCCESS 683*2b15cb3dSCy Schubert # define EXIT_SUCCESS 0 684*2b15cb3dSCy Schubert # endif 685*2b15cb3dSCy Schubert # endif 686*2b15cb3dSCy Schubert # endif 687*2b15cb3dSCy Schubert # endif 688*2b15cb3dSCy Schubert # endif 689*2b15cb3dSCy Schubert 690*2b15cb3dSCy Schubert # ifdef YYSTACK_ALLOC 691*2b15cb3dSCy Schubert /* Pacify GCC's 'empty if-body' warning. */ 692*2b15cb3dSCy Schubert # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) 693*2b15cb3dSCy Schubert # ifndef YYSTACK_ALLOC_MAXIMUM 694*2b15cb3dSCy Schubert /* The OS might guarantee only one guard page at the bottom of the stack, 695*2b15cb3dSCy Schubert and a page size can be as small as 4096 bytes. So we cannot safely 696*2b15cb3dSCy Schubert invoke alloca (N) if N exceeds 4096. Use a slightly smaller number 697*2b15cb3dSCy Schubert to allow for a few compiler-allocated temporary stack slots. */ 698*2b15cb3dSCy Schubert # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ 699*2b15cb3dSCy Schubert # endif 700*2b15cb3dSCy Schubert # else 701*2b15cb3dSCy Schubert # define YYSTACK_ALLOC YYMALLOC 702*2b15cb3dSCy Schubert # define YYSTACK_FREE YYFREE 703*2b15cb3dSCy Schubert # ifndef YYSTACK_ALLOC_MAXIMUM 704*2b15cb3dSCy Schubert # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM 705*2b15cb3dSCy Schubert # endif 706*2b15cb3dSCy Schubert # if (defined __cplusplus && ! defined EXIT_SUCCESS \ 707*2b15cb3dSCy Schubert && ! ((defined YYMALLOC || defined malloc) \ 708*2b15cb3dSCy Schubert && (defined YYFREE || defined free))) 709*2b15cb3dSCy Schubert # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 710*2b15cb3dSCy Schubert # ifndef EXIT_SUCCESS 711*2b15cb3dSCy Schubert # define EXIT_SUCCESS 0 712*2b15cb3dSCy Schubert # endif 713*2b15cb3dSCy Schubert # endif 714*2b15cb3dSCy Schubert # ifndef YYMALLOC 715*2b15cb3dSCy Schubert # define YYMALLOC malloc 716*2b15cb3dSCy Schubert # if ! defined malloc && ! defined EXIT_SUCCESS 717*2b15cb3dSCy Schubert void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ 718*2b15cb3dSCy Schubert # endif 719*2b15cb3dSCy Schubert # endif 720*2b15cb3dSCy Schubert # ifndef YYFREE 721*2b15cb3dSCy Schubert # define YYFREE free 722*2b15cb3dSCy Schubert # if ! defined free && ! defined EXIT_SUCCESS 723*2b15cb3dSCy Schubert void free (void *); /* INFRINGES ON USER NAME SPACE */ 724*2b15cb3dSCy Schubert # endif 725*2b15cb3dSCy Schubert # endif 726*2b15cb3dSCy Schubert # endif 727*2b15cb3dSCy Schubert #endif /* ! defined yyoverflow || YYERROR_VERBOSE */ 728*2b15cb3dSCy Schubert 729*2b15cb3dSCy Schubert 730*2b15cb3dSCy Schubert #if (! defined yyoverflow \ 731*2b15cb3dSCy Schubert && (! defined __cplusplus \ 732*2b15cb3dSCy Schubert || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 733*2b15cb3dSCy Schubert 734*2b15cb3dSCy Schubert /* A type that is properly aligned for any stack member. */ 735*2b15cb3dSCy Schubert union yyalloc 736*2b15cb3dSCy Schubert { 737*2b15cb3dSCy Schubert yytype_int16 yyss_alloc; 738*2b15cb3dSCy Schubert YYSTYPE yyvs_alloc; 739*2b15cb3dSCy Schubert }; 740*2b15cb3dSCy Schubert 741*2b15cb3dSCy Schubert /* The size of the maximum gap between one aligned stack and the next. */ 742*2b15cb3dSCy Schubert # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) 743*2b15cb3dSCy Schubert 744*2b15cb3dSCy Schubert /* The size of an array large to enough to hold all stacks, each with 745*2b15cb3dSCy Schubert N elements. */ 746*2b15cb3dSCy Schubert # define YYSTACK_BYTES(N) \ 747*2b15cb3dSCy Schubert ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ 748*2b15cb3dSCy Schubert + YYSTACK_GAP_MAXIMUM) 749*2b15cb3dSCy Schubert 750*2b15cb3dSCy Schubert # define YYCOPY_NEEDED 1 751*2b15cb3dSCy Schubert 752*2b15cb3dSCy Schubert /* Relocate STACK from its old location to the new one. The 753*2b15cb3dSCy Schubert local variables YYSIZE and YYSTACKSIZE give the old and new number of 754*2b15cb3dSCy Schubert elements in the stack, and YYPTR gives the new location of the 755*2b15cb3dSCy Schubert stack. Advance YYPTR to a properly aligned location for the next 756*2b15cb3dSCy Schubert stack. */ 757*2b15cb3dSCy Schubert # define YYSTACK_RELOCATE(Stack_alloc, Stack) \ 758*2b15cb3dSCy Schubert do \ 759*2b15cb3dSCy Schubert { \ 760*2b15cb3dSCy Schubert YYSIZE_T yynewbytes; \ 761*2b15cb3dSCy Schubert YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ 762*2b15cb3dSCy Schubert Stack = &yyptr->Stack_alloc; \ 763*2b15cb3dSCy Schubert yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 764*2b15cb3dSCy Schubert yyptr += yynewbytes / sizeof (*yyptr); \ 765*2b15cb3dSCy Schubert } \ 766*2b15cb3dSCy Schubert while (0) 767*2b15cb3dSCy Schubert 768*2b15cb3dSCy Schubert #endif 769*2b15cb3dSCy Schubert 770*2b15cb3dSCy Schubert #if defined YYCOPY_NEEDED && YYCOPY_NEEDED 771*2b15cb3dSCy Schubert /* Copy COUNT objects from SRC to DST. The source and destination do 772*2b15cb3dSCy Schubert not overlap. */ 773*2b15cb3dSCy Schubert # ifndef YYCOPY 774*2b15cb3dSCy Schubert # if defined __GNUC__ && 1 < __GNUC__ 775*2b15cb3dSCy Schubert # define YYCOPY(Dst, Src, Count) \ 776*2b15cb3dSCy Schubert __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) 777*2b15cb3dSCy Schubert # else 778*2b15cb3dSCy Schubert # define YYCOPY(Dst, Src, Count) \ 779*2b15cb3dSCy Schubert do \ 780*2b15cb3dSCy Schubert { \ 781*2b15cb3dSCy Schubert YYSIZE_T yyi; \ 782*2b15cb3dSCy Schubert for (yyi = 0; yyi < (Count); yyi++) \ 783*2b15cb3dSCy Schubert (Dst)[yyi] = (Src)[yyi]; \ 784*2b15cb3dSCy Schubert } \ 785*2b15cb3dSCy Schubert while (0) 786*2b15cb3dSCy Schubert # endif 787*2b15cb3dSCy Schubert # endif 788*2b15cb3dSCy Schubert #endif /* !YYCOPY_NEEDED */ 789*2b15cb3dSCy Schubert 790*2b15cb3dSCy Schubert /* YYFINAL -- State number of the termination state. */ 791*2b15cb3dSCy Schubert #define YYFINAL 205 792*2b15cb3dSCy Schubert /* YYLAST -- Last index in YYTABLE. */ 793*2b15cb3dSCy Schubert #define YYLAST 634 794*2b15cb3dSCy Schubert 795*2b15cb3dSCy Schubert /* YYNTOKENS -- Number of terminals. */ 796*2b15cb3dSCy Schubert #define YYNTOKENS 195 797*2b15cb3dSCy Schubert /* YYNNTS -- Number of nonterminals. */ 798*2b15cb3dSCy Schubert #define YYNNTS 104 799*2b15cb3dSCy Schubert /* YYNRULES -- Number of rules. */ 800*2b15cb3dSCy Schubert #define YYNRULES 308 801*2b15cb3dSCy Schubert /* YYNSTATES -- Number of states. */ 802*2b15cb3dSCy Schubert #define YYNSTATES 413 803*2b15cb3dSCy Schubert 804*2b15cb3dSCy Schubert /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned 805*2b15cb3dSCy Schubert by yylex, with out-of-bounds checking. */ 806*2b15cb3dSCy Schubert #define YYUNDEFTOK 2 807*2b15cb3dSCy Schubert #define YYMAXUTOK 444 808*2b15cb3dSCy Schubert 809*2b15cb3dSCy Schubert #define YYTRANSLATE(YYX) \ 810*2b15cb3dSCy Schubert ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 811*2b15cb3dSCy Schubert 812*2b15cb3dSCy Schubert /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM 813*2b15cb3dSCy Schubert as returned by yylex, without out-of-bounds checking. */ 814*2b15cb3dSCy Schubert static const yytype_uint8 yytranslate[] = 815*2b15cb3dSCy Schubert { 816*2b15cb3dSCy Schubert 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 817*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 818*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 819*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 820*2b15cb3dSCy Schubert 191, 192, 2, 2, 2, 2, 2, 2, 2, 2, 821*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 822*2b15cb3dSCy Schubert 2, 190, 2, 2, 2, 2, 2, 2, 2, 2, 823*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 824*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 825*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 826*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 827*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 828*2b15cb3dSCy Schubert 2, 2, 2, 193, 2, 194, 2, 2, 2, 2, 829*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 830*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 831*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 832*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 833*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 834*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 835*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 836*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 837*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 838*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 839*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 840*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 841*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 842*2b15cb3dSCy Schubert 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 843*2b15cb3dSCy Schubert 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 844*2b15cb3dSCy Schubert 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 845*2b15cb3dSCy Schubert 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 846*2b15cb3dSCy Schubert 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 847*2b15cb3dSCy Schubert 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 848*2b15cb3dSCy Schubert 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 849*2b15cb3dSCy Schubert 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 850*2b15cb3dSCy Schubert 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 851*2b15cb3dSCy Schubert 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 852*2b15cb3dSCy Schubert 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 853*2b15cb3dSCy Schubert 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 854*2b15cb3dSCy Schubert 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 855*2b15cb3dSCy Schubert 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 856*2b15cb3dSCy Schubert 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 857*2b15cb3dSCy Schubert 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 858*2b15cb3dSCy Schubert 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 859*2b15cb3dSCy Schubert 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 860*2b15cb3dSCy Schubert 185, 186, 187, 188, 189 861*2b15cb3dSCy Schubert }; 862*2b15cb3dSCy Schubert 863*2b15cb3dSCy Schubert #if YYDEBUG 864*2b15cb3dSCy Schubert /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ 865*2b15cb3dSCy Schubert static const yytype_uint16 yyrline[] = 866*2b15cb3dSCy Schubert { 867*2b15cb3dSCy Schubert 0, 364, 364, 368, 369, 370, 384, 385, 386, 387, 868*2b15cb3dSCy Schubert 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 869*2b15cb3dSCy Schubert 405, 415, 416, 417, 418, 419, 423, 424, 429, 434, 870*2b15cb3dSCy Schubert 436, 442, 443, 451, 452, 453, 457, 462, 463, 464, 871*2b15cb3dSCy Schubert 465, 466, 467, 468, 469, 473, 475, 480, 481, 482, 872*2b15cb3dSCy Schubert 483, 484, 485, 489, 494, 503, 513, 514, 524, 526, 873*2b15cb3dSCy Schubert 528, 530, 541, 548, 550, 555, 557, 559, 561, 563, 874*2b15cb3dSCy Schubert 572, 578, 579, 587, 589, 601, 602, 603, 604, 605, 875*2b15cb3dSCy Schubert 614, 619, 624, 632, 634, 636, 641, 642, 643, 644, 876*2b15cb3dSCy Schubert 645, 646, 650, 651, 652, 653, 662, 664, 673, 683, 877*2b15cb3dSCy Schubert 688, 696, 697, 698, 699, 700, 701, 702, 703, 708, 878*2b15cb3dSCy Schubert 709, 717, 727, 736, 751, 756, 757, 761, 762, 766, 879*2b15cb3dSCy Schubert 767, 768, 769, 770, 771, 772, 781, 785, 789, 797, 880*2b15cb3dSCy Schubert 805, 813, 828, 843, 856, 857, 865, 866, 867, 868, 881*2b15cb3dSCy Schubert 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 882*2b15cb3dSCy Schubert 879, 883, 888, 896, 901, 902, 903, 907, 912, 920, 883*2b15cb3dSCy Schubert 925, 926, 927, 928, 929, 930, 931, 932, 940, 950, 884*2b15cb3dSCy Schubert 955, 963, 965, 967, 969, 971, 976, 977, 981, 982, 885*2b15cb3dSCy Schubert 983, 984, 992, 997, 1002, 1010, 1015, 1016, 1017, 1026, 886*2b15cb3dSCy Schubert 1028, 1033, 1038, 1046, 1048, 1065, 1066, 1067, 1068, 1069, 887*2b15cb3dSCy Schubert 1070, 1074, 1075, 1083, 1088, 1093, 1101, 1106, 1107, 1108, 888*2b15cb3dSCy Schubert 1109, 1110, 1111, 1112, 1113, 1122, 1123, 1124, 1131, 1138, 889*2b15cb3dSCy Schubert 1154, 1173, 1178, 1180, 1182, 1184, 1186, 1193, 1198, 1199, 890*2b15cb3dSCy Schubert 1200, 1204, 1205, 1206, 1210, 1211, 1215, 1222, 1232, 1241, 891*2b15cb3dSCy Schubert 1246, 1248, 1253, 1254, 1262, 1264, 1272, 1277, 1285, 1310, 892*2b15cb3dSCy Schubert 1317, 1327, 1328, 1332, 1333, 1334, 1335, 1339, 1340, 1341, 893*2b15cb3dSCy Schubert 1345, 1350, 1355, 1363, 1364, 1365, 1366, 1367, 1368, 1369, 894*2b15cb3dSCy Schubert 1379, 1384, 1392, 1397, 1405, 1407, 1411, 1416, 1421, 1429, 895*2b15cb3dSCy Schubert 1434, 1442, 1451, 1452, 1456, 1457, 1466, 1484, 1488, 1493, 896*2b15cb3dSCy Schubert 1501, 1506, 1507, 1511, 1516, 1524, 1529, 1534, 1539, 1544, 897*2b15cb3dSCy Schubert 1552, 1557, 1562, 1570, 1575, 1576, 1577, 1578, 1579 898*2b15cb3dSCy Schubert }; 899*2b15cb3dSCy Schubert #endif 900*2b15cb3dSCy Schubert 901*2b15cb3dSCy Schubert #if YYDEBUG || YYERROR_VERBOSE || 1 902*2b15cb3dSCy Schubert /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. 903*2b15cb3dSCy Schubert First, the terminals, then, starting at YYNTOKENS, nonterminals. */ 904*2b15cb3dSCy Schubert static const char *const yytname[] = 905*2b15cb3dSCy Schubert { 906*2b15cb3dSCy Schubert "$end", "error", "$undefined", "T_Abbrev", "T_Age", "T_All", "T_Allan", 907*2b15cb3dSCy Schubert "T_Allpeers", "T_Auth", "T_Autokey", "T_Automax", "T_Average", 908*2b15cb3dSCy Schubert "T_Bclient", "T_Beacon", "T_Broadcast", "T_Broadcastclient", 909*2b15cb3dSCy Schubert "T_Broadcastdelay", "T_Burst", "T_Calibrate", "T_Ceiling", 910*2b15cb3dSCy Schubert "T_Clockstats", "T_Cohort", "T_ControlKey", "T_Crypto", "T_Cryptostats", 911*2b15cb3dSCy Schubert "T_Ctl", "T_Day", "T_Default", "T_Digest", "T_Disable", "T_Discard", 912*2b15cb3dSCy Schubert "T_Dispersion", "T_Double", "T_Driftfile", "T_Drop", "T_Ellipsis", 913*2b15cb3dSCy Schubert "T_Enable", "T_End", "T_False", "T_File", "T_Filegen", "T_Filenum", 914*2b15cb3dSCy Schubert "T_Flag1", "T_Flag2", "T_Flag3", "T_Flag4", "T_Flake", "T_Floor", 915*2b15cb3dSCy Schubert "T_Freq", "T_Fudge", "T_Host", "T_Huffpuff", "T_Iburst", "T_Ident", 916*2b15cb3dSCy Schubert "T_Ignore", "T_Incalloc", "T_Incmem", "T_Initalloc", "T_Initmem", 917*2b15cb3dSCy Schubert "T_Includefile", "T_Integer", "T_Interface", "T_Intrange", "T_Io", 918*2b15cb3dSCy Schubert "T_Ipv4", "T_Ipv4_flag", "T_Ipv6", "T_Ipv6_flag", "T_Kernel", "T_Key", 919*2b15cb3dSCy Schubert "T_Keys", "T_Keysdir", "T_Kod", "T_Mssntp", "T_Leapfile", "T_Limited", 920*2b15cb3dSCy Schubert "T_Link", "T_Listen", "T_Logconfig", "T_Logfile", "T_Loopstats", 921*2b15cb3dSCy Schubert "T_Lowpriotrap", "T_Manycastclient", "T_Manycastserver", "T_Mask", 922*2b15cb3dSCy Schubert "T_Maxage", "T_Maxclock", "T_Maxdepth", "T_Maxdist", "T_Maxmem", 923*2b15cb3dSCy Schubert "T_Maxpoll", "T_Mdnstries", "T_Mem", "T_Memlock", "T_Minclock", 924*2b15cb3dSCy Schubert "T_Mindepth", "T_Mindist", "T_Minimum", "T_Minpoll", "T_Minsane", 925*2b15cb3dSCy Schubert "T_Mode", "T_Mode7", "T_Monitor", "T_Month", "T_Mru", 926*2b15cb3dSCy Schubert "T_Multicastclient", "T_Nic", "T_Nolink", "T_Nomodify", "T_Nomrulist", 927*2b15cb3dSCy Schubert "T_None", "T_Nonvolatile", "T_Nopeer", "T_Noquery", "T_Noselect", 928*2b15cb3dSCy Schubert "T_Noserve", "T_Notrap", "T_Notrust", "T_Ntp", "T_Ntpport", 929*2b15cb3dSCy Schubert "T_NtpSignDsocket", "T_Orphan", "T_Orphanwait", "T_Panic", "T_Peer", 930*2b15cb3dSCy Schubert "T_Peerstats", "T_Phone", "T_Pid", "T_Pidfile", "T_Pool", "T_Port", 931*2b15cb3dSCy Schubert "T_Preempt", "T_Prefer", "T_Protostats", "T_Pw", "T_Randfile", 932*2b15cb3dSCy Schubert "T_Rawstats", "T_Refid", "T_Requestkey", "T_Reset", "T_Restrict", 933*2b15cb3dSCy Schubert "T_Revoke", "T_Rlimit", "T_Saveconfigdir", "T_Server", "T_Setvar", 934*2b15cb3dSCy Schubert "T_Source", "T_Stacksize", "T_Statistics", "T_Stats", "T_Statsdir", 935*2b15cb3dSCy Schubert "T_Step", "T_Stepout", "T_Stratum", "T_String", "T_Sys", "T_Sysstats", 936*2b15cb3dSCy Schubert "T_Tick", "T_Time1", "T_Time2", "T_Timer", "T_Timingstats", "T_Tinker", 937*2b15cb3dSCy Schubert "T_Tos", "T_Trap", "T_True", "T_Trustedkey", "T_Ttl", "T_Type", 938*2b15cb3dSCy Schubert "T_U_int", "T_Unconfig", "T_Unpeer", "T_Version", "T_WanderThreshold", 939*2b15cb3dSCy Schubert "T_Week", "T_Wildcard", "T_Xleave", "T_Year", "T_Flag", "T_EOC", 940*2b15cb3dSCy Schubert "T_Simulate", "T_Beep_Delay", "T_Sim_Duration", "T_Server_Offset", 941*2b15cb3dSCy Schubert "T_Duration", "T_Freq_Offset", "T_Wander", "T_Jitter", "T_Prop_Delay", 942*2b15cb3dSCy Schubert "T_Proc_Delay", "'='", "'('", "')'", "'{'", "'}'", "$accept", 943*2b15cb3dSCy Schubert "configuration", "command_list", "command", "server_command", 944*2b15cb3dSCy Schubert "client_type", "address", "ip_address", "address_fam", "option_list", 945*2b15cb3dSCy Schubert "option", "option_flag", "option_flag_keyword", "option_int", 946*2b15cb3dSCy Schubert "option_int_keyword", "option_str", "option_str_keyword", 947*2b15cb3dSCy Schubert "unpeer_command", "unpeer_keyword", "other_mode_command", 948*2b15cb3dSCy Schubert "authentication_command", "crypto_command_list", "crypto_command", 949*2b15cb3dSCy Schubert "crypto_str_keyword", "orphan_mode_command", "tos_option_list", 950*2b15cb3dSCy Schubert "tos_option", "tos_option_int_keyword", "tos_option_dbl_keyword", 951*2b15cb3dSCy Schubert "monitoring_command", "stats_list", "stat", "filegen_option_list", 952*2b15cb3dSCy Schubert "filegen_option", "link_nolink", "enable_disable", "filegen_type", 953*2b15cb3dSCy Schubert "access_control_command", "ac_flag_list", "access_control_flag", 954*2b15cb3dSCy Schubert "discard_option_list", "discard_option", "discard_option_keyword", 955*2b15cb3dSCy Schubert "mru_option_list", "mru_option", "mru_option_keyword", "fudge_command", 956*2b15cb3dSCy Schubert "fudge_factor_list", "fudge_factor", "fudge_factor_dbl_keyword", 957*2b15cb3dSCy Schubert "fudge_factor_bool_keyword", "rlimit_command", "rlimit_option_list", 958*2b15cb3dSCy Schubert "rlimit_option", "rlimit_option_keyword", "system_option_command", 959*2b15cb3dSCy Schubert "system_option_list", "system_option", "system_option_flag_keyword", 960*2b15cb3dSCy Schubert "system_option_local_flag_keyword", "tinker_command", 961*2b15cb3dSCy Schubert "tinker_option_list", "tinker_option", "tinker_option_keyword", 962*2b15cb3dSCy Schubert "miscellaneous_command", "misc_cmd_dbl_keyword", "misc_cmd_str_keyword", 963*2b15cb3dSCy Schubert "misc_cmd_str_lcl_keyword", "drift_parm", "variable_assign", 964*2b15cb3dSCy Schubert "t_default_or_zero", "trap_option_list", "trap_option", 965*2b15cb3dSCy Schubert "log_config_list", "log_config_command", "interface_command", 966*2b15cb3dSCy Schubert "interface_nic", "nic_rule_class", "nic_rule_action", "reset_command", 967*2b15cb3dSCy Schubert "counter_set_list", "counter_set_keyword", "integer_list", 968*2b15cb3dSCy Schubert "integer_list_range", "integer_list_range_elt", "integer_range", 969*2b15cb3dSCy Schubert "string_list", "address_list", "boolean", "number", "simulate_command", 970*2b15cb3dSCy Schubert "sim_conf_start", "sim_init_statement_list", "sim_init_statement", 971*2b15cb3dSCy Schubert "sim_init_keyword", "sim_server_list", "sim_server", "sim_server_offset", 972*2b15cb3dSCy Schubert "sim_server_name", "sim_act_list", "sim_act", "sim_act_stmt_list", 973*2b15cb3dSCy Schubert "sim_act_stmt", "sim_act_keyword", YY_NULLPTR 974*2b15cb3dSCy Schubert }; 975*2b15cb3dSCy Schubert #endif 976*2b15cb3dSCy Schubert 977*2b15cb3dSCy Schubert # ifdef YYPRINT 978*2b15cb3dSCy Schubert /* YYTOKNUM[NUM] -- (External) token number corresponding to the 979*2b15cb3dSCy Schubert (internal) symbol number NUM (which must be that of a token). */ 980*2b15cb3dSCy Schubert static const yytype_uint16 yytoknum[] = 981*2b15cb3dSCy Schubert { 982*2b15cb3dSCy Schubert 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, 983*2b15cb3dSCy Schubert 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 984*2b15cb3dSCy Schubert 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 985*2b15cb3dSCy Schubert 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 986*2b15cb3dSCy Schubert 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 987*2b15cb3dSCy Schubert 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 988*2b15cb3dSCy Schubert 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 989*2b15cb3dSCy Schubert 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 990*2b15cb3dSCy Schubert 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 991*2b15cb3dSCy Schubert 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 992*2b15cb3dSCy Schubert 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 993*2b15cb3dSCy Schubert 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 994*2b15cb3dSCy Schubert 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 995*2b15cb3dSCy Schubert 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 996*2b15cb3dSCy Schubert 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 997*2b15cb3dSCy Schubert 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 998*2b15cb3dSCy Schubert 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 999*2b15cb3dSCy Schubert 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 1000*2b15cb3dSCy Schubert 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 1001*2b15cb3dSCy Schubert 61, 40, 41, 123, 125 1002*2b15cb3dSCy Schubert }; 1003*2b15cb3dSCy Schubert # endif 1004*2b15cb3dSCy Schubert 1005*2b15cb3dSCy Schubert #define YYPACT_NINF -180 1006*2b15cb3dSCy Schubert 1007*2b15cb3dSCy Schubert #define yypact_value_is_default(Yystate) \ 1008*2b15cb3dSCy Schubert (!!((Yystate) == (-180))) 1009*2b15cb3dSCy Schubert 1010*2b15cb3dSCy Schubert #define YYTABLE_NINF -7 1011*2b15cb3dSCy Schubert 1012*2b15cb3dSCy Schubert #define yytable_value_is_error(Yytable_value) \ 1013*2b15cb3dSCy Schubert 0 1014*2b15cb3dSCy Schubert 1015*2b15cb3dSCy Schubert /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 1016*2b15cb3dSCy Schubert STATE-NUM. */ 1017*2b15cb3dSCy Schubert static const yytype_int16 yypact[] = 1018*2b15cb3dSCy Schubert { 1019*2b15cb3dSCy Schubert 26, -147, -9, -180, -180, -180, -6, -180, 222, 9, 1020*2b15cb3dSCy Schubert -96, 222, -180, 276, -41, -180, -93, -180, -90, -86, 1021*2b15cb3dSCy Schubert -180, -84, -180, -180, -41, 0, 443, -41, -180, -180, 1022*2b15cb3dSCy Schubert -83, -180, -82, -180, -180, 20, 27, -20, 21, -19, 1023*2b15cb3dSCy Schubert -180, -180, -68, 276, -66, -180, 221, 328, -65, -55, 1024*2b15cb3dSCy Schubert 38, -180, -180, -180, 99, 188, -69, -180, -41, -180, 1025*2b15cb3dSCy Schubert -41, -180, -180, -180, -180, -180, -180, -180, -180, -180, 1026*2b15cb3dSCy Schubert -180, -3, -40, -39, -180, -4, -180, -180, -77, -180, 1027*2b15cb3dSCy Schubert -180, -180, 254, -180, -180, -180, -180, -180, -180, -180, 1028*2b15cb3dSCy Schubert -180, 222, -180, -180, -180, -180, -180, -180, 9, -180, 1029*2b15cb3dSCy Schubert 47, 90, -180, 222, -180, -180, -180, -180, -180, -180, 1030*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, 98, -180, -31, 347, 1031*2b15cb3dSCy Schubert -180, -180, -180, -84, -180, -180, -41, -180, -180, -180, 1032*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, 443, -180, 61, -41, 1033*2b15cb3dSCy Schubert -180, -180, -30, -180, -180, -180, -180, -180, -180, -180, 1034*2b15cb3dSCy Schubert -180, 27, -180, -180, 102, 106, -180, -180, 55, -180, 1035*2b15cb3dSCy Schubert -180, -180, -180, -19, -180, 87, -42, -180, 276, -180, 1036*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, -180, -180, -180, 221, 1037*2b15cb3dSCy Schubert -180, -3, -180, -180, -27, -180, -180, -180, -180, -180, 1038*2b15cb3dSCy Schubert -180, -180, -180, 328, -180, 91, -3, -180, -180, 93, 1039*2b15cb3dSCy Schubert -55, -180, -180, -180, 96, -180, -21, -180, -180, -180, 1040*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, -180, -180, 3, -144, 1041*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, 100, -180, -5, -180, -180, 1042*2b15cb3dSCy Schubert -180, -180, -23, 5, -180, -180, -180, -180, 7, 103, 1043*2b15cb3dSCy Schubert -180, -180, 98, -180, -3, -27, -180, -180, -180, -180, 1044*2b15cb3dSCy Schubert -180, -180, -180, -180, 462, -180, -180, 462, 462, -65, 1045*2b15cb3dSCy Schubert -180, -180, 8, -180, -180, -180, -180, -180, -180, -180, 1046*2b15cb3dSCy Schubert -180, -180, -180, -47, 138, -180, -180, -180, 425, -180, 1047*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, -180, -105, -2, -15, 1048*2b15cb3dSCy Schubert -180, -180, -180, -180, 25, -180, -180, 17, -180, -180, 1049*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 1050*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 1051*2b15cb3dSCy Schubert -180, -180, -180, 462, 462, -180, 154, -65, 124, -180, 1052*2b15cb3dSCy Schubert 125, -180, -180, -180, -180, -180, -180, -180, -180, -180, 1053*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 1054*2b15cb3dSCy Schubert -51, -180, 32, 10, 16, -116, -180, 6, -180, -3, 1055*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, -180, -180, -180, 462, 1056*2b15cb3dSCy Schubert -180, -180, -180, -180, 15, -180, -180, -180, -41, -180, 1057*2b15cb3dSCy Schubert -180, -180, 18, -180, -180, -180, 22, 24, -3, 23, 1058*2b15cb3dSCy Schubert -169, -180, 36, -3, -180, -180, -180, 29, -94, -180, 1059*2b15cb3dSCy Schubert -180, -180, -180, -180, 89, 37, 30, -180, 40, -180, 1060*2b15cb3dSCy Schubert -3, -180, -180 1061*2b15cb3dSCy Schubert }; 1062*2b15cb3dSCy Schubert 1063*2b15cb3dSCy Schubert /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. 1064*2b15cb3dSCy Schubert Performed when YYTABLE does not specify something else to do. Zero 1065*2b15cb3dSCy Schubert means the default is an error. */ 1066*2b15cb3dSCy Schubert static const yytype_uint16 yydefact[] = 1067*2b15cb3dSCy Schubert { 1068*2b15cb3dSCy Schubert 0, 0, 0, 24, 58, 228, 0, 71, 0, 0, 1069*2b15cb3dSCy Schubert 238, 0, 221, 0, 0, 231, 0, 251, 0, 0, 1070*2b15cb3dSCy Schubert 232, 0, 234, 25, 0, 0, 0, 0, 252, 229, 1071*2b15cb3dSCy Schubert 0, 23, 0, 233, 22, 0, 0, 0, 0, 0, 1072*2b15cb3dSCy Schubert 235, 21, 0, 0, 0, 230, 0, 0, 0, 0, 1073*2b15cb3dSCy Schubert 0, 56, 57, 287, 0, 2, 0, 7, 0, 8, 1074*2b15cb3dSCy Schubert 0, 9, 10, 13, 11, 12, 14, 15, 16, 17, 1075*2b15cb3dSCy Schubert 18, 0, 0, 0, 215, 0, 216, 19, 0, 5, 1076*2b15cb3dSCy Schubert 62, 63, 64, 195, 196, 197, 198, 201, 199, 200, 1077*2b15cb3dSCy Schubert 202, 190, 192, 193, 194, 154, 155, 156, 126, 152, 1078*2b15cb3dSCy Schubert 0, 236, 222, 189, 101, 102, 103, 104, 108, 105, 1079*2b15cb3dSCy Schubert 106, 107, 109, 29, 30, 28, 0, 26, 0, 6, 1080*2b15cb3dSCy Schubert 65, 66, 248, 223, 247, 280, 59, 61, 160, 161, 1081*2b15cb3dSCy Schubert 162, 163, 164, 165, 166, 167, 127, 158, 0, 60, 1082*2b15cb3dSCy Schubert 70, 278, 224, 67, 263, 264, 265, 266, 267, 268, 1083*2b15cb3dSCy Schubert 269, 260, 262, 134, 29, 30, 134, 134, 26, 68, 1084*2b15cb3dSCy Schubert 188, 186, 187, 182, 184, 0, 0, 225, 96, 100, 1085*2b15cb3dSCy Schubert 97, 207, 208, 209, 210, 211, 212, 213, 214, 203, 1086*2b15cb3dSCy Schubert 205, 0, 91, 86, 0, 87, 95, 93, 94, 92, 1087*2b15cb3dSCy Schubert 90, 88, 89, 80, 82, 0, 0, 242, 274, 0, 1088*2b15cb3dSCy Schubert 69, 273, 275, 271, 227, 1, 0, 4, 31, 55, 1089*2b15cb3dSCy Schubert 285, 284, 217, 218, 219, 259, 258, 257, 0, 0, 1090*2b15cb3dSCy Schubert 79, 75, 76, 77, 78, 0, 72, 0, 191, 151, 1091*2b15cb3dSCy Schubert 153, 237, 98, 0, 178, 179, 180, 181, 0, 0, 1092*2b15cb3dSCy Schubert 176, 177, 168, 170, 0, 0, 27, 220, 246, 279, 1093*2b15cb3dSCy Schubert 157, 159, 277, 261, 130, 134, 134, 133, 128, 0, 1094*2b15cb3dSCy Schubert 183, 185, 0, 99, 204, 206, 283, 281, 282, 85, 1095*2b15cb3dSCy Schubert 81, 83, 84, 226, 0, 272, 270, 3, 20, 253, 1096*2b15cb3dSCy Schubert 254, 255, 250, 256, 249, 291, 292, 0, 0, 0, 1097*2b15cb3dSCy Schubert 74, 73, 118, 117, 0, 115, 116, 0, 110, 113, 1098*2b15cb3dSCy Schubert 114, 174, 175, 173, 169, 171, 172, 136, 137, 138, 1099*2b15cb3dSCy Schubert 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 1100*2b15cb3dSCy Schubert 149, 150, 135, 131, 132, 134, 241, 0, 0, 243, 1101*2b15cb3dSCy Schubert 0, 37, 38, 39, 54, 47, 49, 48, 51, 40, 1102*2b15cb3dSCy Schubert 41, 42, 43, 50, 52, 44, 32, 33, 36, 34, 1103*2b15cb3dSCy Schubert 0, 35, 0, 0, 0, 0, 294, 0, 289, 0, 1104*2b15cb3dSCy Schubert 111, 125, 121, 123, 119, 120, 122, 124, 112, 129, 1105*2b15cb3dSCy Schubert 240, 239, 245, 244, 0, 45, 46, 53, 0, 288, 1106*2b15cb3dSCy Schubert 286, 293, 0, 290, 276, 297, 0, 0, 0, 0, 1107*2b15cb3dSCy Schubert 0, 299, 0, 0, 295, 298, 296, 0, 0, 304, 1108*2b15cb3dSCy Schubert 305, 306, 307, 308, 0, 0, 0, 300, 0, 302, 1109*2b15cb3dSCy Schubert 0, 301, 303 1110*2b15cb3dSCy Schubert }; 1111*2b15cb3dSCy Schubert 1112*2b15cb3dSCy Schubert /* YYPGOTO[NTERM-NUM]. */ 1113*2b15cb3dSCy Schubert static const yytype_int16 yypgoto[] = 1114*2b15cb3dSCy Schubert { 1115*2b15cb3dSCy Schubert -180, -180, -180, -37, -180, -180, -14, -36, -180, -180, 1116*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 1117*2b15cb3dSCy Schubert -180, -180, -180, -180, -180, -180, 33, -180, -180, -180, 1118*2b15cb3dSCy Schubert -180, -33, -180, -180, -180, -180, -180, -180, -153, -180, 1119*2b15cb3dSCy Schubert -180, 131, -180, -180, 97, -180, -180, -180, -10, -180, 1120*2b15cb3dSCy Schubert -180, -180, -180, 73, -180, -180, 227, -72, -180, -180, 1121*2b15cb3dSCy Schubert -180, -180, 60, -180, -180, -180, -180, -180, -180, -180, 1122*2b15cb3dSCy Schubert -180, -180, -180, -180, 119, -180, -180, -180, -180, -180, 1123*2b15cb3dSCy Schubert -180, 92, -180, -180, 44, -180, -180, 218, 1, -179, 1124*2b15cb3dSCy Schubert -180, -180, -180, -34, -180, -180, -107, -180, -180, -180, 1125*2b15cb3dSCy Schubert -140, -180, -150, -180 1126*2b15cb3dSCy Schubert }; 1127*2b15cb3dSCy Schubert 1128*2b15cb3dSCy Schubert /* YYDEFGOTO[NTERM-NUM]. */ 1129*2b15cb3dSCy Schubert static const yytype_int16 yydefgoto[] = 1130*2b15cb3dSCy Schubert { 1131*2b15cb3dSCy Schubert -1, 54, 55, 56, 57, 58, 125, 117, 118, 278, 1132*2b15cb3dSCy Schubert 346, 347, 348, 349, 350, 351, 352, 59, 60, 61, 1133*2b15cb3dSCy Schubert 62, 82, 226, 227, 63, 193, 194, 195, 196, 64, 1134*2b15cb3dSCy Schubert 168, 112, 232, 298, 299, 300, 368, 65, 254, 322, 1135*2b15cb3dSCy Schubert 98, 99, 100, 136, 137, 138, 66, 242, 243, 244, 1136*2b15cb3dSCy Schubert 245, 67, 163, 164, 165, 68, 91, 92, 93, 94, 1137*2b15cb3dSCy Schubert 69, 179, 180, 181, 70, 71, 72, 73, 102, 167, 1138*2b15cb3dSCy Schubert 371, 273, 329, 123, 124, 74, 75, 284, 218, 76, 1139*2b15cb3dSCy Schubert 151, 152, 204, 200, 201, 202, 142, 126, 269, 212, 1140*2b15cb3dSCy Schubert 77, 78, 287, 288, 289, 355, 356, 387, 357, 390, 1141*2b15cb3dSCy Schubert 391, 404, 405, 406 1142*2b15cb3dSCy Schubert }; 1143*2b15cb3dSCy Schubert 1144*2b15cb3dSCy Schubert /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If 1145*2b15cb3dSCy Schubert positive, shift that token. If negative, reduce the rule whose 1146*2b15cb3dSCy Schubert number is the opposite. If YYTABLE_NINF, syntax error. */ 1147*2b15cb3dSCy Schubert static const yytype_int16 yytable[] = 1148*2b15cb3dSCy Schubert { 1149*2b15cb3dSCy Schubert 116, 158, 265, 257, 258, 198, 292, 153, 279, 375, 1150*2b15cb3dSCy Schubert 169, 266, 197, 293, 327, 389, 294, 272, 206, 228, 1151*2b15cb3dSCy Schubert 95, 361, 160, 157, 113, 394, 114, 1, 353, 210, 1152*2b15cb3dSCy Schubert 215, 228, 79, 267, 144, 145, 2, 285, 286, 353, 1153*2b15cb3dSCy Schubert 3, 4, 5, 362, 208, 154, 209, 155, 6, 7, 1154*2b15cb3dSCy Schubert 216, 80, 146, 295, 81, 8, 9, 211, 101, 10, 1155*2b15cb3dSCy Schubert 127, 119, 11, 12, 120, 305, 13, 280, 121, 281, 1156*2b15cb3dSCy Schubert 122, 140, 141, 217, 161, 14, 285, 286, 380, 15, 1157*2b15cb3dSCy Schubert 143, 159, 247, 328, 296, 16, 166, 17, 170, 115, 1158*2b15cb3dSCy Schubert 147, 399, 400, 401, 402, 403, 18, 19, 203, 205, 1159*2b15cb3dSCy Schubert 20, 233, 323, 324, 21, 22, 96, 230, 23, 24, 1160*2b15cb3dSCy Schubert 207, 97, 249, 115, 213, 214, 219, 25, 376, 148, 1161*2b15cb3dSCy Schubert 363, 251, 231, 246, 252, 249, 156, 364, 162, 255, 1162*2b15cb3dSCy Schubert 26, 27, 28, 256, 115, 263, 199, 29, 268, 259, 1163*2b15cb3dSCy Schubert 234, 235, 236, 237, 365, 297, 30, 261, 262, 291, 1164*2b15cb3dSCy Schubert 31, 271, 32, 274, 33, 34, 276, 282, 277, 301, 1165*2b15cb3dSCy Schubert 290, 302, 326, 303, 35, 36, 37, 38, 39, 40, 1166*2b15cb3dSCy Schubert 41, 42, 369, 330, 43, 359, 44, 358, 283, 360, 1167*2b15cb3dSCy Schubert 383, 370, 149, 45, 373, 374, 377, 150, 46, 47, 1168*2b15cb3dSCy Schubert 48, 366, 49, 50, 367, 379, 51, 52, 2, 382, 1169*2b15cb3dSCy Schubert 378, 386, 3, 4, 5, -6, 53, 384, 389, 392, 1170*2b15cb3dSCy Schubert 6, 7, 388, 393, 397, 396, 409, 8, 9, 411, 1171*2b15cb3dSCy Schubert 410, 10, 398, 325, 11, 12, 270, 171, 13, 229, 1172*2b15cb3dSCy Schubert 83, 412, 304, 250, 84, 238, 260, 14, 103, 264, 1173*2b15cb3dSCy Schubert 85, 15, 248, 253, 275, 139, 306, 16, 381, 17, 1174*2b15cb3dSCy Schubert 395, 239, 172, 354, 408, 0, 240, 241, 18, 19, 1175*2b15cb3dSCy Schubert 0, 0, 20, 0, 0, 0, 21, 22, 0, 173, 1176*2b15cb3dSCy Schubert 23, 24, 174, 0, 399, 400, 401, 402, 403, 25, 1177*2b15cb3dSCy Schubert 0, 0, 220, 407, 0, 0, 0, 0, 0, 0, 1178*2b15cb3dSCy Schubert 86, 372, 26, 27, 28, 0, 104, 0, 0, 29, 1179*2b15cb3dSCy Schubert 105, 0, 0, 0, 221, 0, 0, 222, 30, 0, 1180*2b15cb3dSCy Schubert 0, 0, 31, 0, 32, 0, 33, 34, 0, 0, 1181*2b15cb3dSCy Schubert 0, 0, 0, 87, 88, 0, 35, 36, 37, 38, 1182*2b15cb3dSCy Schubert 39, 40, 41, 42, 0, 0, 43, 0, 44, 0, 1183*2b15cb3dSCy Schubert 89, 182, 0, 0, 175, 45, 0, 183, 0, 184, 1184*2b15cb3dSCy Schubert 46, 47, 48, 0, 49, 50, 106, 2, 51, 52, 1185*2b15cb3dSCy Schubert 0, 3, 4, 5, 385, 0, 0, -6, 53, 6, 1186*2b15cb3dSCy Schubert 7, 90, 176, 177, 0, 185, 8, 9, 178, 0, 1187*2b15cb3dSCy Schubert 10, 0, 0, 11, 12, 0, 0, 13, 223, 224, 1188*2b15cb3dSCy Schubert 0, 0, 0, 0, 0, 225, 14, 0, 0, 0, 1189*2b15cb3dSCy Schubert 15, 107, 0, 0, 0, 0, 16, 0, 17, 108, 1190*2b15cb3dSCy Schubert 0, 0, 109, 0, 186, 0, 187, 18, 19, 0, 1191*2b15cb3dSCy Schubert 0, 20, 188, 0, 189, 21, 22, 190, 0, 23, 1192*2b15cb3dSCy Schubert 24, 0, 110, 0, 331, 0, 0, 111, 25, 0, 1193*2b15cb3dSCy Schubert 0, 0, 332, 0, 0, 0, 0, 0, 0, 191, 1194*2b15cb3dSCy Schubert 192, 26, 27, 28, 0, 0, 0, 0, 29, 0, 1195*2b15cb3dSCy Schubert 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 1196*2b15cb3dSCy Schubert 0, 31, 0, 32, 0, 33, 34, 333, 334, 0, 1197*2b15cb3dSCy Schubert 0, 0, 0, 0, 0, 35, 36, 37, 38, 39, 1198*2b15cb3dSCy Schubert 40, 41, 42, 0, 335, 43, 0, 44, 128, 129, 1199*2b15cb3dSCy Schubert 130, 131, 0, 0, 45, 0, 0, 0, 307, 46, 1200*2b15cb3dSCy Schubert 47, 48, 0, 49, 50, 336, 308, 51, 52, 0, 1201*2b15cb3dSCy Schubert 0, 0, 0, 337, 0, 338, 0, 53, 132, 0, 1202*2b15cb3dSCy Schubert 133, 0, 134, 0, 309, 310, 0, 311, 135, 339, 1203*2b15cb3dSCy Schubert 0, 0, 0, 312, 0, 0, 0, 0, 0, 0, 1204*2b15cb3dSCy Schubert 0, 0, 0, 0, 0, 0, 340, 341, 0, 0, 1205*2b15cb3dSCy Schubert 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1206*2b15cb3dSCy Schubert 313, 314, 0, 0, 315, 316, 0, 317, 318, 319, 1207*2b15cb3dSCy Schubert 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, 1208*2b15cb3dSCy Schubert 342, 0, 343, 0, 0, 0, 0, 344, 0, 0, 1209*2b15cb3dSCy Schubert 0, 345, 0, 0, 0, 0, 0, 0, 0, 0, 1210*2b15cb3dSCy Schubert 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1211*2b15cb3dSCy Schubert 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1212*2b15cb3dSCy Schubert 0, 0, 0, 0, 321 1213*2b15cb3dSCy Schubert }; 1214*2b15cb3dSCy Schubert 1215*2b15cb3dSCy Schubert static const yytype_int16 yycheck[] = 1216*2b15cb3dSCy Schubert { 1217*2b15cb3dSCy Schubert 14, 37, 181, 156, 157, 60, 29, 27, 5, 60, 1218*2b15cb3dSCy Schubert 43, 38, 48, 36, 61, 184, 39, 196, 55, 91, 1219*2b15cb3dSCy Schubert 11, 4, 41, 37, 65, 194, 67, 1, 144, 32, 1220*2b15cb3dSCy Schubert 34, 103, 179, 60, 7, 8, 10, 181, 182, 144, 1221*2b15cb3dSCy Schubert 14, 15, 16, 26, 58, 65, 60, 67, 22, 23, 1222*2b15cb3dSCy Schubert 54, 60, 25, 76, 60, 29, 30, 60, 154, 33, 1223*2b15cb3dSCy Schubert 60, 154, 36, 37, 154, 244, 40, 64, 154, 66, 1224*2b15cb3dSCy Schubert 154, 154, 154, 77, 93, 49, 181, 182, 194, 53, 1225*2b15cb3dSCy Schubert 60, 60, 119, 130, 107, 59, 154, 61, 154, 154, 1226*2b15cb3dSCy Schubert 63, 185, 186, 187, 188, 189, 70, 71, 60, 0, 1227*2b15cb3dSCy Schubert 74, 3, 255, 256, 78, 79, 97, 60, 82, 83, 1228*2b15cb3dSCy Schubert 179, 102, 126, 154, 154, 154, 193, 91, 169, 92, 1229*2b15cb3dSCy Schubert 103, 60, 32, 154, 154, 139, 146, 110, 147, 27, 1230*2b15cb3dSCy Schubert 104, 105, 106, 27, 154, 168, 191, 111, 165, 84, 1231*2b15cb3dSCy Schubert 42, 43, 44, 45, 127, 168, 120, 60, 190, 154, 1232*2b15cb3dSCy Schubert 124, 60, 126, 60, 128, 129, 60, 154, 179, 154, 1233*2b15cb3dSCy Schubert 60, 154, 154, 60, 138, 139, 140, 141, 142, 143, 1234*2b15cb3dSCy Schubert 144, 145, 325, 35, 148, 190, 150, 179, 175, 154, 1235*2b15cb3dSCy Schubert 359, 27, 155, 157, 60, 60, 154, 160, 162, 163, 1236*2b15cb3dSCy Schubert 164, 174, 166, 167, 177, 179, 170, 171, 10, 193, 1237*2b15cb3dSCy Schubert 190, 183, 14, 15, 16, 179, 180, 192, 184, 388, 1238*2b15cb3dSCy Schubert 22, 23, 190, 190, 393, 179, 179, 29, 30, 179, 1239*2b15cb3dSCy Schubert 190, 33, 193, 259, 36, 37, 193, 6, 40, 98, 1240*2b15cb3dSCy Schubert 8, 410, 242, 136, 12, 137, 163, 49, 11, 179, 1241*2b15cb3dSCy Schubert 18, 53, 123, 151, 200, 27, 245, 59, 355, 61, 1242*2b15cb3dSCy Schubert 390, 153, 31, 287, 404, -1, 158, 159, 70, 71, 1243*2b15cb3dSCy Schubert -1, -1, 74, -1, -1, -1, 78, 79, -1, 48, 1244*2b15cb3dSCy Schubert 82, 83, 51, -1, 185, 186, 187, 188, 189, 91, 1245*2b15cb3dSCy Schubert -1, -1, 28, 194, -1, -1, -1, -1, -1, -1, 1246*2b15cb3dSCy Schubert 68, 327, 104, 105, 106, -1, 20, -1, -1, 111, 1247*2b15cb3dSCy Schubert 24, -1, -1, -1, 50, -1, -1, 53, 120, -1, 1248*2b15cb3dSCy Schubert -1, -1, 124, -1, 126, -1, 128, 129, -1, -1, 1249*2b15cb3dSCy Schubert -1, -1, -1, 101, 102, -1, 138, 139, 140, 141, 1250*2b15cb3dSCy Schubert 142, 143, 144, 145, -1, -1, 148, -1, 150, -1, 1251*2b15cb3dSCy Schubert 118, 13, -1, -1, 123, 157, -1, 19, -1, 21, 1252*2b15cb3dSCy Schubert 162, 163, 164, -1, 166, 167, 80, 10, 170, 171, 1253*2b15cb3dSCy Schubert -1, 14, 15, 16, 378, -1, -1, 179, 180, 22, 1254*2b15cb3dSCy Schubert 23, 149, 151, 152, -1, 47, 29, 30, 157, -1, 1255*2b15cb3dSCy Schubert 33, -1, -1, 36, 37, -1, -1, 40, 134, 135, 1256*2b15cb3dSCy Schubert -1, -1, -1, -1, -1, 141, 49, -1, -1, -1, 1257*2b15cb3dSCy Schubert 53, 125, -1, -1, -1, -1, 59, -1, 61, 133, 1258*2b15cb3dSCy Schubert -1, -1, 136, -1, 86, -1, 88, 70, 71, -1, 1259*2b15cb3dSCy Schubert -1, 74, 94, -1, 96, 78, 79, 99, -1, 82, 1260*2b15cb3dSCy Schubert 83, -1, 156, -1, 9, -1, -1, 161, 91, -1, 1261*2b15cb3dSCy Schubert -1, -1, 17, -1, -1, -1, -1, -1, -1, 121, 1262*2b15cb3dSCy Schubert 122, 104, 105, 106, -1, -1, -1, -1, 111, -1, 1263*2b15cb3dSCy Schubert -1, -1, -1, -1, -1, -1, -1, 120, -1, -1, 1264*2b15cb3dSCy Schubert -1, 124, -1, 126, -1, 128, 129, 52, 53, -1, 1265*2b15cb3dSCy Schubert -1, -1, -1, -1, -1, 138, 139, 140, 141, 142, 1266*2b15cb3dSCy Schubert 143, 144, 145, -1, 69, 148, -1, 150, 55, 56, 1267*2b15cb3dSCy Schubert 57, 58, -1, -1, 157, -1, -1, -1, 46, 162, 1268*2b15cb3dSCy Schubert 163, 164, -1, 166, 167, 90, 54, 170, 171, -1, 1269*2b15cb3dSCy Schubert -1, -1, -1, 98, -1, 100, -1, 180, 85, -1, 1270*2b15cb3dSCy Schubert 87, -1, 89, -1, 72, 73, -1, 75, 95, 114, 1271*2b15cb3dSCy Schubert -1, -1, -1, 81, -1, -1, -1, -1, -1, -1, 1272*2b15cb3dSCy Schubert -1, -1, -1, -1, -1, -1, 131, 132, -1, -1, 1273*2b15cb3dSCy Schubert -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1274*2b15cb3dSCy Schubert 108, 109, -1, -1, 112, 113, -1, 115, 116, 117, 1275*2b15cb3dSCy Schubert -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, 1276*2b15cb3dSCy Schubert 165, -1, 167, -1, -1, -1, -1, 172, -1, -1, 1277*2b15cb3dSCy Schubert -1, 176, -1, -1, -1, -1, -1, -1, -1, -1, 1278*2b15cb3dSCy Schubert -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1279*2b15cb3dSCy Schubert -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1280*2b15cb3dSCy Schubert -1, -1, -1, -1, 172 1281*2b15cb3dSCy Schubert }; 1282*2b15cb3dSCy Schubert 1283*2b15cb3dSCy Schubert /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing 1284*2b15cb3dSCy Schubert symbol of state STATE-NUM. */ 1285*2b15cb3dSCy Schubert static const yytype_uint16 yystos[] = 1286*2b15cb3dSCy Schubert { 1287*2b15cb3dSCy Schubert 0, 1, 10, 14, 15, 16, 22, 23, 29, 30, 1288*2b15cb3dSCy Schubert 33, 36, 37, 40, 49, 53, 59, 61, 70, 71, 1289*2b15cb3dSCy Schubert 74, 78, 79, 82, 83, 91, 104, 105, 106, 111, 1290*2b15cb3dSCy Schubert 120, 124, 126, 128, 129, 138, 139, 140, 141, 142, 1291*2b15cb3dSCy Schubert 143, 144, 145, 148, 150, 157, 162, 163, 164, 166, 1292*2b15cb3dSCy Schubert 167, 170, 171, 180, 196, 197, 198, 199, 200, 212, 1293*2b15cb3dSCy Schubert 213, 214, 215, 219, 224, 232, 241, 246, 250, 255, 1294*2b15cb3dSCy Schubert 259, 260, 261, 262, 270, 271, 274, 285, 286, 179, 1295*2b15cb3dSCy Schubert 60, 60, 216, 8, 12, 18, 68, 101, 102, 118, 1296*2b15cb3dSCy Schubert 149, 251, 252, 253, 254, 11, 97, 102, 235, 236, 1297*2b15cb3dSCy Schubert 237, 154, 263, 251, 20, 24, 80, 125, 133, 136, 1298*2b15cb3dSCy Schubert 156, 161, 226, 65, 67, 154, 201, 202, 203, 154, 1299*2b15cb3dSCy Schubert 154, 154, 154, 268, 269, 201, 282, 60, 55, 56, 1300*2b15cb3dSCy Schubert 57, 58, 85, 87, 89, 95, 238, 239, 240, 282, 1301*2b15cb3dSCy Schubert 154, 154, 281, 60, 7, 8, 25, 63, 92, 155, 1302*2b15cb3dSCy Schubert 160, 275, 276, 27, 65, 67, 146, 201, 202, 60, 1303*2b15cb3dSCy Schubert 41, 93, 147, 247, 248, 249, 154, 264, 225, 226, 1304*2b15cb3dSCy Schubert 154, 6, 31, 48, 51, 123, 151, 152, 157, 256, 1305*2b15cb3dSCy Schubert 257, 258, 13, 19, 21, 47, 86, 88, 94, 96, 1306*2b15cb3dSCy Schubert 99, 121, 122, 220, 221, 222, 223, 202, 60, 191, 1307*2b15cb3dSCy Schubert 278, 279, 280, 60, 277, 0, 198, 179, 201, 201, 1308*2b15cb3dSCy Schubert 32, 60, 284, 154, 154, 34, 54, 77, 273, 193, 1309*2b15cb3dSCy Schubert 28, 50, 53, 134, 135, 141, 217, 218, 252, 236, 1310*2b15cb3dSCy Schubert 60, 32, 227, 3, 42, 43, 44, 45, 137, 153, 1311*2b15cb3dSCy Schubert 158, 159, 242, 243, 244, 245, 154, 198, 269, 201, 1312*2b15cb3dSCy Schubert 239, 60, 154, 276, 233, 27, 27, 233, 233, 84, 1313*2b15cb3dSCy Schubert 248, 60, 190, 226, 257, 284, 38, 60, 165, 283, 1314*2b15cb3dSCy Schubert 221, 60, 284, 266, 60, 279, 60, 179, 204, 5, 1315*2b15cb3dSCy Schubert 64, 66, 154, 175, 272, 181, 182, 287, 288, 289, 1316*2b15cb3dSCy Schubert 60, 154, 29, 36, 39, 76, 107, 168, 228, 229, 1317*2b15cb3dSCy Schubert 230, 154, 154, 60, 243, 284, 283, 46, 54, 72, 1318*2b15cb3dSCy Schubert 73, 75, 81, 108, 109, 112, 113, 115, 116, 117, 1319*2b15cb3dSCy Schubert 119, 172, 234, 233, 233, 202, 154, 61, 130, 267, 1320*2b15cb3dSCy Schubert 35, 9, 17, 52, 53, 69, 90, 98, 100, 114, 1321*2b15cb3dSCy Schubert 131, 132, 165, 167, 172, 176, 205, 206, 207, 208, 1322*2b15cb3dSCy Schubert 209, 210, 211, 144, 288, 290, 291, 293, 179, 190, 1323*2b15cb3dSCy Schubert 154, 4, 26, 103, 110, 127, 174, 177, 231, 233, 1324*2b15cb3dSCy Schubert 27, 265, 202, 60, 60, 60, 169, 154, 190, 179, 1325*2b15cb3dSCy Schubert 194, 291, 193, 284, 192, 201, 183, 292, 190, 184, 1326*2b15cb3dSCy Schubert 294, 295, 284, 190, 194, 295, 179, 284, 193, 185, 1327*2b15cb3dSCy Schubert 186, 187, 188, 189, 296, 297, 298, 194, 297, 179, 1328*2b15cb3dSCy Schubert 190, 179, 284 1329*2b15cb3dSCy Schubert }; 1330*2b15cb3dSCy Schubert 1331*2b15cb3dSCy Schubert /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ 1332*2b15cb3dSCy Schubert static const yytype_uint16 yyr1[] = 1333*2b15cb3dSCy Schubert { 1334*2b15cb3dSCy Schubert 0, 195, 196, 197, 197, 197, 198, 198, 198, 198, 1335*2b15cb3dSCy Schubert 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 1336*2b15cb3dSCy Schubert 199, 200, 200, 200, 200, 200, 201, 201, 202, 203, 1337*2b15cb3dSCy Schubert 203, 204, 204, 205, 205, 205, 206, 207, 207, 207, 1338*2b15cb3dSCy Schubert 207, 207, 207, 207, 207, 208, 208, 209, 209, 209, 1339*2b15cb3dSCy Schubert 209, 209, 209, 210, 211, 212, 213, 213, 214, 214, 1340*2b15cb3dSCy Schubert 214, 214, 215, 215, 215, 215, 215, 215, 215, 215, 1341*2b15cb3dSCy Schubert 215, 216, 216, 217, 217, 218, 218, 218, 218, 218, 1342*2b15cb3dSCy Schubert 219, 220, 220, 221, 221, 221, 222, 222, 222, 222, 1343*2b15cb3dSCy Schubert 222, 222, 223, 223, 223, 223, 224, 224, 224, 225, 1344*2b15cb3dSCy Schubert 225, 226, 226, 226, 226, 226, 226, 226, 226, 227, 1345*2b15cb3dSCy Schubert 227, 228, 228, 228, 228, 229, 229, 230, 230, 231, 1346*2b15cb3dSCy Schubert 231, 231, 231, 231, 231, 231, 232, 232, 232, 232, 1347*2b15cb3dSCy Schubert 232, 232, 232, 232, 233, 233, 234, 234, 234, 234, 1348*2b15cb3dSCy Schubert 234, 234, 234, 234, 234, 234, 234, 234, 234, 234, 1349*2b15cb3dSCy Schubert 234, 235, 235, 236, 237, 237, 237, 238, 238, 239, 1350*2b15cb3dSCy Schubert 240, 240, 240, 240, 240, 240, 240, 240, 241, 242, 1351*2b15cb3dSCy Schubert 242, 243, 243, 243, 243, 243, 244, 244, 245, 245, 1352*2b15cb3dSCy Schubert 245, 245, 246, 247, 247, 248, 249, 249, 249, 250, 1353*2b15cb3dSCy Schubert 250, 251, 251, 252, 252, 253, 253, 253, 253, 253, 1354*2b15cb3dSCy Schubert 253, 254, 254, 255, 256, 256, 257, 258, 258, 258, 1355*2b15cb3dSCy Schubert 258, 258, 258, 258, 258, 259, 259, 259, 259, 259, 1356*2b15cb3dSCy Schubert 259, 259, 259, 259, 259, 259, 259, 259, 260, 260, 1357*2b15cb3dSCy Schubert 260, 261, 261, 261, 262, 262, 263, 263, 263, 264, 1358*2b15cb3dSCy Schubert 265, 265, 266, 266, 267, 267, 268, 268, 269, 270, 1359*2b15cb3dSCy Schubert 270, 271, 271, 272, 272, 272, 272, 273, 273, 273, 1360*2b15cb3dSCy Schubert 274, 275, 275, 276, 276, 276, 276, 276, 276, 276, 1361*2b15cb3dSCy Schubert 277, 277, 278, 278, 279, 279, 280, 281, 281, 282, 1362*2b15cb3dSCy Schubert 282, 283, 283, 283, 284, 284, 285, 286, 287, 287, 1363*2b15cb3dSCy Schubert 288, 289, 289, 290, 290, 291, 292, 293, 294, 294, 1364*2b15cb3dSCy Schubert 295, 296, 296, 297, 298, 298, 298, 298, 298 1365*2b15cb3dSCy Schubert }; 1366*2b15cb3dSCy Schubert 1367*2b15cb3dSCy Schubert /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ 1368*2b15cb3dSCy Schubert static const yytype_uint8 yyr2[] = 1369*2b15cb3dSCy Schubert { 1370*2b15cb3dSCy Schubert 0, 2, 1, 3, 2, 2, 0, 1, 1, 1, 1371*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1372*2b15cb3dSCy Schubert 3, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1373*2b15cb3dSCy Schubert 1, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1374*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1375*2b15cb3dSCy Schubert 1, 1, 1, 2, 1, 2, 1, 1, 1, 2, 1376*2b15cb3dSCy Schubert 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1377*2b15cb3dSCy Schubert 2, 0, 2, 2, 2, 1, 1, 1, 1, 1, 1378*2b15cb3dSCy Schubert 2, 2, 1, 2, 2, 2, 1, 1, 1, 1, 1379*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 1, 2, 2, 3, 2, 1380*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1381*2b15cb3dSCy Schubert 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1382*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 1, 2, 2, 3, 5, 1383*2b15cb3dSCy Schubert 3, 4, 4, 3, 0, 2, 1, 1, 1, 1, 1384*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1385*2b15cb3dSCy Schubert 1, 2, 1, 2, 1, 1, 1, 2, 1, 2, 1386*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 1387*2b15cb3dSCy Schubert 1, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1388*2b15cb3dSCy Schubert 1, 1, 2, 2, 1, 2, 1, 1, 1, 2, 1389*2b15cb3dSCy Schubert 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1390*2b15cb3dSCy Schubert 1, 1, 1, 2, 2, 1, 2, 1, 1, 1, 1391*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1392*2b15cb3dSCy Schubert 3, 1, 2, 2, 2, 2, 3, 2, 1, 1, 1393*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 1, 1, 2, 0, 4, 1394*2b15cb3dSCy Schubert 1, 0, 0, 2, 2, 2, 2, 1, 1, 3, 1395*2b15cb3dSCy Schubert 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1396*2b15cb3dSCy Schubert 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1397*2b15cb3dSCy Schubert 2, 1, 2, 1, 1, 1, 5, 2, 1, 2, 1398*2b15cb3dSCy Schubert 1, 1, 1, 1, 1, 1, 5, 1, 3, 2, 1399*2b15cb3dSCy Schubert 3, 1, 1, 2, 1, 5, 4, 3, 2, 1, 1400*2b15cb3dSCy Schubert 6, 3, 2, 3, 1, 1, 1, 1, 1 1401*2b15cb3dSCy Schubert }; 1402*2b15cb3dSCy Schubert 1403*2b15cb3dSCy Schubert 1404*2b15cb3dSCy Schubert #define yyerrok (yyerrstatus = 0) 1405*2b15cb3dSCy Schubert #define yyclearin (yychar = YYEMPTY) 1406*2b15cb3dSCy Schubert #define YYEMPTY (-2) 1407*2b15cb3dSCy Schubert #define YYEOF 0 1408*2b15cb3dSCy Schubert 1409*2b15cb3dSCy Schubert #define YYACCEPT goto yyacceptlab 1410*2b15cb3dSCy Schubert #define YYABORT goto yyabortlab 1411*2b15cb3dSCy Schubert #define YYERROR goto yyerrorlab 1412*2b15cb3dSCy Schubert 1413*2b15cb3dSCy Schubert 1414*2b15cb3dSCy Schubert #define YYRECOVERING() (!!yyerrstatus) 1415*2b15cb3dSCy Schubert 1416*2b15cb3dSCy Schubert #define YYBACKUP(Token, Value) \ 1417*2b15cb3dSCy Schubert do \ 1418*2b15cb3dSCy Schubert if (yychar == YYEMPTY) \ 1419*2b15cb3dSCy Schubert { \ 1420*2b15cb3dSCy Schubert yychar = (Token); \ 1421*2b15cb3dSCy Schubert yylval = (Value); \ 1422*2b15cb3dSCy Schubert YYPOPSTACK (yylen); \ 1423*2b15cb3dSCy Schubert yystate = *yyssp; \ 1424*2b15cb3dSCy Schubert goto yybackup; \ 1425*2b15cb3dSCy Schubert } \ 1426*2b15cb3dSCy Schubert else \ 1427*2b15cb3dSCy Schubert { \ 1428*2b15cb3dSCy Schubert yyerror (ip_file, YY_("syntax error: cannot back up")); \ 1429*2b15cb3dSCy Schubert YYERROR; \ 1430*2b15cb3dSCy Schubert } \ 1431*2b15cb3dSCy Schubert while (0) 1432*2b15cb3dSCy Schubert 1433*2b15cb3dSCy Schubert /* Error token number */ 1434*2b15cb3dSCy Schubert #define YYTERROR 1 1435*2b15cb3dSCy Schubert #define YYERRCODE 256 1436*2b15cb3dSCy Schubert 1437*2b15cb3dSCy Schubert 1438*2b15cb3dSCy Schubert 1439*2b15cb3dSCy Schubert /* Enable debugging if requested. */ 1440*2b15cb3dSCy Schubert #if YYDEBUG 1441*2b15cb3dSCy Schubert 1442*2b15cb3dSCy Schubert # ifndef YYFPRINTF 1443*2b15cb3dSCy Schubert # include <stdio.h> /* INFRINGES ON USER NAME SPACE */ 1444*2b15cb3dSCy Schubert # define YYFPRINTF fprintf 1445*2b15cb3dSCy Schubert # endif 1446*2b15cb3dSCy Schubert 1447*2b15cb3dSCy Schubert # define YYDPRINTF(Args) \ 1448*2b15cb3dSCy Schubert do { \ 1449*2b15cb3dSCy Schubert if (yydebug) \ 1450*2b15cb3dSCy Schubert YYFPRINTF Args; \ 1451*2b15cb3dSCy Schubert } while (0) 1452*2b15cb3dSCy Schubert 1453*2b15cb3dSCy Schubert /* This macro is provided for backward compatibility. */ 1454*2b15cb3dSCy Schubert #ifndef YY_LOCATION_PRINT 1455*2b15cb3dSCy Schubert # define YY_LOCATION_PRINT(File, Loc) ((void) 0) 1456*2b15cb3dSCy Schubert #endif 1457*2b15cb3dSCy Schubert 1458*2b15cb3dSCy Schubert 1459*2b15cb3dSCy Schubert # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ 1460*2b15cb3dSCy Schubert do { \ 1461*2b15cb3dSCy Schubert if (yydebug) \ 1462*2b15cb3dSCy Schubert { \ 1463*2b15cb3dSCy Schubert YYFPRINTF (stderr, "%s ", Title); \ 1464*2b15cb3dSCy Schubert yy_symbol_print (stderr, \ 1465*2b15cb3dSCy Schubert Type, Value, ip_file); \ 1466*2b15cb3dSCy Schubert YYFPRINTF (stderr, "\n"); \ 1467*2b15cb3dSCy Schubert } \ 1468*2b15cb3dSCy Schubert } while (0) 1469*2b15cb3dSCy Schubert 1470*2b15cb3dSCy Schubert 1471*2b15cb3dSCy Schubert /*----------------------------------------. 1472*2b15cb3dSCy Schubert | Print this symbol's value on YYOUTPUT. | 1473*2b15cb3dSCy Schubert `----------------------------------------*/ 1474*2b15cb3dSCy Schubert 1475*2b15cb3dSCy Schubert static void 1476*2b15cb3dSCy Schubert yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct FILE_INFO *ip_file) 1477*2b15cb3dSCy Schubert { 1478*2b15cb3dSCy Schubert FILE *yyo = yyoutput; 1479*2b15cb3dSCy Schubert YYUSE (yyo); 1480*2b15cb3dSCy Schubert YYUSE (ip_file); 1481*2b15cb3dSCy Schubert if (!yyvaluep) 1482*2b15cb3dSCy Schubert return; 1483*2b15cb3dSCy Schubert # ifdef YYPRINT 1484*2b15cb3dSCy Schubert if (yytype < YYNTOKENS) 1485*2b15cb3dSCy Schubert YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); 1486*2b15cb3dSCy Schubert # endif 1487*2b15cb3dSCy Schubert YYUSE (yytype); 1488*2b15cb3dSCy Schubert } 1489*2b15cb3dSCy Schubert 1490*2b15cb3dSCy Schubert 1491*2b15cb3dSCy Schubert /*--------------------------------. 1492*2b15cb3dSCy Schubert | Print this symbol on YYOUTPUT. | 1493*2b15cb3dSCy Schubert `--------------------------------*/ 1494*2b15cb3dSCy Schubert 1495*2b15cb3dSCy Schubert static void 1496*2b15cb3dSCy Schubert yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct FILE_INFO *ip_file) 1497*2b15cb3dSCy Schubert { 1498*2b15cb3dSCy Schubert YYFPRINTF (yyoutput, "%s %s (", 1499*2b15cb3dSCy Schubert yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]); 1500*2b15cb3dSCy Schubert 1501*2b15cb3dSCy Schubert yy_symbol_value_print (yyoutput, yytype, yyvaluep, ip_file); 1502*2b15cb3dSCy Schubert YYFPRINTF (yyoutput, ")"); 1503*2b15cb3dSCy Schubert } 1504*2b15cb3dSCy Schubert 1505*2b15cb3dSCy Schubert /*------------------------------------------------------------------. 1506*2b15cb3dSCy Schubert | yy_stack_print -- Print the state stack from its BOTTOM up to its | 1507*2b15cb3dSCy Schubert | TOP (included). | 1508*2b15cb3dSCy Schubert `------------------------------------------------------------------*/ 1509*2b15cb3dSCy Schubert 1510*2b15cb3dSCy Schubert static void 1511*2b15cb3dSCy Schubert yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) 1512*2b15cb3dSCy Schubert { 1513*2b15cb3dSCy Schubert YYFPRINTF (stderr, "Stack now"); 1514*2b15cb3dSCy Schubert for (; yybottom <= yytop; yybottom++) 1515*2b15cb3dSCy Schubert { 1516*2b15cb3dSCy Schubert int yybot = *yybottom; 1517*2b15cb3dSCy Schubert YYFPRINTF (stderr, " %d", yybot); 1518*2b15cb3dSCy Schubert } 1519*2b15cb3dSCy Schubert YYFPRINTF (stderr, "\n"); 1520*2b15cb3dSCy Schubert } 1521*2b15cb3dSCy Schubert 1522*2b15cb3dSCy Schubert # define YY_STACK_PRINT(Bottom, Top) \ 1523*2b15cb3dSCy Schubert do { \ 1524*2b15cb3dSCy Schubert if (yydebug) \ 1525*2b15cb3dSCy Schubert yy_stack_print ((Bottom), (Top)); \ 1526*2b15cb3dSCy Schubert } while (0) 1527*2b15cb3dSCy Schubert 1528*2b15cb3dSCy Schubert 1529*2b15cb3dSCy Schubert /*------------------------------------------------. 1530*2b15cb3dSCy Schubert | Report that the YYRULE is going to be reduced. | 1531*2b15cb3dSCy Schubert `------------------------------------------------*/ 1532*2b15cb3dSCy Schubert 1533*2b15cb3dSCy Schubert static void 1534*2b15cb3dSCy Schubert yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule, struct FILE_INFO *ip_file) 1535*2b15cb3dSCy Schubert { 1536*2b15cb3dSCy Schubert unsigned long int yylno = yyrline[yyrule]; 1537*2b15cb3dSCy Schubert int yynrhs = yyr2[yyrule]; 1538*2b15cb3dSCy Schubert int yyi; 1539*2b15cb3dSCy Schubert YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", 1540*2b15cb3dSCy Schubert yyrule - 1, yylno); 1541*2b15cb3dSCy Schubert /* The symbols being reduced. */ 1542*2b15cb3dSCy Schubert for (yyi = 0; yyi < yynrhs; yyi++) 1543*2b15cb3dSCy Schubert { 1544*2b15cb3dSCy Schubert YYFPRINTF (stderr, " $%d = ", yyi + 1); 1545*2b15cb3dSCy Schubert yy_symbol_print (stderr, 1546*2b15cb3dSCy Schubert yystos[yyssp[yyi + 1 - yynrhs]], 1547*2b15cb3dSCy Schubert &(yyvsp[(yyi + 1) - (yynrhs)]) 1548*2b15cb3dSCy Schubert , ip_file); 1549*2b15cb3dSCy Schubert YYFPRINTF (stderr, "\n"); 1550*2b15cb3dSCy Schubert } 1551*2b15cb3dSCy Schubert } 1552*2b15cb3dSCy Schubert 1553*2b15cb3dSCy Schubert # define YY_REDUCE_PRINT(Rule) \ 1554*2b15cb3dSCy Schubert do { \ 1555*2b15cb3dSCy Schubert if (yydebug) \ 1556*2b15cb3dSCy Schubert yy_reduce_print (yyssp, yyvsp, Rule, ip_file); \ 1557*2b15cb3dSCy Schubert } while (0) 1558*2b15cb3dSCy Schubert 1559*2b15cb3dSCy Schubert /* Nonzero means print parse trace. It is left uninitialized so that 1560*2b15cb3dSCy Schubert multiple parsers can coexist. */ 1561*2b15cb3dSCy Schubert int yydebug; 1562*2b15cb3dSCy Schubert #else /* !YYDEBUG */ 1563*2b15cb3dSCy Schubert # define YYDPRINTF(Args) 1564*2b15cb3dSCy Schubert # define YY_SYMBOL_PRINT(Title, Type, Value, Location) 1565*2b15cb3dSCy Schubert # define YY_STACK_PRINT(Bottom, Top) 1566*2b15cb3dSCy Schubert # define YY_REDUCE_PRINT(Rule) 1567*2b15cb3dSCy Schubert #endif /* !YYDEBUG */ 1568*2b15cb3dSCy Schubert 1569*2b15cb3dSCy Schubert 1570*2b15cb3dSCy Schubert /* YYINITDEPTH -- initial size of the parser's stacks. */ 1571*2b15cb3dSCy Schubert #ifndef YYINITDEPTH 1572*2b15cb3dSCy Schubert # define YYINITDEPTH 200 1573*2b15cb3dSCy Schubert #endif 1574*2b15cb3dSCy Schubert 1575*2b15cb3dSCy Schubert /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only 1576*2b15cb3dSCy Schubert if the built-in stack extension method is used). 1577*2b15cb3dSCy Schubert 1578*2b15cb3dSCy Schubert Do not make this value too large; the results are undefined if 1579*2b15cb3dSCy Schubert YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) 1580*2b15cb3dSCy Schubert evaluated with infinite-precision integer arithmetic. */ 1581*2b15cb3dSCy Schubert 1582*2b15cb3dSCy Schubert #ifndef YYMAXDEPTH 1583*2b15cb3dSCy Schubert # define YYMAXDEPTH 10000 1584*2b15cb3dSCy Schubert #endif 1585*2b15cb3dSCy Schubert 1586*2b15cb3dSCy Schubert 1587*2b15cb3dSCy Schubert #if YYERROR_VERBOSE 1588*2b15cb3dSCy Schubert 1589*2b15cb3dSCy Schubert # ifndef yystrlen 1590*2b15cb3dSCy Schubert # if defined __GLIBC__ && defined _STRING_H 1591*2b15cb3dSCy Schubert # define yystrlen strlen 1592*2b15cb3dSCy Schubert # else 1593*2b15cb3dSCy Schubert /* Return the length of YYSTR. */ 1594*2b15cb3dSCy Schubert static YYSIZE_T 1595*2b15cb3dSCy Schubert yystrlen (const char *yystr) 1596*2b15cb3dSCy Schubert { 1597*2b15cb3dSCy Schubert YYSIZE_T yylen; 1598*2b15cb3dSCy Schubert for (yylen = 0; yystr[yylen]; yylen++) 1599*2b15cb3dSCy Schubert continue; 1600*2b15cb3dSCy Schubert return yylen; 1601*2b15cb3dSCy Schubert } 1602*2b15cb3dSCy Schubert # endif 1603*2b15cb3dSCy Schubert # endif 1604*2b15cb3dSCy Schubert 1605*2b15cb3dSCy Schubert # ifndef yystpcpy 1606*2b15cb3dSCy Schubert # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE 1607*2b15cb3dSCy Schubert # define yystpcpy stpcpy 1608*2b15cb3dSCy Schubert # else 1609*2b15cb3dSCy Schubert /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in 1610*2b15cb3dSCy Schubert YYDEST. */ 1611*2b15cb3dSCy Schubert static char * 1612*2b15cb3dSCy Schubert yystpcpy (char *yydest, const char *yysrc) 1613*2b15cb3dSCy Schubert { 1614*2b15cb3dSCy Schubert char *yyd = yydest; 1615*2b15cb3dSCy Schubert const char *yys = yysrc; 1616*2b15cb3dSCy Schubert 1617*2b15cb3dSCy Schubert while ((*yyd++ = *yys++) != '\0') 1618*2b15cb3dSCy Schubert continue; 1619*2b15cb3dSCy Schubert 1620*2b15cb3dSCy Schubert return yyd - 1; 1621*2b15cb3dSCy Schubert } 1622*2b15cb3dSCy Schubert # endif 1623*2b15cb3dSCy Schubert # endif 1624*2b15cb3dSCy Schubert 1625*2b15cb3dSCy Schubert # ifndef yytnamerr 1626*2b15cb3dSCy Schubert /* Copy to YYRES the contents of YYSTR after stripping away unnecessary 1627*2b15cb3dSCy Schubert quotes and backslashes, so that it's suitable for yyerror. The 1628*2b15cb3dSCy Schubert heuristic is that double-quoting is unnecessary unless the string 1629*2b15cb3dSCy Schubert contains an apostrophe, a comma, or backslash (other than 1630*2b15cb3dSCy Schubert backslash-backslash). YYSTR is taken from yytname. If YYRES is 1631*2b15cb3dSCy Schubert null, do not copy; instead, return the length of what the result 1632*2b15cb3dSCy Schubert would have been. */ 1633*2b15cb3dSCy Schubert static YYSIZE_T 1634*2b15cb3dSCy Schubert yytnamerr (char *yyres, const char *yystr) 1635*2b15cb3dSCy Schubert { 1636*2b15cb3dSCy Schubert if (*yystr == '"') 1637*2b15cb3dSCy Schubert { 1638*2b15cb3dSCy Schubert YYSIZE_T yyn = 0; 1639*2b15cb3dSCy Schubert char const *yyp = yystr; 1640*2b15cb3dSCy Schubert 1641*2b15cb3dSCy Schubert for (;;) 1642*2b15cb3dSCy Schubert switch (*++yyp) 1643*2b15cb3dSCy Schubert { 1644*2b15cb3dSCy Schubert case '\'': 1645*2b15cb3dSCy Schubert case ',': 1646*2b15cb3dSCy Schubert goto do_not_strip_quotes; 1647*2b15cb3dSCy Schubert 1648*2b15cb3dSCy Schubert case '\\': 1649*2b15cb3dSCy Schubert if (*++yyp != '\\') 1650*2b15cb3dSCy Schubert goto do_not_strip_quotes; 1651*2b15cb3dSCy Schubert /* Fall through. */ 1652*2b15cb3dSCy Schubert default: 1653*2b15cb3dSCy Schubert if (yyres) 1654*2b15cb3dSCy Schubert yyres[yyn] = *yyp; 1655*2b15cb3dSCy Schubert yyn++; 1656*2b15cb3dSCy Schubert break; 1657*2b15cb3dSCy Schubert 1658*2b15cb3dSCy Schubert case '"': 1659*2b15cb3dSCy Schubert if (yyres) 1660*2b15cb3dSCy Schubert yyres[yyn] = '\0'; 1661*2b15cb3dSCy Schubert return yyn; 1662*2b15cb3dSCy Schubert } 1663*2b15cb3dSCy Schubert do_not_strip_quotes: ; 1664*2b15cb3dSCy Schubert } 1665*2b15cb3dSCy Schubert 1666*2b15cb3dSCy Schubert if (! yyres) 1667*2b15cb3dSCy Schubert return yystrlen (yystr); 1668*2b15cb3dSCy Schubert 1669*2b15cb3dSCy Schubert return yystpcpy (yyres, yystr) - yyres; 1670*2b15cb3dSCy Schubert } 1671*2b15cb3dSCy Schubert # endif 1672*2b15cb3dSCy Schubert 1673*2b15cb3dSCy Schubert /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message 1674*2b15cb3dSCy Schubert about the unexpected token YYTOKEN for the state stack whose top is 1675*2b15cb3dSCy Schubert YYSSP. 1676*2b15cb3dSCy Schubert 1677*2b15cb3dSCy Schubert Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is 1678*2b15cb3dSCy Schubert not large enough to hold the message. In that case, also set 1679*2b15cb3dSCy Schubert *YYMSG_ALLOC to the required number of bytes. Return 2 if the 1680*2b15cb3dSCy Schubert required number of bytes is too large to store. */ 1681*2b15cb3dSCy Schubert static int 1682*2b15cb3dSCy Schubert yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, 1683*2b15cb3dSCy Schubert yytype_int16 *yyssp, int yytoken) 1684*2b15cb3dSCy Schubert { 1685*2b15cb3dSCy Schubert YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); 1686*2b15cb3dSCy Schubert YYSIZE_T yysize = yysize0; 1687*2b15cb3dSCy Schubert enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; 1688*2b15cb3dSCy Schubert /* Internationalized format string. */ 1689*2b15cb3dSCy Schubert const char *yyformat = YY_NULLPTR; 1690*2b15cb3dSCy Schubert /* Arguments of yyformat. */ 1691*2b15cb3dSCy Schubert char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; 1692*2b15cb3dSCy Schubert /* Number of reported tokens (one for the "unexpected", one per 1693*2b15cb3dSCy Schubert "expected"). */ 1694*2b15cb3dSCy Schubert int yycount = 0; 1695*2b15cb3dSCy Schubert 1696*2b15cb3dSCy Schubert /* There are many possibilities here to consider: 1697*2b15cb3dSCy Schubert - If this state is a consistent state with a default action, then 1698*2b15cb3dSCy Schubert the only way this function was invoked is if the default action 1699*2b15cb3dSCy Schubert is an error action. In that case, don't check for expected 1700*2b15cb3dSCy Schubert tokens because there are none. 1701*2b15cb3dSCy Schubert - The only way there can be no lookahead present (in yychar) is if 1702*2b15cb3dSCy Schubert this state is a consistent state with a default action. Thus, 1703*2b15cb3dSCy Schubert detecting the absence of a lookahead is sufficient to determine 1704*2b15cb3dSCy Schubert that there is no unexpected or expected token to report. In that 1705*2b15cb3dSCy Schubert case, just report a simple "syntax error". 1706*2b15cb3dSCy Schubert - Don't assume there isn't a lookahead just because this state is a 1707*2b15cb3dSCy Schubert consistent state with a default action. There might have been a 1708*2b15cb3dSCy Schubert previous inconsistent state, consistent state with a non-default 1709*2b15cb3dSCy Schubert action, or user semantic action that manipulated yychar. 1710*2b15cb3dSCy Schubert - Of course, the expected token list depends on states to have 1711*2b15cb3dSCy Schubert correct lookahead information, and it depends on the parser not 1712*2b15cb3dSCy Schubert to perform extra reductions after fetching a lookahead from the 1713*2b15cb3dSCy Schubert scanner and before detecting a syntax error. Thus, state merging 1714*2b15cb3dSCy Schubert (from LALR or IELR) and default reductions corrupt the expected 1715*2b15cb3dSCy Schubert token list. However, the list is correct for canonical LR with 1716*2b15cb3dSCy Schubert one exception: it will still contain any token that will not be 1717*2b15cb3dSCy Schubert accepted due to an error action in a later state. 1718*2b15cb3dSCy Schubert */ 1719*2b15cb3dSCy Schubert if (yytoken != YYEMPTY) 1720*2b15cb3dSCy Schubert { 1721*2b15cb3dSCy Schubert int yyn = yypact[*yyssp]; 1722*2b15cb3dSCy Schubert yyarg[yycount++] = yytname[yytoken]; 1723*2b15cb3dSCy Schubert if (!yypact_value_is_default (yyn)) 1724*2b15cb3dSCy Schubert { 1725*2b15cb3dSCy Schubert /* Start YYX at -YYN if negative to avoid negative indexes in 1726*2b15cb3dSCy Schubert YYCHECK. In other words, skip the first -YYN actions for 1727*2b15cb3dSCy Schubert this state because they are default actions. */ 1728*2b15cb3dSCy Schubert int yyxbegin = yyn < 0 ? -yyn : 0; 1729*2b15cb3dSCy Schubert /* Stay within bounds of both yycheck and yytname. */ 1730*2b15cb3dSCy Schubert int yychecklim = YYLAST - yyn + 1; 1731*2b15cb3dSCy Schubert int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; 1732*2b15cb3dSCy Schubert int yyx; 1733*2b15cb3dSCy Schubert 1734*2b15cb3dSCy Schubert for (yyx = yyxbegin; yyx < yyxend; ++yyx) 1735*2b15cb3dSCy Schubert if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR 1736*2b15cb3dSCy Schubert && !yytable_value_is_error (yytable[yyx + yyn])) 1737*2b15cb3dSCy Schubert { 1738*2b15cb3dSCy Schubert if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) 1739*2b15cb3dSCy Schubert { 1740*2b15cb3dSCy Schubert yycount = 1; 1741*2b15cb3dSCy Schubert yysize = yysize0; 1742*2b15cb3dSCy Schubert break; 1743*2b15cb3dSCy Schubert } 1744*2b15cb3dSCy Schubert yyarg[yycount++] = yytname[yyx]; 1745*2b15cb3dSCy Schubert { 1746*2b15cb3dSCy Schubert YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); 1747*2b15cb3dSCy Schubert if (! (yysize <= yysize1 1748*2b15cb3dSCy Schubert && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) 1749*2b15cb3dSCy Schubert return 2; 1750*2b15cb3dSCy Schubert yysize = yysize1; 1751*2b15cb3dSCy Schubert } 1752*2b15cb3dSCy Schubert } 1753*2b15cb3dSCy Schubert } 1754*2b15cb3dSCy Schubert } 1755*2b15cb3dSCy Schubert 1756*2b15cb3dSCy Schubert switch (yycount) 1757*2b15cb3dSCy Schubert { 1758*2b15cb3dSCy Schubert # define YYCASE_(N, S) \ 1759*2b15cb3dSCy Schubert case N: \ 1760*2b15cb3dSCy Schubert yyformat = S; \ 1761*2b15cb3dSCy Schubert break 1762*2b15cb3dSCy Schubert YYCASE_(0, YY_("syntax error")); 1763*2b15cb3dSCy Schubert YYCASE_(1, YY_("syntax error, unexpected %s")); 1764*2b15cb3dSCy Schubert YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); 1765*2b15cb3dSCy Schubert YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); 1766*2b15cb3dSCy Schubert YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); 1767*2b15cb3dSCy Schubert YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); 1768*2b15cb3dSCy Schubert # undef YYCASE_ 1769*2b15cb3dSCy Schubert } 1770*2b15cb3dSCy Schubert 1771*2b15cb3dSCy Schubert { 1772*2b15cb3dSCy Schubert YYSIZE_T yysize1 = yysize + yystrlen (yyformat); 1773*2b15cb3dSCy Schubert if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) 1774*2b15cb3dSCy Schubert return 2; 1775*2b15cb3dSCy Schubert yysize = yysize1; 1776*2b15cb3dSCy Schubert } 1777*2b15cb3dSCy Schubert 1778*2b15cb3dSCy Schubert if (*yymsg_alloc < yysize) 1779*2b15cb3dSCy Schubert { 1780*2b15cb3dSCy Schubert *yymsg_alloc = 2 * yysize; 1781*2b15cb3dSCy Schubert if (! (yysize <= *yymsg_alloc 1782*2b15cb3dSCy Schubert && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) 1783*2b15cb3dSCy Schubert *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; 1784*2b15cb3dSCy Schubert return 1; 1785*2b15cb3dSCy Schubert } 1786*2b15cb3dSCy Schubert 1787*2b15cb3dSCy Schubert /* Avoid sprintf, as that infringes on the user's name space. 1788*2b15cb3dSCy Schubert Don't have undefined behavior even if the translation 1789*2b15cb3dSCy Schubert produced a string with the wrong number of "%s"s. */ 1790*2b15cb3dSCy Schubert { 1791*2b15cb3dSCy Schubert char *yyp = *yymsg; 1792*2b15cb3dSCy Schubert int yyi = 0; 1793*2b15cb3dSCy Schubert while ((*yyp = *yyformat) != '\0') 1794*2b15cb3dSCy Schubert if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) 1795*2b15cb3dSCy Schubert { 1796*2b15cb3dSCy Schubert yyp += yytnamerr (yyp, yyarg[yyi++]); 1797*2b15cb3dSCy Schubert yyformat += 2; 1798*2b15cb3dSCy Schubert } 1799*2b15cb3dSCy Schubert else 1800*2b15cb3dSCy Schubert { 1801*2b15cb3dSCy Schubert yyp++; 1802*2b15cb3dSCy Schubert yyformat++; 1803*2b15cb3dSCy Schubert } 1804*2b15cb3dSCy Schubert } 1805*2b15cb3dSCy Schubert return 0; 1806*2b15cb3dSCy Schubert } 1807*2b15cb3dSCy Schubert #endif /* YYERROR_VERBOSE */ 1808*2b15cb3dSCy Schubert 1809*2b15cb3dSCy Schubert /*-----------------------------------------------. 1810*2b15cb3dSCy Schubert | Release the memory associated to this symbol. | 1811*2b15cb3dSCy Schubert `-----------------------------------------------*/ 1812*2b15cb3dSCy Schubert 1813*2b15cb3dSCy Schubert static void 1814*2b15cb3dSCy Schubert yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, struct FILE_INFO *ip_file) 1815*2b15cb3dSCy Schubert { 1816*2b15cb3dSCy Schubert YYUSE (yyvaluep); 1817*2b15cb3dSCy Schubert YYUSE (ip_file); 1818*2b15cb3dSCy Schubert if (!yymsg) 1819*2b15cb3dSCy Schubert yymsg = "Deleting"; 1820*2b15cb3dSCy Schubert YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); 1821*2b15cb3dSCy Schubert 1822*2b15cb3dSCy Schubert YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 1823*2b15cb3dSCy Schubert YYUSE (yytype); 1824*2b15cb3dSCy Schubert YY_IGNORE_MAYBE_UNINITIALIZED_END 1825*2b15cb3dSCy Schubert } 1826*2b15cb3dSCy Schubert 1827*2b15cb3dSCy Schubert 1828*2b15cb3dSCy Schubert 1829*2b15cb3dSCy Schubert 1830*2b15cb3dSCy Schubert /* The lookahead symbol. */ 1831*2b15cb3dSCy Schubert int yychar; 1832*2b15cb3dSCy Schubert 1833*2b15cb3dSCy Schubert /* The semantic value of the lookahead symbol. */ 1834*2b15cb3dSCy Schubert YYSTYPE yylval; 1835*2b15cb3dSCy Schubert /* Number of syntax errors so far. */ 1836*2b15cb3dSCy Schubert int yynerrs; 1837*2b15cb3dSCy Schubert 1838*2b15cb3dSCy Schubert 1839*2b15cb3dSCy Schubert /*----------. 1840*2b15cb3dSCy Schubert | yyparse. | 1841*2b15cb3dSCy Schubert `----------*/ 1842*2b15cb3dSCy Schubert 1843*2b15cb3dSCy Schubert int 1844*2b15cb3dSCy Schubert yyparse (struct FILE_INFO *ip_file) 1845*2b15cb3dSCy Schubert { 1846*2b15cb3dSCy Schubert int yystate; 1847*2b15cb3dSCy Schubert /* Number of tokens to shift before error messages enabled. */ 1848*2b15cb3dSCy Schubert int yyerrstatus; 1849*2b15cb3dSCy Schubert 1850*2b15cb3dSCy Schubert /* The stacks and their tools: 1851*2b15cb3dSCy Schubert 'yyss': related to states. 1852*2b15cb3dSCy Schubert 'yyvs': related to semantic values. 1853*2b15cb3dSCy Schubert 1854*2b15cb3dSCy Schubert Refer to the stacks through separate pointers, to allow yyoverflow 1855*2b15cb3dSCy Schubert to reallocate them elsewhere. */ 1856*2b15cb3dSCy Schubert 1857*2b15cb3dSCy Schubert /* The state stack. */ 1858*2b15cb3dSCy Schubert yytype_int16 yyssa[YYINITDEPTH]; 1859*2b15cb3dSCy Schubert yytype_int16 *yyss; 1860*2b15cb3dSCy Schubert yytype_int16 *yyssp; 1861*2b15cb3dSCy Schubert 1862*2b15cb3dSCy Schubert /* The semantic value stack. */ 1863*2b15cb3dSCy Schubert YYSTYPE yyvsa[YYINITDEPTH]; 1864*2b15cb3dSCy Schubert YYSTYPE *yyvs; 1865*2b15cb3dSCy Schubert YYSTYPE *yyvsp; 1866*2b15cb3dSCy Schubert 1867*2b15cb3dSCy Schubert YYSIZE_T yystacksize; 1868*2b15cb3dSCy Schubert 1869*2b15cb3dSCy Schubert int yyn; 1870*2b15cb3dSCy Schubert int yyresult; 1871*2b15cb3dSCy Schubert /* Lookahead token as an internal (translated) token number. */ 1872*2b15cb3dSCy Schubert int yytoken = 0; 1873*2b15cb3dSCy Schubert /* The variables used to return semantic value and location from the 1874*2b15cb3dSCy Schubert action routines. */ 1875*2b15cb3dSCy Schubert YYSTYPE yyval; 1876*2b15cb3dSCy Schubert 1877*2b15cb3dSCy Schubert #if YYERROR_VERBOSE 1878*2b15cb3dSCy Schubert /* Buffer for error messages, and its allocated size. */ 1879*2b15cb3dSCy Schubert char yymsgbuf[128]; 1880*2b15cb3dSCy Schubert char *yymsg = yymsgbuf; 1881*2b15cb3dSCy Schubert YYSIZE_T yymsg_alloc = sizeof yymsgbuf; 1882*2b15cb3dSCy Schubert #endif 1883*2b15cb3dSCy Schubert 1884*2b15cb3dSCy Schubert #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) 1885*2b15cb3dSCy Schubert 1886*2b15cb3dSCy Schubert /* The number of symbols on the RHS of the reduced rule. 1887*2b15cb3dSCy Schubert Keep to zero when no symbol should be popped. */ 1888*2b15cb3dSCy Schubert int yylen = 0; 1889*2b15cb3dSCy Schubert 1890*2b15cb3dSCy Schubert yyssp = yyss = yyssa; 1891*2b15cb3dSCy Schubert yyvsp = yyvs = yyvsa; 1892*2b15cb3dSCy Schubert yystacksize = YYINITDEPTH; 1893*2b15cb3dSCy Schubert 1894*2b15cb3dSCy Schubert YYDPRINTF ((stderr, "Starting parse\n")); 1895*2b15cb3dSCy Schubert 1896*2b15cb3dSCy Schubert yystate = 0; 1897*2b15cb3dSCy Schubert yyerrstatus = 0; 1898*2b15cb3dSCy Schubert yynerrs = 0; 1899*2b15cb3dSCy Schubert yychar = YYEMPTY; /* Cause a token to be read. */ 1900*2b15cb3dSCy Schubert goto yysetstate; 1901*2b15cb3dSCy Schubert 1902*2b15cb3dSCy Schubert /*------------------------------------------------------------. 1903*2b15cb3dSCy Schubert | yynewstate -- Push a new state, which is found in yystate. | 1904*2b15cb3dSCy Schubert `------------------------------------------------------------*/ 1905*2b15cb3dSCy Schubert yynewstate: 1906*2b15cb3dSCy Schubert /* In all cases, when you get here, the value and location stacks 1907*2b15cb3dSCy Schubert have just been pushed. So pushing a state here evens the stacks. */ 1908*2b15cb3dSCy Schubert yyssp++; 1909*2b15cb3dSCy Schubert 1910*2b15cb3dSCy Schubert yysetstate: 1911*2b15cb3dSCy Schubert *yyssp = yystate; 1912*2b15cb3dSCy Schubert 1913*2b15cb3dSCy Schubert if (yyss + yystacksize - 1 <= yyssp) 1914*2b15cb3dSCy Schubert { 1915*2b15cb3dSCy Schubert /* Get the current used size of the three stacks, in elements. */ 1916*2b15cb3dSCy Schubert YYSIZE_T yysize = yyssp - yyss + 1; 1917*2b15cb3dSCy Schubert 1918*2b15cb3dSCy Schubert #ifdef yyoverflow 1919*2b15cb3dSCy Schubert { 1920*2b15cb3dSCy Schubert /* Give user a chance to reallocate the stack. Use copies of 1921*2b15cb3dSCy Schubert these so that the &'s don't force the real ones into 1922*2b15cb3dSCy Schubert memory. */ 1923*2b15cb3dSCy Schubert YYSTYPE *yyvs1 = yyvs; 1924*2b15cb3dSCy Schubert yytype_int16 *yyss1 = yyss; 1925*2b15cb3dSCy Schubert 1926*2b15cb3dSCy Schubert /* Each stack pointer address is followed by the size of the 1927*2b15cb3dSCy Schubert data in use in that stack, in bytes. This used to be a 1928*2b15cb3dSCy Schubert conditional around just the two extra args, but that might 1929*2b15cb3dSCy Schubert be undefined if yyoverflow is a macro. */ 1930*2b15cb3dSCy Schubert yyoverflow (YY_("memory exhausted"), 1931*2b15cb3dSCy Schubert &yyss1, yysize * sizeof (*yyssp), 1932*2b15cb3dSCy Schubert &yyvs1, yysize * sizeof (*yyvsp), 1933*2b15cb3dSCy Schubert &yystacksize); 1934*2b15cb3dSCy Schubert 1935*2b15cb3dSCy Schubert yyss = yyss1; 1936*2b15cb3dSCy Schubert yyvs = yyvs1; 1937*2b15cb3dSCy Schubert } 1938*2b15cb3dSCy Schubert #else /* no yyoverflow */ 1939*2b15cb3dSCy Schubert # ifndef YYSTACK_RELOCATE 1940*2b15cb3dSCy Schubert goto yyexhaustedlab; 1941*2b15cb3dSCy Schubert # else 1942*2b15cb3dSCy Schubert /* Extend the stack our own way. */ 1943*2b15cb3dSCy Schubert if (YYMAXDEPTH <= yystacksize) 1944*2b15cb3dSCy Schubert goto yyexhaustedlab; 1945*2b15cb3dSCy Schubert yystacksize *= 2; 1946*2b15cb3dSCy Schubert if (YYMAXDEPTH < yystacksize) 1947*2b15cb3dSCy Schubert yystacksize = YYMAXDEPTH; 1948*2b15cb3dSCy Schubert 1949*2b15cb3dSCy Schubert { 1950*2b15cb3dSCy Schubert yytype_int16 *yyss1 = yyss; 1951*2b15cb3dSCy Schubert union yyalloc *yyptr = 1952*2b15cb3dSCy Schubert (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); 1953*2b15cb3dSCy Schubert if (! yyptr) 1954*2b15cb3dSCy Schubert goto yyexhaustedlab; 1955*2b15cb3dSCy Schubert YYSTACK_RELOCATE (yyss_alloc, yyss); 1956*2b15cb3dSCy Schubert YYSTACK_RELOCATE (yyvs_alloc, yyvs); 1957*2b15cb3dSCy Schubert # undef YYSTACK_RELOCATE 1958*2b15cb3dSCy Schubert if (yyss1 != yyssa) 1959*2b15cb3dSCy Schubert YYSTACK_FREE (yyss1); 1960*2b15cb3dSCy Schubert } 1961*2b15cb3dSCy Schubert # endif 1962*2b15cb3dSCy Schubert #endif /* no yyoverflow */ 1963*2b15cb3dSCy Schubert 1964*2b15cb3dSCy Schubert yyssp = yyss + yysize - 1; 1965*2b15cb3dSCy Schubert yyvsp = yyvs + yysize - 1; 1966*2b15cb3dSCy Schubert 1967*2b15cb3dSCy Schubert YYDPRINTF ((stderr, "Stack size increased to %lu\n", 1968*2b15cb3dSCy Schubert (unsigned long int) yystacksize)); 1969*2b15cb3dSCy Schubert 1970*2b15cb3dSCy Schubert if (yyss + yystacksize - 1 <= yyssp) 1971*2b15cb3dSCy Schubert YYABORT; 1972*2b15cb3dSCy Schubert } 1973*2b15cb3dSCy Schubert 1974*2b15cb3dSCy Schubert YYDPRINTF ((stderr, "Entering state %d\n", yystate)); 1975*2b15cb3dSCy Schubert 1976*2b15cb3dSCy Schubert if (yystate == YYFINAL) 1977*2b15cb3dSCy Schubert YYACCEPT; 1978*2b15cb3dSCy Schubert 1979*2b15cb3dSCy Schubert goto yybackup; 1980*2b15cb3dSCy Schubert 1981*2b15cb3dSCy Schubert /*-----------. 1982*2b15cb3dSCy Schubert | yybackup. | 1983*2b15cb3dSCy Schubert `-----------*/ 1984*2b15cb3dSCy Schubert yybackup: 1985*2b15cb3dSCy Schubert 1986*2b15cb3dSCy Schubert /* Do appropriate processing given the current state. Read a 1987*2b15cb3dSCy Schubert lookahead token if we need one and don't already have one. */ 1988*2b15cb3dSCy Schubert 1989*2b15cb3dSCy Schubert /* First try to decide what to do without reference to lookahead token. */ 1990*2b15cb3dSCy Schubert yyn = yypact[yystate]; 1991*2b15cb3dSCy Schubert if (yypact_value_is_default (yyn)) 1992*2b15cb3dSCy Schubert goto yydefault; 1993*2b15cb3dSCy Schubert 1994*2b15cb3dSCy Schubert /* Not known => get a lookahead token if don't already have one. */ 1995*2b15cb3dSCy Schubert 1996*2b15cb3dSCy Schubert /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */ 1997*2b15cb3dSCy Schubert if (yychar == YYEMPTY) 1998*2b15cb3dSCy Schubert { 1999*2b15cb3dSCy Schubert YYDPRINTF ((stderr, "Reading a token: ")); 2000*2b15cb3dSCy Schubert yychar = yylex (ip_file); 2001*2b15cb3dSCy Schubert } 2002*2b15cb3dSCy Schubert 2003*2b15cb3dSCy Schubert if (yychar <= YYEOF) 2004*2b15cb3dSCy Schubert { 2005*2b15cb3dSCy Schubert yychar = yytoken = YYEOF; 2006*2b15cb3dSCy Schubert YYDPRINTF ((stderr, "Now at end of input.\n")); 2007*2b15cb3dSCy Schubert } 2008*2b15cb3dSCy Schubert else 2009*2b15cb3dSCy Schubert { 2010*2b15cb3dSCy Schubert yytoken = YYTRANSLATE (yychar); 2011*2b15cb3dSCy Schubert YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); 2012*2b15cb3dSCy Schubert } 2013*2b15cb3dSCy Schubert 2014*2b15cb3dSCy Schubert /* If the proper action on seeing token YYTOKEN is to reduce or to 2015*2b15cb3dSCy Schubert detect an error, take that action. */ 2016*2b15cb3dSCy Schubert yyn += yytoken; 2017*2b15cb3dSCy Schubert if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) 2018*2b15cb3dSCy Schubert goto yydefault; 2019*2b15cb3dSCy Schubert yyn = yytable[yyn]; 2020*2b15cb3dSCy Schubert if (yyn <= 0) 2021*2b15cb3dSCy Schubert { 2022*2b15cb3dSCy Schubert if (yytable_value_is_error (yyn)) 2023*2b15cb3dSCy Schubert goto yyerrlab; 2024*2b15cb3dSCy Schubert yyn = -yyn; 2025*2b15cb3dSCy Schubert goto yyreduce; 2026*2b15cb3dSCy Schubert } 2027*2b15cb3dSCy Schubert 2028*2b15cb3dSCy Schubert /* Count tokens shifted since error; after three, turn off error 2029*2b15cb3dSCy Schubert status. */ 2030*2b15cb3dSCy Schubert if (yyerrstatus) 2031*2b15cb3dSCy Schubert yyerrstatus--; 2032*2b15cb3dSCy Schubert 2033*2b15cb3dSCy Schubert /* Shift the lookahead token. */ 2034*2b15cb3dSCy Schubert YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); 2035*2b15cb3dSCy Schubert 2036*2b15cb3dSCy Schubert /* Discard the shifted token. */ 2037*2b15cb3dSCy Schubert yychar = YYEMPTY; 2038*2b15cb3dSCy Schubert 2039*2b15cb3dSCy Schubert yystate = yyn; 2040*2b15cb3dSCy Schubert YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 2041*2b15cb3dSCy Schubert *++yyvsp = yylval; 2042*2b15cb3dSCy Schubert YY_IGNORE_MAYBE_UNINITIALIZED_END 2043*2b15cb3dSCy Schubert 2044*2b15cb3dSCy Schubert goto yynewstate; 2045*2b15cb3dSCy Schubert 2046*2b15cb3dSCy Schubert 2047*2b15cb3dSCy Schubert /*-----------------------------------------------------------. 2048*2b15cb3dSCy Schubert | yydefault -- do the default action for the current state. | 2049*2b15cb3dSCy Schubert `-----------------------------------------------------------*/ 2050*2b15cb3dSCy Schubert yydefault: 2051*2b15cb3dSCy Schubert yyn = yydefact[yystate]; 2052*2b15cb3dSCy Schubert if (yyn == 0) 2053*2b15cb3dSCy Schubert goto yyerrlab; 2054*2b15cb3dSCy Schubert goto yyreduce; 2055*2b15cb3dSCy Schubert 2056*2b15cb3dSCy Schubert 2057*2b15cb3dSCy Schubert /*-----------------------------. 2058*2b15cb3dSCy Schubert | yyreduce -- Do a reduction. | 2059*2b15cb3dSCy Schubert `-----------------------------*/ 2060*2b15cb3dSCy Schubert yyreduce: 2061*2b15cb3dSCy Schubert /* yyn is the number of a rule to reduce with. */ 2062*2b15cb3dSCy Schubert yylen = yyr2[yyn]; 2063*2b15cb3dSCy Schubert 2064*2b15cb3dSCy Schubert /* If YYLEN is nonzero, implement the default value of the action: 2065*2b15cb3dSCy Schubert '$$ = $1'. 2066*2b15cb3dSCy Schubert 2067*2b15cb3dSCy Schubert Otherwise, the following line sets YYVAL to garbage. 2068*2b15cb3dSCy Schubert This behavior is undocumented and Bison 2069*2b15cb3dSCy Schubert users should not rely upon it. Assigning to YYVAL 2070*2b15cb3dSCy Schubert unconditionally makes the parser a bit smaller, and it avoids a 2071*2b15cb3dSCy Schubert GCC warning that YYVAL may be used uninitialized. */ 2072*2b15cb3dSCy Schubert yyval = yyvsp[1-yylen]; 2073*2b15cb3dSCy Schubert 2074*2b15cb3dSCy Schubert 2075*2b15cb3dSCy Schubert YY_REDUCE_PRINT (yyn); 2076*2b15cb3dSCy Schubert switch (yyn) 2077*2b15cb3dSCy Schubert { 2078*2b15cb3dSCy Schubert case 5: 2079*2b15cb3dSCy Schubert #line 371 "ntp_parser.y" /* yacc.c:1646 */ 2080*2b15cb3dSCy Schubert { 2081*2b15cb3dSCy Schubert /* I will need to incorporate much more fine grained 2082*2b15cb3dSCy Schubert * error messages. The following should suffice for 2083*2b15cb3dSCy Schubert * the time being. 2084*2b15cb3dSCy Schubert */ 2085*2b15cb3dSCy Schubert msyslog(LOG_ERR, 2086*2b15cb3dSCy Schubert "syntax error in %s line %d, column %d", 2087*2b15cb3dSCy Schubert ip_file->fname, 2088*2b15cb3dSCy Schubert ip_file->err_line_no, 2089*2b15cb3dSCy Schubert ip_file->err_col_no); 2090*2b15cb3dSCy Schubert } 2091*2b15cb3dSCy Schubert #line 2092 "ntp_parser.c" /* yacc.c:1646 */ 2092*2b15cb3dSCy Schubert break; 2093*2b15cb3dSCy Schubert 2094*2b15cb3dSCy Schubert case 20: 2095*2b15cb3dSCy Schubert #line 406 "ntp_parser.y" /* yacc.c:1646 */ 2096*2b15cb3dSCy Schubert { 2097*2b15cb3dSCy Schubert peer_node *my_node; 2098*2b15cb3dSCy Schubert 2099*2b15cb3dSCy Schubert my_node = create_peer_node((yyvsp[-2].Integer), (yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo)); 2100*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.peers, my_node); 2101*2b15cb3dSCy Schubert } 2102*2b15cb3dSCy Schubert #line 2103 "ntp_parser.c" /* yacc.c:1646 */ 2103*2b15cb3dSCy Schubert break; 2104*2b15cb3dSCy Schubert 2105*2b15cb3dSCy Schubert case 27: 2106*2b15cb3dSCy Schubert #line 425 "ntp_parser.y" /* yacc.c:1646 */ 2107*2b15cb3dSCy Schubert { (yyval.Address_node) = create_address_node((yyvsp[0].String), (yyvsp[-1].Integer)); } 2108*2b15cb3dSCy Schubert #line 2109 "ntp_parser.c" /* yacc.c:1646 */ 2109*2b15cb3dSCy Schubert break; 2110*2b15cb3dSCy Schubert 2111*2b15cb3dSCy Schubert case 28: 2112*2b15cb3dSCy Schubert #line 430 "ntp_parser.y" /* yacc.c:1646 */ 2113*2b15cb3dSCy Schubert { (yyval.Address_node) = create_address_node((yyvsp[0].String), AF_UNSPEC); } 2114*2b15cb3dSCy Schubert #line 2115 "ntp_parser.c" /* yacc.c:1646 */ 2115*2b15cb3dSCy Schubert break; 2116*2b15cb3dSCy Schubert 2117*2b15cb3dSCy Schubert case 29: 2118*2b15cb3dSCy Schubert #line 435 "ntp_parser.y" /* yacc.c:1646 */ 2119*2b15cb3dSCy Schubert { (yyval.Integer) = AF_INET; } 2120*2b15cb3dSCy Schubert #line 2121 "ntp_parser.c" /* yacc.c:1646 */ 2121*2b15cb3dSCy Schubert break; 2122*2b15cb3dSCy Schubert 2123*2b15cb3dSCy Schubert case 30: 2124*2b15cb3dSCy Schubert #line 437 "ntp_parser.y" /* yacc.c:1646 */ 2125*2b15cb3dSCy Schubert { (yyval.Integer) = AF_INET6; } 2126*2b15cb3dSCy Schubert #line 2127 "ntp_parser.c" /* yacc.c:1646 */ 2127*2b15cb3dSCy Schubert break; 2128*2b15cb3dSCy Schubert 2129*2b15cb3dSCy Schubert case 31: 2130*2b15cb3dSCy Schubert #line 442 "ntp_parser.y" /* yacc.c:1646 */ 2131*2b15cb3dSCy Schubert { (yyval.Attr_val_fifo) = NULL; } 2132*2b15cb3dSCy Schubert #line 2133 "ntp_parser.c" /* yacc.c:1646 */ 2133*2b15cb3dSCy Schubert break; 2134*2b15cb3dSCy Schubert 2135*2b15cb3dSCy Schubert case 32: 2136*2b15cb3dSCy Schubert #line 444 "ntp_parser.y" /* yacc.c:1646 */ 2137*2b15cb3dSCy Schubert { 2138*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2139*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2140*2b15cb3dSCy Schubert } 2141*2b15cb3dSCy Schubert #line 2142 "ntp_parser.c" /* yacc.c:1646 */ 2142*2b15cb3dSCy Schubert break; 2143*2b15cb3dSCy Schubert 2144*2b15cb3dSCy Schubert case 36: 2145*2b15cb3dSCy Schubert #line 458 "ntp_parser.y" /* yacc.c:1646 */ 2146*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); } 2147*2b15cb3dSCy Schubert #line 2148 "ntp_parser.c" /* yacc.c:1646 */ 2148*2b15cb3dSCy Schubert break; 2149*2b15cb3dSCy Schubert 2150*2b15cb3dSCy Schubert case 45: 2151*2b15cb3dSCy Schubert #line 474 "ntp_parser.y" /* yacc.c:1646 */ 2152*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2153*2b15cb3dSCy Schubert #line 2154 "ntp_parser.c" /* yacc.c:1646 */ 2154*2b15cb3dSCy Schubert break; 2155*2b15cb3dSCy Schubert 2156*2b15cb3dSCy Schubert case 46: 2157*2b15cb3dSCy Schubert #line 476 "ntp_parser.y" /* yacc.c:1646 */ 2158*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_uval((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2159*2b15cb3dSCy Schubert #line 2160 "ntp_parser.c" /* yacc.c:1646 */ 2160*2b15cb3dSCy Schubert break; 2161*2b15cb3dSCy Schubert 2162*2b15cb3dSCy Schubert case 53: 2163*2b15cb3dSCy Schubert #line 490 "ntp_parser.y" /* yacc.c:1646 */ 2164*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } 2165*2b15cb3dSCy Schubert #line 2166 "ntp_parser.c" /* yacc.c:1646 */ 2166*2b15cb3dSCy Schubert break; 2167*2b15cb3dSCy Schubert 2168*2b15cb3dSCy Schubert case 55: 2169*2b15cb3dSCy Schubert #line 504 "ntp_parser.y" /* yacc.c:1646 */ 2170*2b15cb3dSCy Schubert { 2171*2b15cb3dSCy Schubert unpeer_node *my_node; 2172*2b15cb3dSCy Schubert 2173*2b15cb3dSCy Schubert my_node = create_unpeer_node((yyvsp[0].Address_node)); 2174*2b15cb3dSCy Schubert if (my_node) 2175*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.unpeers, my_node); 2176*2b15cb3dSCy Schubert } 2177*2b15cb3dSCy Schubert #line 2178 "ntp_parser.c" /* yacc.c:1646 */ 2178*2b15cb3dSCy Schubert break; 2179*2b15cb3dSCy Schubert 2180*2b15cb3dSCy Schubert case 58: 2181*2b15cb3dSCy Schubert #line 525 "ntp_parser.y" /* yacc.c:1646 */ 2182*2b15cb3dSCy Schubert { cfgt.broadcastclient = 1; } 2183*2b15cb3dSCy Schubert #line 2184 "ntp_parser.c" /* yacc.c:1646 */ 2184*2b15cb3dSCy Schubert break; 2185*2b15cb3dSCy Schubert 2186*2b15cb3dSCy Schubert case 59: 2187*2b15cb3dSCy Schubert #line 527 "ntp_parser.y" /* yacc.c:1646 */ 2188*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.manycastserver, (yyvsp[0].Address_fifo)); } 2189*2b15cb3dSCy Schubert #line 2190 "ntp_parser.c" /* yacc.c:1646 */ 2190*2b15cb3dSCy Schubert break; 2191*2b15cb3dSCy Schubert 2192*2b15cb3dSCy Schubert case 60: 2193*2b15cb3dSCy Schubert #line 529 "ntp_parser.y" /* yacc.c:1646 */ 2194*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.multicastclient, (yyvsp[0].Address_fifo)); } 2195*2b15cb3dSCy Schubert #line 2196 "ntp_parser.c" /* yacc.c:1646 */ 2196*2b15cb3dSCy Schubert break; 2197*2b15cb3dSCy Schubert 2198*2b15cb3dSCy Schubert case 61: 2199*2b15cb3dSCy Schubert #line 531 "ntp_parser.y" /* yacc.c:1646 */ 2200*2b15cb3dSCy Schubert { cfgt.mdnstries = (yyvsp[0].Integer); } 2201*2b15cb3dSCy Schubert #line 2202 "ntp_parser.c" /* yacc.c:1646 */ 2202*2b15cb3dSCy Schubert break; 2203*2b15cb3dSCy Schubert 2204*2b15cb3dSCy Schubert case 62: 2205*2b15cb3dSCy Schubert #line 542 "ntp_parser.y" /* yacc.c:1646 */ 2206*2b15cb3dSCy Schubert { 2207*2b15cb3dSCy Schubert attr_val *atrv; 2208*2b15cb3dSCy Schubert 2209*2b15cb3dSCy Schubert atrv = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); 2210*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.vars, atrv); 2211*2b15cb3dSCy Schubert } 2212*2b15cb3dSCy Schubert #line 2213 "ntp_parser.c" /* yacc.c:1646 */ 2213*2b15cb3dSCy Schubert break; 2214*2b15cb3dSCy Schubert 2215*2b15cb3dSCy Schubert case 63: 2216*2b15cb3dSCy Schubert #line 549 "ntp_parser.y" /* yacc.c:1646 */ 2217*2b15cb3dSCy Schubert { cfgt.auth.control_key = (yyvsp[0].Integer); } 2218*2b15cb3dSCy Schubert #line 2219 "ntp_parser.c" /* yacc.c:1646 */ 2219*2b15cb3dSCy Schubert break; 2220*2b15cb3dSCy Schubert 2221*2b15cb3dSCy Schubert case 64: 2222*2b15cb3dSCy Schubert #line 551 "ntp_parser.y" /* yacc.c:1646 */ 2223*2b15cb3dSCy Schubert { 2224*2b15cb3dSCy Schubert cfgt.auth.cryptosw++; 2225*2b15cb3dSCy Schubert CONCAT_G_FIFOS(cfgt.auth.crypto_cmd_list, (yyvsp[0].Attr_val_fifo)); 2226*2b15cb3dSCy Schubert } 2227*2b15cb3dSCy Schubert #line 2228 "ntp_parser.c" /* yacc.c:1646 */ 2228*2b15cb3dSCy Schubert break; 2229*2b15cb3dSCy Schubert 2230*2b15cb3dSCy Schubert case 65: 2231*2b15cb3dSCy Schubert #line 556 "ntp_parser.y" /* yacc.c:1646 */ 2232*2b15cb3dSCy Schubert { cfgt.auth.keys = (yyvsp[0].String); } 2233*2b15cb3dSCy Schubert #line 2234 "ntp_parser.c" /* yacc.c:1646 */ 2234*2b15cb3dSCy Schubert break; 2235*2b15cb3dSCy Schubert 2236*2b15cb3dSCy Schubert case 66: 2237*2b15cb3dSCy Schubert #line 558 "ntp_parser.y" /* yacc.c:1646 */ 2238*2b15cb3dSCy Schubert { cfgt.auth.keysdir = (yyvsp[0].String); } 2239*2b15cb3dSCy Schubert #line 2240 "ntp_parser.c" /* yacc.c:1646 */ 2240*2b15cb3dSCy Schubert break; 2241*2b15cb3dSCy Schubert 2242*2b15cb3dSCy Schubert case 67: 2243*2b15cb3dSCy Schubert #line 560 "ntp_parser.y" /* yacc.c:1646 */ 2244*2b15cb3dSCy Schubert { cfgt.auth.request_key = (yyvsp[0].Integer); } 2245*2b15cb3dSCy Schubert #line 2246 "ntp_parser.c" /* yacc.c:1646 */ 2246*2b15cb3dSCy Schubert break; 2247*2b15cb3dSCy Schubert 2248*2b15cb3dSCy Schubert case 68: 2249*2b15cb3dSCy Schubert #line 562 "ntp_parser.y" /* yacc.c:1646 */ 2250*2b15cb3dSCy Schubert { cfgt.auth.revoke = (yyvsp[0].Integer); } 2251*2b15cb3dSCy Schubert #line 2252 "ntp_parser.c" /* yacc.c:1646 */ 2252*2b15cb3dSCy Schubert break; 2253*2b15cb3dSCy Schubert 2254*2b15cb3dSCy Schubert case 69: 2255*2b15cb3dSCy Schubert #line 564 "ntp_parser.y" /* yacc.c:1646 */ 2256*2b15cb3dSCy Schubert { 2257*2b15cb3dSCy Schubert cfgt.auth.trusted_key_list = (yyvsp[0].Attr_val_fifo); 2258*2b15cb3dSCy Schubert 2259*2b15cb3dSCy Schubert // if (!cfgt.auth.trusted_key_list) 2260*2b15cb3dSCy Schubert // cfgt.auth.trusted_key_list = $2; 2261*2b15cb3dSCy Schubert // else 2262*2b15cb3dSCy Schubert // LINK_SLIST(cfgt.auth.trusted_key_list, $2, link); 2263*2b15cb3dSCy Schubert } 2264*2b15cb3dSCy Schubert #line 2265 "ntp_parser.c" /* yacc.c:1646 */ 2265*2b15cb3dSCy Schubert break; 2266*2b15cb3dSCy Schubert 2267*2b15cb3dSCy Schubert case 70: 2268*2b15cb3dSCy Schubert #line 573 "ntp_parser.y" /* yacc.c:1646 */ 2269*2b15cb3dSCy Schubert { cfgt.auth.ntp_signd_socket = (yyvsp[0].String); } 2270*2b15cb3dSCy Schubert #line 2271 "ntp_parser.c" /* yacc.c:1646 */ 2271*2b15cb3dSCy Schubert break; 2272*2b15cb3dSCy Schubert 2273*2b15cb3dSCy Schubert case 71: 2274*2b15cb3dSCy Schubert #line 578 "ntp_parser.y" /* yacc.c:1646 */ 2275*2b15cb3dSCy Schubert { (yyval.Attr_val_fifo) = NULL; } 2276*2b15cb3dSCy Schubert #line 2277 "ntp_parser.c" /* yacc.c:1646 */ 2277*2b15cb3dSCy Schubert break; 2278*2b15cb3dSCy Schubert 2279*2b15cb3dSCy Schubert case 72: 2280*2b15cb3dSCy Schubert #line 580 "ntp_parser.y" /* yacc.c:1646 */ 2281*2b15cb3dSCy Schubert { 2282*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2283*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2284*2b15cb3dSCy Schubert } 2285*2b15cb3dSCy Schubert #line 2286 "ntp_parser.c" /* yacc.c:1646 */ 2286*2b15cb3dSCy Schubert break; 2287*2b15cb3dSCy Schubert 2288*2b15cb3dSCy Schubert case 73: 2289*2b15cb3dSCy Schubert #line 588 "ntp_parser.y" /* yacc.c:1646 */ 2290*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } 2291*2b15cb3dSCy Schubert #line 2292 "ntp_parser.c" /* yacc.c:1646 */ 2292*2b15cb3dSCy Schubert break; 2293*2b15cb3dSCy Schubert 2294*2b15cb3dSCy Schubert case 74: 2295*2b15cb3dSCy Schubert #line 590 "ntp_parser.y" /* yacc.c:1646 */ 2296*2b15cb3dSCy Schubert { 2297*2b15cb3dSCy Schubert (yyval.Attr_val) = NULL; 2298*2b15cb3dSCy Schubert cfgt.auth.revoke = (yyvsp[0].Integer); 2299*2b15cb3dSCy Schubert msyslog(LOG_WARNING, 2300*2b15cb3dSCy Schubert "'crypto revoke %d' is deprecated, " 2301*2b15cb3dSCy Schubert "please use 'revoke %d' instead.", 2302*2b15cb3dSCy Schubert cfgt.auth.revoke, cfgt.auth.revoke); 2303*2b15cb3dSCy Schubert } 2304*2b15cb3dSCy Schubert #line 2305 "ntp_parser.c" /* yacc.c:1646 */ 2305*2b15cb3dSCy Schubert break; 2306*2b15cb3dSCy Schubert 2307*2b15cb3dSCy Schubert case 80: 2308*2b15cb3dSCy Schubert #line 615 "ntp_parser.y" /* yacc.c:1646 */ 2309*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.orphan_cmds, (yyvsp[0].Attr_val_fifo)); } 2310*2b15cb3dSCy Schubert #line 2311 "ntp_parser.c" /* yacc.c:1646 */ 2311*2b15cb3dSCy Schubert break; 2312*2b15cb3dSCy Schubert 2313*2b15cb3dSCy Schubert case 81: 2314*2b15cb3dSCy Schubert #line 620 "ntp_parser.y" /* yacc.c:1646 */ 2315*2b15cb3dSCy Schubert { 2316*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2317*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2318*2b15cb3dSCy Schubert } 2319*2b15cb3dSCy Schubert #line 2320 "ntp_parser.c" /* yacc.c:1646 */ 2320*2b15cb3dSCy Schubert break; 2321*2b15cb3dSCy Schubert 2322*2b15cb3dSCy Schubert case 82: 2323*2b15cb3dSCy Schubert #line 625 "ntp_parser.y" /* yacc.c:1646 */ 2324*2b15cb3dSCy Schubert { 2325*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 2326*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2327*2b15cb3dSCy Schubert } 2328*2b15cb3dSCy Schubert #line 2329 "ntp_parser.c" /* yacc.c:1646 */ 2329*2b15cb3dSCy Schubert break; 2330*2b15cb3dSCy Schubert 2331*2b15cb3dSCy Schubert case 83: 2332*2b15cb3dSCy Schubert #line 633 "ntp_parser.y" /* yacc.c:1646 */ 2333*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); } 2334*2b15cb3dSCy Schubert #line 2335 "ntp_parser.c" /* yacc.c:1646 */ 2335*2b15cb3dSCy Schubert break; 2336*2b15cb3dSCy Schubert 2337*2b15cb3dSCy Schubert case 84: 2338*2b15cb3dSCy Schubert #line 635 "ntp_parser.y" /* yacc.c:1646 */ 2339*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); } 2340*2b15cb3dSCy Schubert #line 2341 "ntp_parser.c" /* yacc.c:1646 */ 2341*2b15cb3dSCy Schubert break; 2342*2b15cb3dSCy Schubert 2343*2b15cb3dSCy Schubert case 85: 2344*2b15cb3dSCy Schubert #line 637 "ntp_parser.y" /* yacc.c:1646 */ 2345*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); } 2346*2b15cb3dSCy Schubert #line 2347 "ntp_parser.c" /* yacc.c:1646 */ 2347*2b15cb3dSCy Schubert break; 2348*2b15cb3dSCy Schubert 2349*2b15cb3dSCy Schubert case 96: 2350*2b15cb3dSCy Schubert #line 663 "ntp_parser.y" /* yacc.c:1646 */ 2351*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.stats_list, (yyvsp[0].Int_fifo)); } 2352*2b15cb3dSCy Schubert #line 2353 "ntp_parser.c" /* yacc.c:1646 */ 2353*2b15cb3dSCy Schubert break; 2354*2b15cb3dSCy Schubert 2355*2b15cb3dSCy Schubert case 97: 2356*2b15cb3dSCy Schubert #line 665 "ntp_parser.y" /* yacc.c:1646 */ 2357*2b15cb3dSCy Schubert { 2358*2b15cb3dSCy Schubert if (input_from_file) { 2359*2b15cb3dSCy Schubert cfgt.stats_dir = (yyvsp[0].String); 2360*2b15cb3dSCy Schubert } else { 2361*2b15cb3dSCy Schubert YYFREE((yyvsp[0].String)); 2362*2b15cb3dSCy Schubert yyerror(ip_file, "statsdir remote configuration ignored"); 2363*2b15cb3dSCy Schubert } 2364*2b15cb3dSCy Schubert } 2365*2b15cb3dSCy Schubert #line 2366 "ntp_parser.c" /* yacc.c:1646 */ 2366*2b15cb3dSCy Schubert break; 2367*2b15cb3dSCy Schubert 2368*2b15cb3dSCy Schubert case 98: 2369*2b15cb3dSCy Schubert #line 674 "ntp_parser.y" /* yacc.c:1646 */ 2370*2b15cb3dSCy Schubert { 2371*2b15cb3dSCy Schubert filegen_node *fgn; 2372*2b15cb3dSCy Schubert 2373*2b15cb3dSCy Schubert fgn = create_filegen_node((yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo)); 2374*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.filegen_opts, fgn); 2375*2b15cb3dSCy Schubert } 2376*2b15cb3dSCy Schubert #line 2377 "ntp_parser.c" /* yacc.c:1646 */ 2377*2b15cb3dSCy Schubert break; 2378*2b15cb3dSCy Schubert 2379*2b15cb3dSCy Schubert case 99: 2380*2b15cb3dSCy Schubert #line 684 "ntp_parser.y" /* yacc.c:1646 */ 2381*2b15cb3dSCy Schubert { 2382*2b15cb3dSCy Schubert (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); 2383*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 2384*2b15cb3dSCy Schubert } 2385*2b15cb3dSCy Schubert #line 2386 "ntp_parser.c" /* yacc.c:1646 */ 2386*2b15cb3dSCy Schubert break; 2387*2b15cb3dSCy Schubert 2388*2b15cb3dSCy Schubert case 100: 2389*2b15cb3dSCy Schubert #line 689 "ntp_parser.y" /* yacc.c:1646 */ 2390*2b15cb3dSCy Schubert { 2391*2b15cb3dSCy Schubert (yyval.Int_fifo) = NULL; 2392*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 2393*2b15cb3dSCy Schubert } 2394*2b15cb3dSCy Schubert #line 2395 "ntp_parser.c" /* yacc.c:1646 */ 2395*2b15cb3dSCy Schubert break; 2396*2b15cb3dSCy Schubert 2397*2b15cb3dSCy Schubert case 109: 2398*2b15cb3dSCy Schubert #line 708 "ntp_parser.y" /* yacc.c:1646 */ 2399*2b15cb3dSCy Schubert { (yyval.Attr_val_fifo) = NULL; } 2400*2b15cb3dSCy Schubert #line 2401 "ntp_parser.c" /* yacc.c:1646 */ 2401*2b15cb3dSCy Schubert break; 2402*2b15cb3dSCy Schubert 2403*2b15cb3dSCy Schubert case 110: 2404*2b15cb3dSCy Schubert #line 710 "ntp_parser.y" /* yacc.c:1646 */ 2405*2b15cb3dSCy Schubert { 2406*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2407*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2408*2b15cb3dSCy Schubert } 2409*2b15cb3dSCy Schubert #line 2410 "ntp_parser.c" /* yacc.c:1646 */ 2410*2b15cb3dSCy Schubert break; 2411*2b15cb3dSCy Schubert 2412*2b15cb3dSCy Schubert case 111: 2413*2b15cb3dSCy Schubert #line 718 "ntp_parser.y" /* yacc.c:1646 */ 2414*2b15cb3dSCy Schubert { 2415*2b15cb3dSCy Schubert if (input_from_file) { 2416*2b15cb3dSCy Schubert (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); 2417*2b15cb3dSCy Schubert } else { 2418*2b15cb3dSCy Schubert (yyval.Attr_val) = NULL; 2419*2b15cb3dSCy Schubert YYFREE((yyvsp[0].String)); 2420*2b15cb3dSCy Schubert yyerror(ip_file, "filegen file remote config ignored"); 2421*2b15cb3dSCy Schubert } 2422*2b15cb3dSCy Schubert } 2423*2b15cb3dSCy Schubert #line 2424 "ntp_parser.c" /* yacc.c:1646 */ 2424*2b15cb3dSCy Schubert break; 2425*2b15cb3dSCy Schubert 2426*2b15cb3dSCy Schubert case 112: 2427*2b15cb3dSCy Schubert #line 728 "ntp_parser.y" /* yacc.c:1646 */ 2428*2b15cb3dSCy Schubert { 2429*2b15cb3dSCy Schubert if (input_from_file) { 2430*2b15cb3dSCy Schubert (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); 2431*2b15cb3dSCy Schubert } else { 2432*2b15cb3dSCy Schubert (yyval.Attr_val) = NULL; 2433*2b15cb3dSCy Schubert yyerror(ip_file, "filegen type remote config ignored"); 2434*2b15cb3dSCy Schubert } 2435*2b15cb3dSCy Schubert } 2436*2b15cb3dSCy Schubert #line 2437 "ntp_parser.c" /* yacc.c:1646 */ 2437*2b15cb3dSCy Schubert break; 2438*2b15cb3dSCy Schubert 2439*2b15cb3dSCy Schubert case 113: 2440*2b15cb3dSCy Schubert #line 737 "ntp_parser.y" /* yacc.c:1646 */ 2441*2b15cb3dSCy Schubert { 2442*2b15cb3dSCy Schubert const char *err; 2443*2b15cb3dSCy Schubert 2444*2b15cb3dSCy Schubert if (input_from_file) { 2445*2b15cb3dSCy Schubert (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); 2446*2b15cb3dSCy Schubert } else { 2447*2b15cb3dSCy Schubert (yyval.Attr_val) = NULL; 2448*2b15cb3dSCy Schubert if (T_Link == (yyvsp[0].Integer)) 2449*2b15cb3dSCy Schubert err = "filegen link remote config ignored"; 2450*2b15cb3dSCy Schubert else 2451*2b15cb3dSCy Schubert err = "filegen nolink remote config ignored"; 2452*2b15cb3dSCy Schubert yyerror(ip_file, err); 2453*2b15cb3dSCy Schubert } 2454*2b15cb3dSCy Schubert } 2455*2b15cb3dSCy Schubert #line 2456 "ntp_parser.c" /* yacc.c:1646 */ 2456*2b15cb3dSCy Schubert break; 2457*2b15cb3dSCy Schubert 2458*2b15cb3dSCy Schubert case 114: 2459*2b15cb3dSCy Schubert #line 752 "ntp_parser.y" /* yacc.c:1646 */ 2460*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); } 2461*2b15cb3dSCy Schubert #line 2462 "ntp_parser.c" /* yacc.c:1646 */ 2462*2b15cb3dSCy Schubert break; 2463*2b15cb3dSCy Schubert 2464*2b15cb3dSCy Schubert case 126: 2465*2b15cb3dSCy Schubert #line 782 "ntp_parser.y" /* yacc.c:1646 */ 2466*2b15cb3dSCy Schubert { 2467*2b15cb3dSCy Schubert CONCAT_G_FIFOS(cfgt.discard_opts, (yyvsp[0].Attr_val_fifo)); 2468*2b15cb3dSCy Schubert } 2469*2b15cb3dSCy Schubert #line 2470 "ntp_parser.c" /* yacc.c:1646 */ 2470*2b15cb3dSCy Schubert break; 2471*2b15cb3dSCy Schubert 2472*2b15cb3dSCy Schubert case 127: 2473*2b15cb3dSCy Schubert #line 786 "ntp_parser.y" /* yacc.c:1646 */ 2474*2b15cb3dSCy Schubert { 2475*2b15cb3dSCy Schubert CONCAT_G_FIFOS(cfgt.mru_opts, (yyvsp[0].Attr_val_fifo)); 2476*2b15cb3dSCy Schubert } 2477*2b15cb3dSCy Schubert #line 2478 "ntp_parser.c" /* yacc.c:1646 */ 2478*2b15cb3dSCy Schubert break; 2479*2b15cb3dSCy Schubert 2480*2b15cb3dSCy Schubert case 128: 2481*2b15cb3dSCy Schubert #line 790 "ntp_parser.y" /* yacc.c:1646 */ 2482*2b15cb3dSCy Schubert { 2483*2b15cb3dSCy Schubert restrict_node *rn; 2484*2b15cb3dSCy Schubert 2485*2b15cb3dSCy Schubert rn = create_restrict_node((yyvsp[-1].Address_node), NULL, (yyvsp[0].Int_fifo), 2486*2b15cb3dSCy Schubert ip_file->line_no); 2487*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.restrict_opts, rn); 2488*2b15cb3dSCy Schubert } 2489*2b15cb3dSCy Schubert #line 2490 "ntp_parser.c" /* yacc.c:1646 */ 2490*2b15cb3dSCy Schubert break; 2491*2b15cb3dSCy Schubert 2492*2b15cb3dSCy Schubert case 129: 2493*2b15cb3dSCy Schubert #line 798 "ntp_parser.y" /* yacc.c:1646 */ 2494*2b15cb3dSCy Schubert { 2495*2b15cb3dSCy Schubert restrict_node *rn; 2496*2b15cb3dSCy Schubert 2497*2b15cb3dSCy Schubert rn = create_restrict_node((yyvsp[-3].Address_node), (yyvsp[-1].Address_node), (yyvsp[0].Int_fifo), 2498*2b15cb3dSCy Schubert ip_file->line_no); 2499*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.restrict_opts, rn); 2500*2b15cb3dSCy Schubert } 2501*2b15cb3dSCy Schubert #line 2502 "ntp_parser.c" /* yacc.c:1646 */ 2502*2b15cb3dSCy Schubert break; 2503*2b15cb3dSCy Schubert 2504*2b15cb3dSCy Schubert case 130: 2505*2b15cb3dSCy Schubert #line 806 "ntp_parser.y" /* yacc.c:1646 */ 2506*2b15cb3dSCy Schubert { 2507*2b15cb3dSCy Schubert restrict_node *rn; 2508*2b15cb3dSCy Schubert 2509*2b15cb3dSCy Schubert rn = create_restrict_node(NULL, NULL, (yyvsp[0].Int_fifo), 2510*2b15cb3dSCy Schubert ip_file->line_no); 2511*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.restrict_opts, rn); 2512*2b15cb3dSCy Schubert } 2513*2b15cb3dSCy Schubert #line 2514 "ntp_parser.c" /* yacc.c:1646 */ 2514*2b15cb3dSCy Schubert break; 2515*2b15cb3dSCy Schubert 2516*2b15cb3dSCy Schubert case 131: 2517*2b15cb3dSCy Schubert #line 814 "ntp_parser.y" /* yacc.c:1646 */ 2518*2b15cb3dSCy Schubert { 2519*2b15cb3dSCy Schubert restrict_node *rn; 2520*2b15cb3dSCy Schubert 2521*2b15cb3dSCy Schubert rn = create_restrict_node( 2522*2b15cb3dSCy Schubert create_address_node( 2523*2b15cb3dSCy Schubert estrdup("0.0.0.0"), 2524*2b15cb3dSCy Schubert AF_INET), 2525*2b15cb3dSCy Schubert create_address_node( 2526*2b15cb3dSCy Schubert estrdup("0.0.0.0"), 2527*2b15cb3dSCy Schubert AF_INET), 2528*2b15cb3dSCy Schubert (yyvsp[0].Int_fifo), 2529*2b15cb3dSCy Schubert ip_file->line_no); 2530*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.restrict_opts, rn); 2531*2b15cb3dSCy Schubert } 2532*2b15cb3dSCy Schubert #line 2533 "ntp_parser.c" /* yacc.c:1646 */ 2533*2b15cb3dSCy Schubert break; 2534*2b15cb3dSCy Schubert 2535*2b15cb3dSCy Schubert case 132: 2536*2b15cb3dSCy Schubert #line 829 "ntp_parser.y" /* yacc.c:1646 */ 2537*2b15cb3dSCy Schubert { 2538*2b15cb3dSCy Schubert restrict_node *rn; 2539*2b15cb3dSCy Schubert 2540*2b15cb3dSCy Schubert rn = create_restrict_node( 2541*2b15cb3dSCy Schubert create_address_node( 2542*2b15cb3dSCy Schubert estrdup("::"), 2543*2b15cb3dSCy Schubert AF_INET6), 2544*2b15cb3dSCy Schubert create_address_node( 2545*2b15cb3dSCy Schubert estrdup("::"), 2546*2b15cb3dSCy Schubert AF_INET6), 2547*2b15cb3dSCy Schubert (yyvsp[0].Int_fifo), 2548*2b15cb3dSCy Schubert ip_file->line_no); 2549*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.restrict_opts, rn); 2550*2b15cb3dSCy Schubert } 2551*2b15cb3dSCy Schubert #line 2552 "ntp_parser.c" /* yacc.c:1646 */ 2552*2b15cb3dSCy Schubert break; 2553*2b15cb3dSCy Schubert 2554*2b15cb3dSCy Schubert case 133: 2555*2b15cb3dSCy Schubert #line 844 "ntp_parser.y" /* yacc.c:1646 */ 2556*2b15cb3dSCy Schubert { 2557*2b15cb3dSCy Schubert restrict_node * rn; 2558*2b15cb3dSCy Schubert 2559*2b15cb3dSCy Schubert APPEND_G_FIFO((yyvsp[0].Int_fifo), create_int_node((yyvsp[-1].Integer))); 2560*2b15cb3dSCy Schubert rn = create_restrict_node( 2561*2b15cb3dSCy Schubert NULL, NULL, (yyvsp[0].Int_fifo), ip_file->line_no); 2562*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.restrict_opts, rn); 2563*2b15cb3dSCy Schubert } 2564*2b15cb3dSCy Schubert #line 2565 "ntp_parser.c" /* yacc.c:1646 */ 2565*2b15cb3dSCy Schubert break; 2566*2b15cb3dSCy Schubert 2567*2b15cb3dSCy Schubert case 134: 2568*2b15cb3dSCy Schubert #line 856 "ntp_parser.y" /* yacc.c:1646 */ 2569*2b15cb3dSCy Schubert { (yyval.Int_fifo) = NULL; } 2570*2b15cb3dSCy Schubert #line 2571 "ntp_parser.c" /* yacc.c:1646 */ 2571*2b15cb3dSCy Schubert break; 2572*2b15cb3dSCy Schubert 2573*2b15cb3dSCy Schubert case 135: 2574*2b15cb3dSCy Schubert #line 858 "ntp_parser.y" /* yacc.c:1646 */ 2575*2b15cb3dSCy Schubert { 2576*2b15cb3dSCy Schubert (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); 2577*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 2578*2b15cb3dSCy Schubert } 2579*2b15cb3dSCy Schubert #line 2580 "ntp_parser.c" /* yacc.c:1646 */ 2580*2b15cb3dSCy Schubert break; 2581*2b15cb3dSCy Schubert 2582*2b15cb3dSCy Schubert case 151: 2583*2b15cb3dSCy Schubert #line 884 "ntp_parser.y" /* yacc.c:1646 */ 2584*2b15cb3dSCy Schubert { 2585*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2586*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2587*2b15cb3dSCy Schubert } 2588*2b15cb3dSCy Schubert #line 2589 "ntp_parser.c" /* yacc.c:1646 */ 2589*2b15cb3dSCy Schubert break; 2590*2b15cb3dSCy Schubert 2591*2b15cb3dSCy Schubert case 152: 2592*2b15cb3dSCy Schubert #line 889 "ntp_parser.y" /* yacc.c:1646 */ 2593*2b15cb3dSCy Schubert { 2594*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 2595*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2596*2b15cb3dSCy Schubert } 2597*2b15cb3dSCy Schubert #line 2598 "ntp_parser.c" /* yacc.c:1646 */ 2598*2b15cb3dSCy Schubert break; 2599*2b15cb3dSCy Schubert 2600*2b15cb3dSCy Schubert case 153: 2601*2b15cb3dSCy Schubert #line 897 "ntp_parser.y" /* yacc.c:1646 */ 2602*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2603*2b15cb3dSCy Schubert #line 2604 "ntp_parser.c" /* yacc.c:1646 */ 2604*2b15cb3dSCy Schubert break; 2605*2b15cb3dSCy Schubert 2606*2b15cb3dSCy Schubert case 157: 2607*2b15cb3dSCy Schubert #line 908 "ntp_parser.y" /* yacc.c:1646 */ 2608*2b15cb3dSCy Schubert { 2609*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2610*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2611*2b15cb3dSCy Schubert } 2612*2b15cb3dSCy Schubert #line 2613 "ntp_parser.c" /* yacc.c:1646 */ 2613*2b15cb3dSCy Schubert break; 2614*2b15cb3dSCy Schubert 2615*2b15cb3dSCy Schubert case 158: 2616*2b15cb3dSCy Schubert #line 913 "ntp_parser.y" /* yacc.c:1646 */ 2617*2b15cb3dSCy Schubert { 2618*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 2619*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2620*2b15cb3dSCy Schubert } 2621*2b15cb3dSCy Schubert #line 2622 "ntp_parser.c" /* yacc.c:1646 */ 2622*2b15cb3dSCy Schubert break; 2623*2b15cb3dSCy Schubert 2624*2b15cb3dSCy Schubert case 159: 2625*2b15cb3dSCy Schubert #line 921 "ntp_parser.y" /* yacc.c:1646 */ 2626*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2627*2b15cb3dSCy Schubert #line 2628 "ntp_parser.c" /* yacc.c:1646 */ 2628*2b15cb3dSCy Schubert break; 2629*2b15cb3dSCy Schubert 2630*2b15cb3dSCy Schubert case 168: 2631*2b15cb3dSCy Schubert #line 941 "ntp_parser.y" /* yacc.c:1646 */ 2632*2b15cb3dSCy Schubert { 2633*2b15cb3dSCy Schubert addr_opts_node *aon; 2634*2b15cb3dSCy Schubert 2635*2b15cb3dSCy Schubert aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo)); 2636*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.fudge, aon); 2637*2b15cb3dSCy Schubert } 2638*2b15cb3dSCy Schubert #line 2639 "ntp_parser.c" /* yacc.c:1646 */ 2639*2b15cb3dSCy Schubert break; 2640*2b15cb3dSCy Schubert 2641*2b15cb3dSCy Schubert case 169: 2642*2b15cb3dSCy Schubert #line 951 "ntp_parser.y" /* yacc.c:1646 */ 2643*2b15cb3dSCy Schubert { 2644*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2645*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2646*2b15cb3dSCy Schubert } 2647*2b15cb3dSCy Schubert #line 2648 "ntp_parser.c" /* yacc.c:1646 */ 2648*2b15cb3dSCy Schubert break; 2649*2b15cb3dSCy Schubert 2650*2b15cb3dSCy Schubert case 170: 2651*2b15cb3dSCy Schubert #line 956 "ntp_parser.y" /* yacc.c:1646 */ 2652*2b15cb3dSCy Schubert { 2653*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 2654*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2655*2b15cb3dSCy Schubert } 2656*2b15cb3dSCy Schubert #line 2657 "ntp_parser.c" /* yacc.c:1646 */ 2657*2b15cb3dSCy Schubert break; 2658*2b15cb3dSCy Schubert 2659*2b15cb3dSCy Schubert case 171: 2660*2b15cb3dSCy Schubert #line 964 "ntp_parser.y" /* yacc.c:1646 */ 2661*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); } 2662*2b15cb3dSCy Schubert #line 2663 "ntp_parser.c" /* yacc.c:1646 */ 2663*2b15cb3dSCy Schubert break; 2664*2b15cb3dSCy Schubert 2665*2b15cb3dSCy Schubert case 172: 2666*2b15cb3dSCy Schubert #line 966 "ntp_parser.y" /* yacc.c:1646 */ 2667*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2668*2b15cb3dSCy Schubert #line 2669 "ntp_parser.c" /* yacc.c:1646 */ 2669*2b15cb3dSCy Schubert break; 2670*2b15cb3dSCy Schubert 2671*2b15cb3dSCy Schubert case 173: 2672*2b15cb3dSCy Schubert #line 968 "ntp_parser.y" /* yacc.c:1646 */ 2673*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2674*2b15cb3dSCy Schubert #line 2675 "ntp_parser.c" /* yacc.c:1646 */ 2675*2b15cb3dSCy Schubert break; 2676*2b15cb3dSCy Schubert 2677*2b15cb3dSCy Schubert case 174: 2678*2b15cb3dSCy Schubert #line 970 "ntp_parser.y" /* yacc.c:1646 */ 2679*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } 2680*2b15cb3dSCy Schubert #line 2681 "ntp_parser.c" /* yacc.c:1646 */ 2681*2b15cb3dSCy Schubert break; 2682*2b15cb3dSCy Schubert 2683*2b15cb3dSCy Schubert case 175: 2684*2b15cb3dSCy Schubert #line 972 "ntp_parser.y" /* yacc.c:1646 */ 2685*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } 2686*2b15cb3dSCy Schubert #line 2687 "ntp_parser.c" /* yacc.c:1646 */ 2687*2b15cb3dSCy Schubert break; 2688*2b15cb3dSCy Schubert 2689*2b15cb3dSCy Schubert case 182: 2690*2b15cb3dSCy Schubert #line 993 "ntp_parser.y" /* yacc.c:1646 */ 2691*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.rlimit, (yyvsp[0].Attr_val_fifo)); } 2692*2b15cb3dSCy Schubert #line 2693 "ntp_parser.c" /* yacc.c:1646 */ 2693*2b15cb3dSCy Schubert break; 2694*2b15cb3dSCy Schubert 2695*2b15cb3dSCy Schubert case 183: 2696*2b15cb3dSCy Schubert #line 998 "ntp_parser.y" /* yacc.c:1646 */ 2697*2b15cb3dSCy Schubert { 2698*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2699*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2700*2b15cb3dSCy Schubert } 2701*2b15cb3dSCy Schubert #line 2702 "ntp_parser.c" /* yacc.c:1646 */ 2702*2b15cb3dSCy Schubert break; 2703*2b15cb3dSCy Schubert 2704*2b15cb3dSCy Schubert case 184: 2705*2b15cb3dSCy Schubert #line 1003 "ntp_parser.y" /* yacc.c:1646 */ 2706*2b15cb3dSCy Schubert { 2707*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 2708*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2709*2b15cb3dSCy Schubert } 2710*2b15cb3dSCy Schubert #line 2711 "ntp_parser.c" /* yacc.c:1646 */ 2711*2b15cb3dSCy Schubert break; 2712*2b15cb3dSCy Schubert 2713*2b15cb3dSCy Schubert case 185: 2714*2b15cb3dSCy Schubert #line 1011 "ntp_parser.y" /* yacc.c:1646 */ 2715*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2716*2b15cb3dSCy Schubert #line 2717 "ntp_parser.c" /* yacc.c:1646 */ 2717*2b15cb3dSCy Schubert break; 2718*2b15cb3dSCy Schubert 2719*2b15cb3dSCy Schubert case 189: 2720*2b15cb3dSCy Schubert #line 1027 "ntp_parser.y" /* yacc.c:1646 */ 2721*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.enable_opts, (yyvsp[0].Attr_val_fifo)); } 2722*2b15cb3dSCy Schubert #line 2723 "ntp_parser.c" /* yacc.c:1646 */ 2723*2b15cb3dSCy Schubert break; 2724*2b15cb3dSCy Schubert 2725*2b15cb3dSCy Schubert case 190: 2726*2b15cb3dSCy Schubert #line 1029 "ntp_parser.y" /* yacc.c:1646 */ 2727*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.disable_opts, (yyvsp[0].Attr_val_fifo)); } 2728*2b15cb3dSCy Schubert #line 2729 "ntp_parser.c" /* yacc.c:1646 */ 2729*2b15cb3dSCy Schubert break; 2730*2b15cb3dSCy Schubert 2731*2b15cb3dSCy Schubert case 191: 2732*2b15cb3dSCy Schubert #line 1034 "ntp_parser.y" /* yacc.c:1646 */ 2733*2b15cb3dSCy Schubert { 2734*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2735*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2736*2b15cb3dSCy Schubert } 2737*2b15cb3dSCy Schubert #line 2738 "ntp_parser.c" /* yacc.c:1646 */ 2738*2b15cb3dSCy Schubert break; 2739*2b15cb3dSCy Schubert 2740*2b15cb3dSCy Schubert case 192: 2741*2b15cb3dSCy Schubert #line 1039 "ntp_parser.y" /* yacc.c:1646 */ 2742*2b15cb3dSCy Schubert { 2743*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 2744*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2745*2b15cb3dSCy Schubert } 2746*2b15cb3dSCy Schubert #line 2747 "ntp_parser.c" /* yacc.c:1646 */ 2747*2b15cb3dSCy Schubert break; 2748*2b15cb3dSCy Schubert 2749*2b15cb3dSCy Schubert case 193: 2750*2b15cb3dSCy Schubert #line 1047 "ntp_parser.y" /* yacc.c:1646 */ 2751*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); } 2752*2b15cb3dSCy Schubert #line 2753 "ntp_parser.c" /* yacc.c:1646 */ 2753*2b15cb3dSCy Schubert break; 2754*2b15cb3dSCy Schubert 2755*2b15cb3dSCy Schubert case 194: 2756*2b15cb3dSCy Schubert #line 1049 "ntp_parser.y" /* yacc.c:1646 */ 2757*2b15cb3dSCy Schubert { 2758*2b15cb3dSCy Schubert if (input_from_file) { 2759*2b15cb3dSCy Schubert (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); 2760*2b15cb3dSCy Schubert } else { 2761*2b15cb3dSCy Schubert char err_str[128]; 2762*2b15cb3dSCy Schubert 2763*2b15cb3dSCy Schubert (yyval.Attr_val) = NULL; 2764*2b15cb3dSCy Schubert snprintf(err_str, sizeof(err_str), 2765*2b15cb3dSCy Schubert "enable/disable %s remote configuration ignored", 2766*2b15cb3dSCy Schubert keyword((yyvsp[0].Integer))); 2767*2b15cb3dSCy Schubert yyerror(ip_file, err_str); 2768*2b15cb3dSCy Schubert } 2769*2b15cb3dSCy Schubert } 2770*2b15cb3dSCy Schubert #line 2771 "ntp_parser.c" /* yacc.c:1646 */ 2771*2b15cb3dSCy Schubert break; 2772*2b15cb3dSCy Schubert 2773*2b15cb3dSCy Schubert case 203: 2774*2b15cb3dSCy Schubert #line 1084 "ntp_parser.y" /* yacc.c:1646 */ 2775*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.tinker, (yyvsp[0].Attr_val_fifo)); } 2776*2b15cb3dSCy Schubert #line 2777 "ntp_parser.c" /* yacc.c:1646 */ 2777*2b15cb3dSCy Schubert break; 2778*2b15cb3dSCy Schubert 2779*2b15cb3dSCy Schubert case 204: 2780*2b15cb3dSCy Schubert #line 1089 "ntp_parser.y" /* yacc.c:1646 */ 2781*2b15cb3dSCy Schubert { 2782*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2783*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2784*2b15cb3dSCy Schubert } 2785*2b15cb3dSCy Schubert #line 2786 "ntp_parser.c" /* yacc.c:1646 */ 2786*2b15cb3dSCy Schubert break; 2787*2b15cb3dSCy Schubert 2788*2b15cb3dSCy Schubert case 205: 2789*2b15cb3dSCy Schubert #line 1094 "ntp_parser.y" /* yacc.c:1646 */ 2790*2b15cb3dSCy Schubert { 2791*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 2792*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2793*2b15cb3dSCy Schubert } 2794*2b15cb3dSCy Schubert #line 2795 "ntp_parser.c" /* yacc.c:1646 */ 2795*2b15cb3dSCy Schubert break; 2796*2b15cb3dSCy Schubert 2797*2b15cb3dSCy Schubert case 206: 2798*2b15cb3dSCy Schubert #line 1102 "ntp_parser.y" /* yacc.c:1646 */ 2799*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); } 2800*2b15cb3dSCy Schubert #line 2801 "ntp_parser.c" /* yacc.c:1646 */ 2801*2b15cb3dSCy Schubert break; 2802*2b15cb3dSCy Schubert 2803*2b15cb3dSCy Schubert case 217: 2804*2b15cb3dSCy Schubert #line 1125 "ntp_parser.y" /* yacc.c:1646 */ 2805*2b15cb3dSCy Schubert { 2806*2b15cb3dSCy Schubert attr_val *av; 2807*2b15cb3dSCy Schubert 2808*2b15cb3dSCy Schubert av = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); 2809*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.vars, av); 2810*2b15cb3dSCy Schubert } 2811*2b15cb3dSCy Schubert #line 2812 "ntp_parser.c" /* yacc.c:1646 */ 2812*2b15cb3dSCy Schubert break; 2813*2b15cb3dSCy Schubert 2814*2b15cb3dSCy Schubert case 218: 2815*2b15cb3dSCy Schubert #line 1132 "ntp_parser.y" /* yacc.c:1646 */ 2816*2b15cb3dSCy Schubert { 2817*2b15cb3dSCy Schubert attr_val *av; 2818*2b15cb3dSCy Schubert 2819*2b15cb3dSCy Schubert av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); 2820*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.vars, av); 2821*2b15cb3dSCy Schubert } 2822*2b15cb3dSCy Schubert #line 2823 "ntp_parser.c" /* yacc.c:1646 */ 2823*2b15cb3dSCy Schubert break; 2824*2b15cb3dSCy Schubert 2825*2b15cb3dSCy Schubert case 219: 2826*2b15cb3dSCy Schubert #line 1139 "ntp_parser.y" /* yacc.c:1646 */ 2827*2b15cb3dSCy Schubert { 2828*2b15cb3dSCy Schubert char error_text[64]; 2829*2b15cb3dSCy Schubert attr_val *av; 2830*2b15cb3dSCy Schubert 2831*2b15cb3dSCy Schubert if (input_from_file) { 2832*2b15cb3dSCy Schubert av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); 2833*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.vars, av); 2834*2b15cb3dSCy Schubert } else { 2835*2b15cb3dSCy Schubert YYFREE((yyvsp[0].String)); 2836*2b15cb3dSCy Schubert snprintf(error_text, sizeof(error_text), 2837*2b15cb3dSCy Schubert "%s remote config ignored", 2838*2b15cb3dSCy Schubert keyword((yyvsp[-1].Integer))); 2839*2b15cb3dSCy Schubert yyerror(ip_file, error_text); 2840*2b15cb3dSCy Schubert } 2841*2b15cb3dSCy Schubert } 2842*2b15cb3dSCy Schubert #line 2843 "ntp_parser.c" /* yacc.c:1646 */ 2843*2b15cb3dSCy Schubert break; 2844*2b15cb3dSCy Schubert 2845*2b15cb3dSCy Schubert case 220: 2846*2b15cb3dSCy Schubert #line 1155 "ntp_parser.y" /* yacc.c:1646 */ 2847*2b15cb3dSCy Schubert { 2848*2b15cb3dSCy Schubert if (!input_from_file) { 2849*2b15cb3dSCy Schubert yyerror(ip_file, "remote includefile ignored"); 2850*2b15cb3dSCy Schubert break; 2851*2b15cb3dSCy Schubert } 2852*2b15cb3dSCy Schubert if (curr_include_level >= MAXINCLUDELEVEL) { 2853*2b15cb3dSCy Schubert fprintf(stderr, "getconfig: Maximum include file level exceeded.\n"); 2854*2b15cb3dSCy Schubert msyslog(LOG_ERR, "getconfig: Maximum include file level exceeded."); 2855*2b15cb3dSCy Schubert } else { 2856*2b15cb3dSCy Schubert fp[curr_include_level + 1] = F_OPEN(FindConfig((yyvsp[-1].String)), "r"); 2857*2b15cb3dSCy Schubert if (fp[curr_include_level + 1] == NULL) { 2858*2b15cb3dSCy Schubert fprintf(stderr, "getconfig: Couldn't open <%s>\n", FindConfig((yyvsp[-1].String))); 2859*2b15cb3dSCy Schubert msyslog(LOG_ERR, "getconfig: Couldn't open <%s>", FindConfig((yyvsp[-1].String))); 2860*2b15cb3dSCy Schubert } else { 2861*2b15cb3dSCy Schubert ip_file = fp[++curr_include_level]; 2862*2b15cb3dSCy Schubert } 2863*2b15cb3dSCy Schubert } 2864*2b15cb3dSCy Schubert } 2865*2b15cb3dSCy Schubert #line 2866 "ntp_parser.c" /* yacc.c:1646 */ 2866*2b15cb3dSCy Schubert break; 2867*2b15cb3dSCy Schubert 2868*2b15cb3dSCy Schubert case 221: 2869*2b15cb3dSCy Schubert #line 1174 "ntp_parser.y" /* yacc.c:1646 */ 2870*2b15cb3dSCy Schubert { 2871*2b15cb3dSCy Schubert while (curr_include_level != -1) 2872*2b15cb3dSCy Schubert FCLOSE(fp[curr_include_level--]); 2873*2b15cb3dSCy Schubert } 2874*2b15cb3dSCy Schubert #line 2875 "ntp_parser.c" /* yacc.c:1646 */ 2875*2b15cb3dSCy Schubert break; 2876*2b15cb3dSCy Schubert 2877*2b15cb3dSCy Schubert case 222: 2878*2b15cb3dSCy Schubert #line 1179 "ntp_parser.y" /* yacc.c:1646 */ 2879*2b15cb3dSCy Schubert { /* see drift_parm below for actions */ } 2880*2b15cb3dSCy Schubert #line 2881 "ntp_parser.c" /* yacc.c:1646 */ 2881*2b15cb3dSCy Schubert break; 2882*2b15cb3dSCy Schubert 2883*2b15cb3dSCy Schubert case 223: 2884*2b15cb3dSCy Schubert #line 1181 "ntp_parser.y" /* yacc.c:1646 */ 2885*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.logconfig, (yyvsp[0].Attr_val_fifo)); } 2886*2b15cb3dSCy Schubert #line 2887 "ntp_parser.c" /* yacc.c:1646 */ 2887*2b15cb3dSCy Schubert break; 2888*2b15cb3dSCy Schubert 2889*2b15cb3dSCy Schubert case 224: 2890*2b15cb3dSCy Schubert #line 1183 "ntp_parser.y" /* yacc.c:1646 */ 2891*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.phone, (yyvsp[0].String_fifo)); } 2892*2b15cb3dSCy Schubert #line 2893 "ntp_parser.c" /* yacc.c:1646 */ 2893*2b15cb3dSCy Schubert break; 2894*2b15cb3dSCy Schubert 2895*2b15cb3dSCy Schubert case 225: 2896*2b15cb3dSCy Schubert #line 1185 "ntp_parser.y" /* yacc.c:1646 */ 2897*2b15cb3dSCy Schubert { APPEND_G_FIFO(cfgt.setvar, (yyvsp[0].Set_var)); } 2898*2b15cb3dSCy Schubert #line 2899 "ntp_parser.c" /* yacc.c:1646 */ 2899*2b15cb3dSCy Schubert break; 2900*2b15cb3dSCy Schubert 2901*2b15cb3dSCy Schubert case 226: 2902*2b15cb3dSCy Schubert #line 1187 "ntp_parser.y" /* yacc.c:1646 */ 2903*2b15cb3dSCy Schubert { 2904*2b15cb3dSCy Schubert addr_opts_node *aon; 2905*2b15cb3dSCy Schubert 2906*2b15cb3dSCy Schubert aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo)); 2907*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.trap, aon); 2908*2b15cb3dSCy Schubert } 2909*2b15cb3dSCy Schubert #line 2910 "ntp_parser.c" /* yacc.c:1646 */ 2910*2b15cb3dSCy Schubert break; 2911*2b15cb3dSCy Schubert 2912*2b15cb3dSCy Schubert case 227: 2913*2b15cb3dSCy Schubert #line 1194 "ntp_parser.y" /* yacc.c:1646 */ 2914*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.ttl, (yyvsp[0].Attr_val_fifo)); } 2915*2b15cb3dSCy Schubert #line 2916 "ntp_parser.c" /* yacc.c:1646 */ 2916*2b15cb3dSCy Schubert break; 2917*2b15cb3dSCy Schubert 2918*2b15cb3dSCy Schubert case 236: 2919*2b15cb3dSCy Schubert #line 1216 "ntp_parser.y" /* yacc.c:1646 */ 2920*2b15cb3dSCy Schubert { 2921*2b15cb3dSCy Schubert attr_val *av; 2922*2b15cb3dSCy Schubert 2923*2b15cb3dSCy Schubert av = create_attr_sval(T_Driftfile, (yyvsp[0].String)); 2924*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.vars, av); 2925*2b15cb3dSCy Schubert } 2926*2b15cb3dSCy Schubert #line 2927 "ntp_parser.c" /* yacc.c:1646 */ 2927*2b15cb3dSCy Schubert break; 2928*2b15cb3dSCy Schubert 2929*2b15cb3dSCy Schubert case 237: 2930*2b15cb3dSCy Schubert #line 1223 "ntp_parser.y" /* yacc.c:1646 */ 2931*2b15cb3dSCy Schubert { 2932*2b15cb3dSCy Schubert attr_val *av; 2933*2b15cb3dSCy Schubert 2934*2b15cb3dSCy Schubert av = create_attr_sval(T_Driftfile, (yyvsp[-1].String)); 2935*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.vars, av); 2936*2b15cb3dSCy Schubert av = create_attr_dval(T_WanderThreshold, (yyvsp[0].Double)); 2937*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.vars, av); 2938*2b15cb3dSCy Schubert } 2939*2b15cb3dSCy Schubert #line 2940 "ntp_parser.c" /* yacc.c:1646 */ 2940*2b15cb3dSCy Schubert break; 2941*2b15cb3dSCy Schubert 2942*2b15cb3dSCy Schubert case 238: 2943*2b15cb3dSCy Schubert #line 1232 "ntp_parser.y" /* yacc.c:1646 */ 2944*2b15cb3dSCy Schubert { 2945*2b15cb3dSCy Schubert attr_val *av; 2946*2b15cb3dSCy Schubert 2947*2b15cb3dSCy Schubert av = create_attr_sval(T_Driftfile, ""); 2948*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.vars, av); 2949*2b15cb3dSCy Schubert } 2950*2b15cb3dSCy Schubert #line 2951 "ntp_parser.c" /* yacc.c:1646 */ 2951*2b15cb3dSCy Schubert break; 2952*2b15cb3dSCy Schubert 2953*2b15cb3dSCy Schubert case 239: 2954*2b15cb3dSCy Schubert #line 1242 "ntp_parser.y" /* yacc.c:1646 */ 2955*2b15cb3dSCy Schubert { (yyval.Set_var) = create_setvar_node((yyvsp[-3].String), (yyvsp[-1].String), (yyvsp[0].Integer)); } 2956*2b15cb3dSCy Schubert #line 2957 "ntp_parser.c" /* yacc.c:1646 */ 2957*2b15cb3dSCy Schubert break; 2958*2b15cb3dSCy Schubert 2959*2b15cb3dSCy Schubert case 241: 2960*2b15cb3dSCy Schubert #line 1248 "ntp_parser.y" /* yacc.c:1646 */ 2961*2b15cb3dSCy Schubert { (yyval.Integer) = 0; } 2962*2b15cb3dSCy Schubert #line 2963 "ntp_parser.c" /* yacc.c:1646 */ 2963*2b15cb3dSCy Schubert break; 2964*2b15cb3dSCy Schubert 2965*2b15cb3dSCy Schubert case 242: 2966*2b15cb3dSCy Schubert #line 1253 "ntp_parser.y" /* yacc.c:1646 */ 2967*2b15cb3dSCy Schubert { (yyval.Attr_val_fifo) = NULL; } 2968*2b15cb3dSCy Schubert #line 2969 "ntp_parser.c" /* yacc.c:1646 */ 2969*2b15cb3dSCy Schubert break; 2970*2b15cb3dSCy Schubert 2971*2b15cb3dSCy Schubert case 243: 2972*2b15cb3dSCy Schubert #line 1255 "ntp_parser.y" /* yacc.c:1646 */ 2973*2b15cb3dSCy Schubert { 2974*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2975*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2976*2b15cb3dSCy Schubert } 2977*2b15cb3dSCy Schubert #line 2978 "ntp_parser.c" /* yacc.c:1646 */ 2978*2b15cb3dSCy Schubert break; 2979*2b15cb3dSCy Schubert 2980*2b15cb3dSCy Schubert case 244: 2981*2b15cb3dSCy Schubert #line 1263 "ntp_parser.y" /* yacc.c:1646 */ 2982*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2983*2b15cb3dSCy Schubert #line 2984 "ntp_parser.c" /* yacc.c:1646 */ 2984*2b15cb3dSCy Schubert break; 2985*2b15cb3dSCy Schubert 2986*2b15cb3dSCy Schubert case 245: 2987*2b15cb3dSCy Schubert #line 1265 "ntp_parser.y" /* yacc.c:1646 */ 2988*2b15cb3dSCy Schubert { 2989*2b15cb3dSCy Schubert (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), estrdup((yyvsp[0].Address_node)->address)); 2990*2b15cb3dSCy Schubert destroy_address_node((yyvsp[0].Address_node)); 2991*2b15cb3dSCy Schubert } 2992*2b15cb3dSCy Schubert #line 2993 "ntp_parser.c" /* yacc.c:1646 */ 2993*2b15cb3dSCy Schubert break; 2994*2b15cb3dSCy Schubert 2995*2b15cb3dSCy Schubert case 246: 2996*2b15cb3dSCy Schubert #line 1273 "ntp_parser.y" /* yacc.c:1646 */ 2997*2b15cb3dSCy Schubert { 2998*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2999*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 3000*2b15cb3dSCy Schubert } 3001*2b15cb3dSCy Schubert #line 3002 "ntp_parser.c" /* yacc.c:1646 */ 3002*2b15cb3dSCy Schubert break; 3003*2b15cb3dSCy Schubert 3004*2b15cb3dSCy Schubert case 247: 3005*2b15cb3dSCy Schubert #line 1278 "ntp_parser.y" /* yacc.c:1646 */ 3006*2b15cb3dSCy Schubert { 3007*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 3008*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 3009*2b15cb3dSCy Schubert } 3010*2b15cb3dSCy Schubert #line 3011 "ntp_parser.c" /* yacc.c:1646 */ 3011*2b15cb3dSCy Schubert break; 3012*2b15cb3dSCy Schubert 3013*2b15cb3dSCy Schubert case 248: 3014*2b15cb3dSCy Schubert #line 1286 "ntp_parser.y" /* yacc.c:1646 */ 3015*2b15cb3dSCy Schubert { 3016*2b15cb3dSCy Schubert char prefix; 3017*2b15cb3dSCy Schubert char * type; 3018*2b15cb3dSCy Schubert 3019*2b15cb3dSCy Schubert switch ((yyvsp[0].String)[0]) { 3020*2b15cb3dSCy Schubert 3021*2b15cb3dSCy Schubert case '+': 3022*2b15cb3dSCy Schubert case '-': 3023*2b15cb3dSCy Schubert case '=': 3024*2b15cb3dSCy Schubert prefix = (yyvsp[0].String)[0]; 3025*2b15cb3dSCy Schubert type = (yyvsp[0].String) + 1; 3026*2b15cb3dSCy Schubert break; 3027*2b15cb3dSCy Schubert 3028*2b15cb3dSCy Schubert default: 3029*2b15cb3dSCy Schubert prefix = '='; 3030*2b15cb3dSCy Schubert type = (yyvsp[0].String); 3031*2b15cb3dSCy Schubert } 3032*2b15cb3dSCy Schubert 3033*2b15cb3dSCy Schubert (yyval.Attr_val) = create_attr_sval(prefix, estrdup(type)); 3034*2b15cb3dSCy Schubert YYFREE((yyvsp[0].String)); 3035*2b15cb3dSCy Schubert } 3036*2b15cb3dSCy Schubert #line 3037 "ntp_parser.c" /* yacc.c:1646 */ 3037*2b15cb3dSCy Schubert break; 3038*2b15cb3dSCy Schubert 3039*2b15cb3dSCy Schubert case 249: 3040*2b15cb3dSCy Schubert #line 1311 "ntp_parser.y" /* yacc.c:1646 */ 3041*2b15cb3dSCy Schubert { 3042*2b15cb3dSCy Schubert nic_rule_node *nrn; 3043*2b15cb3dSCy Schubert 3044*2b15cb3dSCy Schubert nrn = create_nic_rule_node((yyvsp[0].Integer), NULL, (yyvsp[-1].Integer)); 3045*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.nic_rules, nrn); 3046*2b15cb3dSCy Schubert } 3047*2b15cb3dSCy Schubert #line 3048 "ntp_parser.c" /* yacc.c:1646 */ 3048*2b15cb3dSCy Schubert break; 3049*2b15cb3dSCy Schubert 3050*2b15cb3dSCy Schubert case 250: 3051*2b15cb3dSCy Schubert #line 1318 "ntp_parser.y" /* yacc.c:1646 */ 3052*2b15cb3dSCy Schubert { 3053*2b15cb3dSCy Schubert nic_rule_node *nrn; 3054*2b15cb3dSCy Schubert 3055*2b15cb3dSCy Schubert nrn = create_nic_rule_node(0, (yyvsp[0].String), (yyvsp[-1].Integer)); 3056*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.nic_rules, nrn); 3057*2b15cb3dSCy Schubert } 3058*2b15cb3dSCy Schubert #line 3059 "ntp_parser.c" /* yacc.c:1646 */ 3059*2b15cb3dSCy Schubert break; 3060*2b15cb3dSCy Schubert 3061*2b15cb3dSCy Schubert case 260: 3062*2b15cb3dSCy Schubert #line 1346 "ntp_parser.y" /* yacc.c:1646 */ 3063*2b15cb3dSCy Schubert { CONCAT_G_FIFOS(cfgt.reset_counters, (yyvsp[0].Int_fifo)); } 3064*2b15cb3dSCy Schubert #line 3065 "ntp_parser.c" /* yacc.c:1646 */ 3065*2b15cb3dSCy Schubert break; 3066*2b15cb3dSCy Schubert 3067*2b15cb3dSCy Schubert case 261: 3068*2b15cb3dSCy Schubert #line 1351 "ntp_parser.y" /* yacc.c:1646 */ 3069*2b15cb3dSCy Schubert { 3070*2b15cb3dSCy Schubert (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); 3071*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 3072*2b15cb3dSCy Schubert } 3073*2b15cb3dSCy Schubert #line 3074 "ntp_parser.c" /* yacc.c:1646 */ 3074*2b15cb3dSCy Schubert break; 3075*2b15cb3dSCy Schubert 3076*2b15cb3dSCy Schubert case 262: 3077*2b15cb3dSCy Schubert #line 1356 "ntp_parser.y" /* yacc.c:1646 */ 3078*2b15cb3dSCy Schubert { 3079*2b15cb3dSCy Schubert (yyval.Int_fifo) = NULL; 3080*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 3081*2b15cb3dSCy Schubert } 3082*2b15cb3dSCy Schubert #line 3083 "ntp_parser.c" /* yacc.c:1646 */ 3083*2b15cb3dSCy Schubert break; 3084*2b15cb3dSCy Schubert 3085*2b15cb3dSCy Schubert case 270: 3086*2b15cb3dSCy Schubert #line 1380 "ntp_parser.y" /* yacc.c:1646 */ 3087*2b15cb3dSCy Schubert { 3088*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 3089*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer))); 3090*2b15cb3dSCy Schubert } 3091*2b15cb3dSCy Schubert #line 3092 "ntp_parser.c" /* yacc.c:1646 */ 3092*2b15cb3dSCy Schubert break; 3093*2b15cb3dSCy Schubert 3094*2b15cb3dSCy Schubert case 271: 3095*2b15cb3dSCy Schubert #line 1385 "ntp_parser.y" /* yacc.c:1646 */ 3096*2b15cb3dSCy Schubert { 3097*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 3098*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer))); 3099*2b15cb3dSCy Schubert } 3100*2b15cb3dSCy Schubert #line 3101 "ntp_parser.c" /* yacc.c:1646 */ 3101*2b15cb3dSCy Schubert break; 3102*2b15cb3dSCy Schubert 3103*2b15cb3dSCy Schubert case 272: 3104*2b15cb3dSCy Schubert #line 1393 "ntp_parser.y" /* yacc.c:1646 */ 3105*2b15cb3dSCy Schubert { 3106*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 3107*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 3108*2b15cb3dSCy Schubert } 3109*2b15cb3dSCy Schubert #line 3110 "ntp_parser.c" /* yacc.c:1646 */ 3110*2b15cb3dSCy Schubert break; 3111*2b15cb3dSCy Schubert 3112*2b15cb3dSCy Schubert case 273: 3113*2b15cb3dSCy Schubert #line 1398 "ntp_parser.y" /* yacc.c:1646 */ 3114*2b15cb3dSCy Schubert { 3115*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 3116*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 3117*2b15cb3dSCy Schubert } 3118*2b15cb3dSCy Schubert #line 3119 "ntp_parser.c" /* yacc.c:1646 */ 3119*2b15cb3dSCy Schubert break; 3120*2b15cb3dSCy Schubert 3121*2b15cb3dSCy Schubert case 274: 3122*2b15cb3dSCy Schubert #line 1406 "ntp_parser.y" /* yacc.c:1646 */ 3123*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_ival('i', (yyvsp[0].Integer)); } 3124*2b15cb3dSCy Schubert #line 3125 "ntp_parser.c" /* yacc.c:1646 */ 3125*2b15cb3dSCy Schubert break; 3126*2b15cb3dSCy Schubert 3127*2b15cb3dSCy Schubert case 276: 3128*2b15cb3dSCy Schubert #line 1412 "ntp_parser.y" /* yacc.c:1646 */ 3129*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_rangeval('-', (yyvsp[-3].Integer), (yyvsp[-1].Integer)); } 3130*2b15cb3dSCy Schubert #line 3131 "ntp_parser.c" /* yacc.c:1646 */ 3131*2b15cb3dSCy Schubert break; 3132*2b15cb3dSCy Schubert 3133*2b15cb3dSCy Schubert case 277: 3134*2b15cb3dSCy Schubert #line 1417 "ntp_parser.y" /* yacc.c:1646 */ 3135*2b15cb3dSCy Schubert { 3136*2b15cb3dSCy Schubert (yyval.String_fifo) = (yyvsp[-1].String_fifo); 3137*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String))); 3138*2b15cb3dSCy Schubert } 3139*2b15cb3dSCy Schubert #line 3140 "ntp_parser.c" /* yacc.c:1646 */ 3140*2b15cb3dSCy Schubert break; 3141*2b15cb3dSCy Schubert 3142*2b15cb3dSCy Schubert case 278: 3143*2b15cb3dSCy Schubert #line 1422 "ntp_parser.y" /* yacc.c:1646 */ 3144*2b15cb3dSCy Schubert { 3145*2b15cb3dSCy Schubert (yyval.String_fifo) = NULL; 3146*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String))); 3147*2b15cb3dSCy Schubert } 3148*2b15cb3dSCy Schubert #line 3149 "ntp_parser.c" /* yacc.c:1646 */ 3149*2b15cb3dSCy Schubert break; 3150*2b15cb3dSCy Schubert 3151*2b15cb3dSCy Schubert case 279: 3152*2b15cb3dSCy Schubert #line 1430 "ntp_parser.y" /* yacc.c:1646 */ 3153*2b15cb3dSCy Schubert { 3154*2b15cb3dSCy Schubert (yyval.Address_fifo) = (yyvsp[-1].Address_fifo); 3155*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node)); 3156*2b15cb3dSCy Schubert } 3157*2b15cb3dSCy Schubert #line 3158 "ntp_parser.c" /* yacc.c:1646 */ 3158*2b15cb3dSCy Schubert break; 3159*2b15cb3dSCy Schubert 3160*2b15cb3dSCy Schubert case 280: 3161*2b15cb3dSCy Schubert #line 1435 "ntp_parser.y" /* yacc.c:1646 */ 3162*2b15cb3dSCy Schubert { 3163*2b15cb3dSCy Schubert (yyval.Address_fifo) = NULL; 3164*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node)); 3165*2b15cb3dSCy Schubert } 3166*2b15cb3dSCy Schubert #line 3167 "ntp_parser.c" /* yacc.c:1646 */ 3167*2b15cb3dSCy Schubert break; 3168*2b15cb3dSCy Schubert 3169*2b15cb3dSCy Schubert case 281: 3170*2b15cb3dSCy Schubert #line 1443 "ntp_parser.y" /* yacc.c:1646 */ 3171*2b15cb3dSCy Schubert { 3172*2b15cb3dSCy Schubert if ((yyvsp[0].Integer) != 0 && (yyvsp[0].Integer) != 1) { 3173*2b15cb3dSCy Schubert yyerror(ip_file, "Integer value is not boolean (0 or 1). Assuming 1"); 3174*2b15cb3dSCy Schubert (yyval.Integer) = 1; 3175*2b15cb3dSCy Schubert } else { 3176*2b15cb3dSCy Schubert (yyval.Integer) = (yyvsp[0].Integer); 3177*2b15cb3dSCy Schubert } 3178*2b15cb3dSCy Schubert } 3179*2b15cb3dSCy Schubert #line 3180 "ntp_parser.c" /* yacc.c:1646 */ 3180*2b15cb3dSCy Schubert break; 3181*2b15cb3dSCy Schubert 3182*2b15cb3dSCy Schubert case 282: 3183*2b15cb3dSCy Schubert #line 1451 "ntp_parser.y" /* yacc.c:1646 */ 3184*2b15cb3dSCy Schubert { (yyval.Integer) = 1; } 3185*2b15cb3dSCy Schubert #line 3186 "ntp_parser.c" /* yacc.c:1646 */ 3186*2b15cb3dSCy Schubert break; 3187*2b15cb3dSCy Schubert 3188*2b15cb3dSCy Schubert case 283: 3189*2b15cb3dSCy Schubert #line 1452 "ntp_parser.y" /* yacc.c:1646 */ 3190*2b15cb3dSCy Schubert { (yyval.Integer) = 0; } 3191*2b15cb3dSCy Schubert #line 3192 "ntp_parser.c" /* yacc.c:1646 */ 3192*2b15cb3dSCy Schubert break; 3193*2b15cb3dSCy Schubert 3194*2b15cb3dSCy Schubert case 284: 3195*2b15cb3dSCy Schubert #line 1456 "ntp_parser.y" /* yacc.c:1646 */ 3196*2b15cb3dSCy Schubert { (yyval.Double) = (double)(yyvsp[0].Integer); } 3197*2b15cb3dSCy Schubert #line 3198 "ntp_parser.c" /* yacc.c:1646 */ 3198*2b15cb3dSCy Schubert break; 3199*2b15cb3dSCy Schubert 3200*2b15cb3dSCy Schubert case 286: 3201*2b15cb3dSCy Schubert #line 1467 "ntp_parser.y" /* yacc.c:1646 */ 3202*2b15cb3dSCy Schubert { 3203*2b15cb3dSCy Schubert sim_node *sn; 3204*2b15cb3dSCy Schubert 3205*2b15cb3dSCy Schubert sn = create_sim_node((yyvsp[-2].Attr_val_fifo), (yyvsp[-1].Sim_server_fifo)); 3206*2b15cb3dSCy Schubert APPEND_G_FIFO(cfgt.sim_details, sn); 3207*2b15cb3dSCy Schubert 3208*2b15cb3dSCy Schubert /* Revert from ; to \n for end-of-command */ 3209*2b15cb3dSCy Schubert old_config_style = 1; 3210*2b15cb3dSCy Schubert } 3211*2b15cb3dSCy Schubert #line 3212 "ntp_parser.c" /* yacc.c:1646 */ 3212*2b15cb3dSCy Schubert break; 3213*2b15cb3dSCy Schubert 3214*2b15cb3dSCy Schubert case 287: 3215*2b15cb3dSCy Schubert #line 1484 "ntp_parser.y" /* yacc.c:1646 */ 3216*2b15cb3dSCy Schubert { old_config_style = 0; } 3217*2b15cb3dSCy Schubert #line 3218 "ntp_parser.c" /* yacc.c:1646 */ 3218*2b15cb3dSCy Schubert break; 3219*2b15cb3dSCy Schubert 3220*2b15cb3dSCy Schubert case 288: 3221*2b15cb3dSCy Schubert #line 1489 "ntp_parser.y" /* yacc.c:1646 */ 3222*2b15cb3dSCy Schubert { 3223*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo); 3224*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); 3225*2b15cb3dSCy Schubert } 3226*2b15cb3dSCy Schubert #line 3227 "ntp_parser.c" /* yacc.c:1646 */ 3227*2b15cb3dSCy Schubert break; 3228*2b15cb3dSCy Schubert 3229*2b15cb3dSCy Schubert case 289: 3230*2b15cb3dSCy Schubert #line 1494 "ntp_parser.y" /* yacc.c:1646 */ 3231*2b15cb3dSCy Schubert { 3232*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 3233*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); 3234*2b15cb3dSCy Schubert } 3235*2b15cb3dSCy Schubert #line 3236 "ntp_parser.c" /* yacc.c:1646 */ 3236*2b15cb3dSCy Schubert break; 3237*2b15cb3dSCy Schubert 3238*2b15cb3dSCy Schubert case 290: 3239*2b15cb3dSCy Schubert #line 1502 "ntp_parser.y" /* yacc.c:1646 */ 3240*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); } 3241*2b15cb3dSCy Schubert #line 3242 "ntp_parser.c" /* yacc.c:1646 */ 3242*2b15cb3dSCy Schubert break; 3243*2b15cb3dSCy Schubert 3244*2b15cb3dSCy Schubert case 293: 3245*2b15cb3dSCy Schubert #line 1512 "ntp_parser.y" /* yacc.c:1646 */ 3246*2b15cb3dSCy Schubert { 3247*2b15cb3dSCy Schubert (yyval.Sim_server_fifo) = (yyvsp[-1].Sim_server_fifo); 3248*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server)); 3249*2b15cb3dSCy Schubert } 3250*2b15cb3dSCy Schubert #line 3251 "ntp_parser.c" /* yacc.c:1646 */ 3251*2b15cb3dSCy Schubert break; 3252*2b15cb3dSCy Schubert 3253*2b15cb3dSCy Schubert case 294: 3254*2b15cb3dSCy Schubert #line 1517 "ntp_parser.y" /* yacc.c:1646 */ 3255*2b15cb3dSCy Schubert { 3256*2b15cb3dSCy Schubert (yyval.Sim_server_fifo) = NULL; 3257*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server)); 3258*2b15cb3dSCy Schubert } 3259*2b15cb3dSCy Schubert #line 3260 "ntp_parser.c" /* yacc.c:1646 */ 3260*2b15cb3dSCy Schubert break; 3261*2b15cb3dSCy Schubert 3262*2b15cb3dSCy Schubert case 295: 3263*2b15cb3dSCy Schubert #line 1525 "ntp_parser.y" /* yacc.c:1646 */ 3264*2b15cb3dSCy Schubert { (yyval.Sim_server) = ONLY_SIM(create_sim_server((yyvsp[-4].Address_node), (yyvsp[-2].Double), (yyvsp[-1].Sim_script_fifo))); } 3265*2b15cb3dSCy Schubert #line 3266 "ntp_parser.c" /* yacc.c:1646 */ 3266*2b15cb3dSCy Schubert break; 3267*2b15cb3dSCy Schubert 3268*2b15cb3dSCy Schubert case 296: 3269*2b15cb3dSCy Schubert #line 1530 "ntp_parser.y" /* yacc.c:1646 */ 3270*2b15cb3dSCy Schubert { (yyval.Double) = (yyvsp[-1].Double); } 3271*2b15cb3dSCy Schubert #line 3272 "ntp_parser.c" /* yacc.c:1646 */ 3272*2b15cb3dSCy Schubert break; 3273*2b15cb3dSCy Schubert 3274*2b15cb3dSCy Schubert case 297: 3275*2b15cb3dSCy Schubert #line 1535 "ntp_parser.y" /* yacc.c:1646 */ 3276*2b15cb3dSCy Schubert { (yyval.Address_node) = (yyvsp[0].Address_node); } 3277*2b15cb3dSCy Schubert #line 3278 "ntp_parser.c" /* yacc.c:1646 */ 3278*2b15cb3dSCy Schubert break; 3279*2b15cb3dSCy Schubert 3280*2b15cb3dSCy Schubert case 298: 3281*2b15cb3dSCy Schubert #line 1540 "ntp_parser.y" /* yacc.c:1646 */ 3282*2b15cb3dSCy Schubert { 3283*2b15cb3dSCy Schubert (yyval.Sim_script_fifo) = (yyvsp[-1].Sim_script_fifo); 3284*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script)); 3285*2b15cb3dSCy Schubert } 3286*2b15cb3dSCy Schubert #line 3287 "ntp_parser.c" /* yacc.c:1646 */ 3287*2b15cb3dSCy Schubert break; 3288*2b15cb3dSCy Schubert 3289*2b15cb3dSCy Schubert case 299: 3290*2b15cb3dSCy Schubert #line 1545 "ntp_parser.y" /* yacc.c:1646 */ 3291*2b15cb3dSCy Schubert { 3292*2b15cb3dSCy Schubert (yyval.Sim_script_fifo) = NULL; 3293*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script)); 3294*2b15cb3dSCy Schubert } 3295*2b15cb3dSCy Schubert #line 3296 "ntp_parser.c" /* yacc.c:1646 */ 3296*2b15cb3dSCy Schubert break; 3297*2b15cb3dSCy Schubert 3298*2b15cb3dSCy Schubert case 300: 3299*2b15cb3dSCy Schubert #line 1553 "ntp_parser.y" /* yacc.c:1646 */ 3300*2b15cb3dSCy Schubert { (yyval.Sim_script) = ONLY_SIM(create_sim_script_info((yyvsp[-3].Double), (yyvsp[-1].Attr_val_fifo))); } 3301*2b15cb3dSCy Schubert #line 3302 "ntp_parser.c" /* yacc.c:1646 */ 3302*2b15cb3dSCy Schubert break; 3303*2b15cb3dSCy Schubert 3304*2b15cb3dSCy Schubert case 301: 3305*2b15cb3dSCy Schubert #line 1558 "ntp_parser.y" /* yacc.c:1646 */ 3306*2b15cb3dSCy Schubert { 3307*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo); 3308*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); 3309*2b15cb3dSCy Schubert } 3310*2b15cb3dSCy Schubert #line 3311 "ntp_parser.c" /* yacc.c:1646 */ 3311*2b15cb3dSCy Schubert break; 3312*2b15cb3dSCy Schubert 3313*2b15cb3dSCy Schubert case 302: 3314*2b15cb3dSCy Schubert #line 1563 "ntp_parser.y" /* yacc.c:1646 */ 3315*2b15cb3dSCy Schubert { 3316*2b15cb3dSCy Schubert (yyval.Attr_val_fifo) = NULL; 3317*2b15cb3dSCy Schubert APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); 3318*2b15cb3dSCy Schubert } 3319*2b15cb3dSCy Schubert #line 3320 "ntp_parser.c" /* yacc.c:1646 */ 3320*2b15cb3dSCy Schubert break; 3321*2b15cb3dSCy Schubert 3322*2b15cb3dSCy Schubert case 303: 3323*2b15cb3dSCy Schubert #line 1571 "ntp_parser.y" /* yacc.c:1646 */ 3324*2b15cb3dSCy Schubert { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); } 3325*2b15cb3dSCy Schubert #line 3326 "ntp_parser.c" /* yacc.c:1646 */ 3326*2b15cb3dSCy Schubert break; 3327*2b15cb3dSCy Schubert 3328*2b15cb3dSCy Schubert 3329*2b15cb3dSCy Schubert #line 3330 "ntp_parser.c" /* yacc.c:1646 */ 3330*2b15cb3dSCy Schubert default: break; 3331*2b15cb3dSCy Schubert } 3332*2b15cb3dSCy Schubert /* User semantic actions sometimes alter yychar, and that requires 3333*2b15cb3dSCy Schubert that yytoken be updated with the new translation. We take the 3334*2b15cb3dSCy Schubert approach of translating immediately before every use of yytoken. 3335*2b15cb3dSCy Schubert One alternative is translating here after every semantic action, 3336*2b15cb3dSCy Schubert but that translation would be missed if the semantic action invokes 3337*2b15cb3dSCy Schubert YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or 3338*2b15cb3dSCy Schubert if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an 3339*2b15cb3dSCy Schubert incorrect destructor might then be invoked immediately. In the 3340*2b15cb3dSCy Schubert case of YYERROR or YYBACKUP, subsequent parser actions might lead 3341*2b15cb3dSCy Schubert to an incorrect destructor call or verbose syntax error message 3342*2b15cb3dSCy Schubert before the lookahead is translated. */ 3343*2b15cb3dSCy Schubert YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); 3344*2b15cb3dSCy Schubert 3345*2b15cb3dSCy Schubert YYPOPSTACK (yylen); 3346*2b15cb3dSCy Schubert yylen = 0; 3347*2b15cb3dSCy Schubert YY_STACK_PRINT (yyss, yyssp); 3348*2b15cb3dSCy Schubert 3349*2b15cb3dSCy Schubert *++yyvsp = yyval; 3350*2b15cb3dSCy Schubert 3351*2b15cb3dSCy Schubert /* Now 'shift' the result of the reduction. Determine what state 3352*2b15cb3dSCy Schubert that goes to, based on the state we popped back to and the rule 3353*2b15cb3dSCy Schubert number reduced by. */ 3354*2b15cb3dSCy Schubert 3355*2b15cb3dSCy Schubert yyn = yyr1[yyn]; 3356*2b15cb3dSCy Schubert 3357*2b15cb3dSCy Schubert yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; 3358*2b15cb3dSCy Schubert if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) 3359*2b15cb3dSCy Schubert yystate = yytable[yystate]; 3360*2b15cb3dSCy Schubert else 3361*2b15cb3dSCy Schubert yystate = yydefgoto[yyn - YYNTOKENS]; 3362*2b15cb3dSCy Schubert 3363*2b15cb3dSCy Schubert goto yynewstate; 3364*2b15cb3dSCy Schubert 3365*2b15cb3dSCy Schubert 3366*2b15cb3dSCy Schubert /*--------------------------------------. 3367*2b15cb3dSCy Schubert | yyerrlab -- here on detecting error. | 3368*2b15cb3dSCy Schubert `--------------------------------------*/ 3369*2b15cb3dSCy Schubert yyerrlab: 3370*2b15cb3dSCy Schubert /* Make sure we have latest lookahead translation. See comments at 3371*2b15cb3dSCy Schubert user semantic actions for why this is necessary. */ 3372*2b15cb3dSCy Schubert yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); 3373*2b15cb3dSCy Schubert 3374*2b15cb3dSCy Schubert /* If not already recovering from an error, report this error. */ 3375*2b15cb3dSCy Schubert if (!yyerrstatus) 3376*2b15cb3dSCy Schubert { 3377*2b15cb3dSCy Schubert ++yynerrs; 3378*2b15cb3dSCy Schubert #if ! YYERROR_VERBOSE 3379*2b15cb3dSCy Schubert yyerror (ip_file, YY_("syntax error")); 3380*2b15cb3dSCy Schubert #else 3381*2b15cb3dSCy Schubert # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ 3382*2b15cb3dSCy Schubert yyssp, yytoken) 3383*2b15cb3dSCy Schubert { 3384*2b15cb3dSCy Schubert char const *yymsgp = YY_("syntax error"); 3385*2b15cb3dSCy Schubert int yysyntax_error_status; 3386*2b15cb3dSCy Schubert yysyntax_error_status = YYSYNTAX_ERROR; 3387*2b15cb3dSCy Schubert if (yysyntax_error_status == 0) 3388*2b15cb3dSCy Schubert yymsgp = yymsg; 3389*2b15cb3dSCy Schubert else if (yysyntax_error_status == 1) 3390*2b15cb3dSCy Schubert { 3391*2b15cb3dSCy Schubert if (yymsg != yymsgbuf) 3392*2b15cb3dSCy Schubert YYSTACK_FREE (yymsg); 3393*2b15cb3dSCy Schubert yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); 3394*2b15cb3dSCy Schubert if (!yymsg) 3395*2b15cb3dSCy Schubert { 3396*2b15cb3dSCy Schubert yymsg = yymsgbuf; 3397*2b15cb3dSCy Schubert yymsg_alloc = sizeof yymsgbuf; 3398*2b15cb3dSCy Schubert yysyntax_error_status = 2; 3399*2b15cb3dSCy Schubert } 3400*2b15cb3dSCy Schubert else 3401*2b15cb3dSCy Schubert { 3402*2b15cb3dSCy Schubert yysyntax_error_status = YYSYNTAX_ERROR; 3403*2b15cb3dSCy Schubert yymsgp = yymsg; 3404*2b15cb3dSCy Schubert } 3405*2b15cb3dSCy Schubert } 3406*2b15cb3dSCy Schubert yyerror (ip_file, yymsgp); 3407*2b15cb3dSCy Schubert if (yysyntax_error_status == 2) 3408*2b15cb3dSCy Schubert goto yyexhaustedlab; 3409*2b15cb3dSCy Schubert } 3410*2b15cb3dSCy Schubert # undef YYSYNTAX_ERROR 3411*2b15cb3dSCy Schubert #endif 3412*2b15cb3dSCy Schubert } 3413*2b15cb3dSCy Schubert 3414*2b15cb3dSCy Schubert 3415*2b15cb3dSCy Schubert 3416*2b15cb3dSCy Schubert if (yyerrstatus == 3) 3417*2b15cb3dSCy Schubert { 3418*2b15cb3dSCy Schubert /* If just tried and failed to reuse lookahead token after an 3419*2b15cb3dSCy Schubert error, discard it. */ 3420*2b15cb3dSCy Schubert 3421*2b15cb3dSCy Schubert if (yychar <= YYEOF) 3422*2b15cb3dSCy Schubert { 3423*2b15cb3dSCy Schubert /* Return failure if at end of input. */ 3424*2b15cb3dSCy Schubert if (yychar == YYEOF) 3425*2b15cb3dSCy Schubert YYABORT; 3426*2b15cb3dSCy Schubert } 3427*2b15cb3dSCy Schubert else 3428*2b15cb3dSCy Schubert { 3429*2b15cb3dSCy Schubert yydestruct ("Error: discarding", 3430*2b15cb3dSCy Schubert yytoken, &yylval, ip_file); 3431*2b15cb3dSCy Schubert yychar = YYEMPTY; 3432*2b15cb3dSCy Schubert } 3433*2b15cb3dSCy Schubert } 3434*2b15cb3dSCy Schubert 3435*2b15cb3dSCy Schubert /* Else will try to reuse lookahead token after shifting the error 3436*2b15cb3dSCy Schubert token. */ 3437*2b15cb3dSCy Schubert goto yyerrlab1; 3438*2b15cb3dSCy Schubert 3439*2b15cb3dSCy Schubert 3440*2b15cb3dSCy Schubert /*---------------------------------------------------. 3441*2b15cb3dSCy Schubert | yyerrorlab -- error raised explicitly by YYERROR. | 3442*2b15cb3dSCy Schubert `---------------------------------------------------*/ 3443*2b15cb3dSCy Schubert yyerrorlab: 3444*2b15cb3dSCy Schubert 3445*2b15cb3dSCy Schubert /* Pacify compilers like GCC when the user code never invokes 3446*2b15cb3dSCy Schubert YYERROR and the label yyerrorlab therefore never appears in user 3447*2b15cb3dSCy Schubert code. */ 3448*2b15cb3dSCy Schubert if (/*CONSTCOND*/ 0) 3449*2b15cb3dSCy Schubert goto yyerrorlab; 3450*2b15cb3dSCy Schubert 3451*2b15cb3dSCy Schubert /* Do not reclaim the symbols of the rule whose action triggered 3452*2b15cb3dSCy Schubert this YYERROR. */ 3453*2b15cb3dSCy Schubert YYPOPSTACK (yylen); 3454*2b15cb3dSCy Schubert yylen = 0; 3455*2b15cb3dSCy Schubert YY_STACK_PRINT (yyss, yyssp); 3456*2b15cb3dSCy Schubert yystate = *yyssp; 3457*2b15cb3dSCy Schubert goto yyerrlab1; 3458*2b15cb3dSCy Schubert 3459*2b15cb3dSCy Schubert 3460*2b15cb3dSCy Schubert /*-------------------------------------------------------------. 3461*2b15cb3dSCy Schubert | yyerrlab1 -- common code for both syntax error and YYERROR. | 3462*2b15cb3dSCy Schubert `-------------------------------------------------------------*/ 3463*2b15cb3dSCy Schubert yyerrlab1: 3464*2b15cb3dSCy Schubert yyerrstatus = 3; /* Each real token shifted decrements this. */ 3465*2b15cb3dSCy Schubert 3466*2b15cb3dSCy Schubert for (;;) 3467*2b15cb3dSCy Schubert { 3468*2b15cb3dSCy Schubert yyn = yypact[yystate]; 3469*2b15cb3dSCy Schubert if (!yypact_value_is_default (yyn)) 3470*2b15cb3dSCy Schubert { 3471*2b15cb3dSCy Schubert yyn += YYTERROR; 3472*2b15cb3dSCy Schubert if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) 3473*2b15cb3dSCy Schubert { 3474*2b15cb3dSCy Schubert yyn = yytable[yyn]; 3475*2b15cb3dSCy Schubert if (0 < yyn) 3476*2b15cb3dSCy Schubert break; 3477*2b15cb3dSCy Schubert } 3478*2b15cb3dSCy Schubert } 3479*2b15cb3dSCy Schubert 3480*2b15cb3dSCy Schubert /* Pop the current state because it cannot handle the error token. */ 3481*2b15cb3dSCy Schubert if (yyssp == yyss) 3482*2b15cb3dSCy Schubert YYABORT; 3483*2b15cb3dSCy Schubert 3484*2b15cb3dSCy Schubert 3485*2b15cb3dSCy Schubert yydestruct ("Error: popping", 3486*2b15cb3dSCy Schubert yystos[yystate], yyvsp, ip_file); 3487*2b15cb3dSCy Schubert YYPOPSTACK (1); 3488*2b15cb3dSCy Schubert yystate = *yyssp; 3489*2b15cb3dSCy Schubert YY_STACK_PRINT (yyss, yyssp); 3490*2b15cb3dSCy Schubert } 3491*2b15cb3dSCy Schubert 3492*2b15cb3dSCy Schubert YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 3493*2b15cb3dSCy Schubert *++yyvsp = yylval; 3494*2b15cb3dSCy Schubert YY_IGNORE_MAYBE_UNINITIALIZED_END 3495*2b15cb3dSCy Schubert 3496*2b15cb3dSCy Schubert 3497*2b15cb3dSCy Schubert /* Shift the error token. */ 3498*2b15cb3dSCy Schubert YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); 3499*2b15cb3dSCy Schubert 3500*2b15cb3dSCy Schubert yystate = yyn; 3501*2b15cb3dSCy Schubert goto yynewstate; 3502*2b15cb3dSCy Schubert 3503*2b15cb3dSCy Schubert 3504*2b15cb3dSCy Schubert /*-------------------------------------. 3505*2b15cb3dSCy Schubert | yyacceptlab -- YYACCEPT comes here. | 3506*2b15cb3dSCy Schubert `-------------------------------------*/ 3507*2b15cb3dSCy Schubert yyacceptlab: 3508*2b15cb3dSCy Schubert yyresult = 0; 3509*2b15cb3dSCy Schubert goto yyreturn; 3510*2b15cb3dSCy Schubert 3511*2b15cb3dSCy Schubert /*-----------------------------------. 3512*2b15cb3dSCy Schubert | yyabortlab -- YYABORT comes here. | 3513*2b15cb3dSCy Schubert `-----------------------------------*/ 3514*2b15cb3dSCy Schubert yyabortlab: 3515*2b15cb3dSCy Schubert yyresult = 1; 3516*2b15cb3dSCy Schubert goto yyreturn; 3517*2b15cb3dSCy Schubert 3518*2b15cb3dSCy Schubert #if !defined yyoverflow || YYERROR_VERBOSE 3519*2b15cb3dSCy Schubert /*-------------------------------------------------. 3520*2b15cb3dSCy Schubert | yyexhaustedlab -- memory exhaustion comes here. | 3521*2b15cb3dSCy Schubert `-------------------------------------------------*/ 3522*2b15cb3dSCy Schubert yyexhaustedlab: 3523*2b15cb3dSCy Schubert yyerror (ip_file, YY_("memory exhausted")); 3524*2b15cb3dSCy Schubert yyresult = 2; 3525*2b15cb3dSCy Schubert /* Fall through. */ 3526*2b15cb3dSCy Schubert #endif 3527*2b15cb3dSCy Schubert 3528*2b15cb3dSCy Schubert yyreturn: 3529*2b15cb3dSCy Schubert if (yychar != YYEMPTY) 3530*2b15cb3dSCy Schubert { 3531*2b15cb3dSCy Schubert /* Make sure we have latest lookahead translation. See comments at 3532*2b15cb3dSCy Schubert user semantic actions for why this is necessary. */ 3533*2b15cb3dSCy Schubert yytoken = YYTRANSLATE (yychar); 3534*2b15cb3dSCy Schubert yydestruct ("Cleanup: discarding lookahead", 3535*2b15cb3dSCy Schubert yytoken, &yylval, ip_file); 3536*2b15cb3dSCy Schubert } 3537*2b15cb3dSCy Schubert /* Do not reclaim the symbols of the rule whose action triggered 3538*2b15cb3dSCy Schubert this YYABORT or YYACCEPT. */ 3539*2b15cb3dSCy Schubert YYPOPSTACK (yylen); 3540*2b15cb3dSCy Schubert YY_STACK_PRINT (yyss, yyssp); 3541*2b15cb3dSCy Schubert while (yyssp != yyss) 3542*2b15cb3dSCy Schubert { 3543*2b15cb3dSCy Schubert yydestruct ("Cleanup: popping", 3544*2b15cb3dSCy Schubert yystos[*yyssp], yyvsp, ip_file); 3545*2b15cb3dSCy Schubert YYPOPSTACK (1); 3546*2b15cb3dSCy Schubert } 3547*2b15cb3dSCy Schubert #ifndef yyoverflow 3548*2b15cb3dSCy Schubert if (yyss != yyssa) 3549*2b15cb3dSCy Schubert YYSTACK_FREE (yyss); 3550*2b15cb3dSCy Schubert #endif 3551*2b15cb3dSCy Schubert #if YYERROR_VERBOSE 3552*2b15cb3dSCy Schubert if (yymsg != yymsgbuf) 3553*2b15cb3dSCy Schubert YYSTACK_FREE (yymsg); 3554*2b15cb3dSCy Schubert #endif 3555*2b15cb3dSCy Schubert return yyresult; 3556*2b15cb3dSCy Schubert } 3557*2b15cb3dSCy Schubert #line 1582 "ntp_parser.y" /* yacc.c:1906 */ 3558*2b15cb3dSCy Schubert 3559*2b15cb3dSCy Schubert 3560*2b15cb3dSCy Schubert void 3561*2b15cb3dSCy Schubert yyerror( 3562*2b15cb3dSCy Schubert struct FILE_INFO *ip_file, 3563*2b15cb3dSCy Schubert const char *msg 3564*2b15cb3dSCy Schubert ) 3565*2b15cb3dSCy Schubert { 3566*2b15cb3dSCy Schubert int retval; 3567*2b15cb3dSCy Schubert 3568*2b15cb3dSCy Schubert ip_file->err_line_no = ip_file->prev_token_line_no; 3569*2b15cb3dSCy Schubert ip_file->err_col_no = ip_file->prev_token_col_no; 3570*2b15cb3dSCy Schubert 3571*2b15cb3dSCy Schubert msyslog(LOG_ERR, 3572*2b15cb3dSCy Schubert "line %d column %d %s", 3573*2b15cb3dSCy Schubert ip_file->err_line_no, 3574*2b15cb3dSCy Schubert ip_file->err_col_no, 3575*2b15cb3dSCy Schubert msg); 3576*2b15cb3dSCy Schubert if (!input_from_file) { 3577*2b15cb3dSCy Schubert /* Save the error message in the correct buffer */ 3578*2b15cb3dSCy Schubert retval = snprintf(remote_config.err_msg + remote_config.err_pos, 3579*2b15cb3dSCy Schubert MAXLINE - remote_config.err_pos, 3580*2b15cb3dSCy Schubert "column %d %s", 3581*2b15cb3dSCy Schubert ip_file->err_col_no, msg); 3582*2b15cb3dSCy Schubert 3583*2b15cb3dSCy Schubert /* Increment the value of err_pos */ 3584*2b15cb3dSCy Schubert if (retval > 0) 3585*2b15cb3dSCy Schubert remote_config.err_pos += retval; 3586*2b15cb3dSCy Schubert 3587*2b15cb3dSCy Schubert /* Increment the number of errors */ 3588*2b15cb3dSCy Schubert ++remote_config.no_errors; 3589*2b15cb3dSCy Schubert } 3590*2b15cb3dSCy Schubert } 3591*2b15cb3dSCy Schubert 3592*2b15cb3dSCy Schubert 3593*2b15cb3dSCy Schubert /* 3594*2b15cb3dSCy Schubert * token_name - convert T_ token integers to text 3595*2b15cb3dSCy Schubert * example: token_name(T_Server) returns "T_Server" 3596*2b15cb3dSCy Schubert */ 3597*2b15cb3dSCy Schubert const char * 3598*2b15cb3dSCy Schubert token_name( 3599*2b15cb3dSCy Schubert int token 3600*2b15cb3dSCy Schubert ) 3601*2b15cb3dSCy Schubert { 3602*2b15cb3dSCy Schubert return yytname[YYTRANSLATE(token)]; 3603*2b15cb3dSCy Schubert } 3604*2b15cb3dSCy Schubert 3605*2b15cb3dSCy Schubert 3606*2b15cb3dSCy Schubert /* Initial Testing function -- ignore */ 3607*2b15cb3dSCy Schubert #if 0 3608*2b15cb3dSCy Schubert int main(int argc, char *argv[]) 3609*2b15cb3dSCy Schubert { 3610*2b15cb3dSCy Schubert ip_file = FOPEN(argv[1], "r"); 3611*2b15cb3dSCy Schubert if (!ip_file) 3612*2b15cb3dSCy Schubert fprintf(stderr, "ERROR!! Could not open file: %s\n", argv[1]); 3613*2b15cb3dSCy Schubert yyparse(); 3614*2b15cb3dSCy Schubert return 0; 3615*2b15cb3dSCy Schubert } 3616*2b15cb3dSCy Schubert #endif 3617*2b15cb3dSCy Schubert 3618