1301301Sdelphij/* A Bison parser, made by GNU Bison 3.0.4. */ 2290001Sglebius 3290001Sglebius/* Bison implementation for Yacc-like parsers in C 4301301Sdelphij 5301301Sdelphij Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc. 6301301Sdelphij 7290001Sglebius This program is free software: you can redistribute it and/or modify 8290001Sglebius it under the terms of the GNU General Public License as published by 9290001Sglebius the Free Software Foundation, either version 3 of the License, or 10290001Sglebius (at your option) any later version. 11301301Sdelphij 12290001Sglebius This program is distributed in the hope that it will be useful, 13290001Sglebius but WITHOUT ANY WARRANTY; without even the implied warranty of 14290001Sglebius MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15290001Sglebius GNU General Public License for more details. 16301301Sdelphij 17290001Sglebius You should have received a copy of the GNU General Public License 18290001Sglebius along with this program. If not, see <http://www.gnu.org/licenses/>. */ 19290001Sglebius 20290001Sglebius/* As a special exception, you may create a larger work that contains 21290001Sglebius part or all of the Bison parser skeleton and distribute that work 22290001Sglebius under terms of your choice, so long as that work isn't itself a 23290001Sglebius parser generator using the skeleton or a modified version thereof 24290001Sglebius as a parser skeleton. Alternatively, if you modify or redistribute 25290001Sglebius the parser skeleton itself, you may (at your option) remove this 26290001Sglebius special exception, which will cause the skeleton and the resulting 27290001Sglebius Bison output files to be licensed under the GNU General Public 28290001Sglebius License without this special exception. 29301301Sdelphij 30290001Sglebius This special exception was added by the Free Software Foundation in 31290001Sglebius version 2.2 of Bison. */ 32290001Sglebius 33290001Sglebius/* C LALR(1) parser skeleton written by Richard Stallman, by 34290001Sglebius simplifying the original so-called "semantic" parser. */ 35290001Sglebius 36290001Sglebius/* All symbols defined below should begin with yy or YY, to avoid 37290001Sglebius infringing on user name space. This should be done even for local 38290001Sglebius variables, as they might otherwise be expanded by user macros. 39290001Sglebius There are some unavoidable exceptions within include files to 40290001Sglebius define necessary library symbols; they are noted "INFRINGES ON 41290001Sglebius USER NAME SPACE" below. */ 42290001Sglebius 43290001Sglebius/* Identify Bison output. */ 44290001Sglebius#define YYBISON 1 45290001Sglebius 46290001Sglebius/* Bison version. */ 47301301Sdelphij#define YYBISON_VERSION "3.0.4" 48290001Sglebius 49290001Sglebius/* Skeleton name. */ 50290001Sglebius#define YYSKELETON_NAME "yacc.c" 51290001Sglebius 52290001Sglebius/* Pure parsers. */ 53290001Sglebius#define YYPURE 0 54290001Sglebius 55290001Sglebius/* Push parsers. */ 56290001Sglebius#define YYPUSH 0 57290001Sglebius 58290001Sglebius/* Pull parsers. */ 59290001Sglebius#define YYPULL 1 60290001Sglebius 61290001Sglebius 62290001Sglebius 63290001Sglebius 64290001Sglebius/* Copy the first part of user declarations. */ 65301301Sdelphij#line 11 "../../ntpd/ntp_parser.y" /* yacc.c:339 */ 66290001Sglebius 67290001Sglebius #ifdef HAVE_CONFIG_H 68290001Sglebius # include <config.h> 69290001Sglebius #endif 70290001Sglebius 71290001Sglebius #include "ntp.h" 72290001Sglebius #include "ntpd.h" 73290001Sglebius #include "ntp_machine.h" 74290001Sglebius #include "ntp_stdlib.h" 75290001Sglebius #include "ntp_filegen.h" 76290001Sglebius #include "ntp_scanner.h" 77290001Sglebius #include "ntp_config.h" 78290001Sglebius #include "ntp_crypto.h" 79290001Sglebius 80290001Sglebius #include "ntpsim.h" /* HMS: Do we really want this all the time? */ 81290001Sglebius /* SK: It might be a good idea to always 82290001Sglebius include the simulator code. That way 83290001Sglebius someone can use the same configuration file 84290001Sglebius for both the simulator and the daemon 85290001Sglebius */ 86290001Sglebius 87290001Sglebius #define YYMALLOC emalloc 88290001Sglebius #define YYFREE free 89290001Sglebius #define YYERROR_VERBOSE 90290001Sglebius #define YYMAXDEPTH 1000 /* stop the madness sooner */ 91290001Sglebius void yyerror(const char *msg); 92290001Sglebius 93290001Sglebius #ifdef SIM 94290001Sglebius # define ONLY_SIM(a) (a) 95290001Sglebius #else 96290001Sglebius # define ONLY_SIM(a) NULL 97290001Sglebius #endif 98290001Sglebius 99310419Sdelphij#line 100 "ntp_parser.c" /* yacc.c:339 */ 100290001Sglebius 101301301Sdelphij# ifndef YY_NULLPTR 102290001Sglebius# if defined __cplusplus && 201103L <= __cplusplus 103301301Sdelphij# define YY_NULLPTR nullptr 104290001Sglebius# else 105301301Sdelphij# define YY_NULLPTR 0 106290001Sglebius# endif 107290001Sglebius# endif 108290001Sglebius 109290001Sglebius/* Enabling verbose error messages. */ 110290001Sglebius#ifdef YYERROR_VERBOSE 111290001Sglebius# undef YYERROR_VERBOSE 112290001Sglebius# define YYERROR_VERBOSE 1 113290001Sglebius#else 114290001Sglebius# define YYERROR_VERBOSE 0 115290001Sglebius#endif 116290001Sglebius 117290001Sglebius/* In a future release of Bison, this section will be replaced 118290001Sglebius by #include "y.tab.h". */ 119301301Sdelphij#ifndef YY_YY_Y_TAB_H_INCLUDED 120301301Sdelphij# define YY_YY_Y_TAB_H_INCLUDED 121301301Sdelphij/* Debug traces. */ 122290001Sglebius#ifndef YYDEBUG 123290001Sglebius# define YYDEBUG 1 124290001Sglebius#endif 125290001Sglebius#if YYDEBUG 126290001Sglebiusextern int yydebug; 127290001Sglebius#endif 128290001Sglebius 129301301Sdelphij/* Token type. */ 130290001Sglebius#ifndef YYTOKENTYPE 131290001Sglebius# define YYTOKENTYPE 132301301Sdelphij enum yytokentype 133301301Sdelphij { 134301301Sdelphij T_Abbrev = 258, 135301301Sdelphij T_Age = 259, 136301301Sdelphij T_All = 260, 137301301Sdelphij T_Allan = 261, 138301301Sdelphij T_Allpeers = 262, 139301301Sdelphij T_Auth = 263, 140301301Sdelphij T_Autokey = 264, 141301301Sdelphij T_Automax = 265, 142301301Sdelphij T_Average = 266, 143301301Sdelphij T_Bclient = 267, 144310419Sdelphij T_Bcpollbstep = 268, 145310419Sdelphij T_Beacon = 269, 146310419Sdelphij T_Broadcast = 270, 147310419Sdelphij T_Broadcastclient = 271, 148310419Sdelphij T_Broadcastdelay = 272, 149310419Sdelphij T_Burst = 273, 150310419Sdelphij T_Calibrate = 274, 151310419Sdelphij T_Ceiling = 275, 152310419Sdelphij T_Clockstats = 276, 153310419Sdelphij T_Cohort = 277, 154310419Sdelphij T_ControlKey = 278, 155310419Sdelphij T_Crypto = 279, 156310419Sdelphij T_Cryptostats = 280, 157310419Sdelphij T_Ctl = 281, 158310419Sdelphij T_Day = 282, 159310419Sdelphij T_Default = 283, 160310419Sdelphij T_Digest = 284, 161310419Sdelphij T_Disable = 285, 162310419Sdelphij T_Discard = 286, 163310419Sdelphij T_Dispersion = 287, 164310419Sdelphij T_Double = 288, 165310419Sdelphij T_Driftfile = 289, 166310419Sdelphij T_Drop = 290, 167310419Sdelphij T_Dscp = 291, 168310419Sdelphij T_Ellipsis = 292, 169310419Sdelphij T_Enable = 293, 170310419Sdelphij T_End = 294, 171310419Sdelphij T_False = 295, 172310419Sdelphij T_File = 296, 173310419Sdelphij T_Filegen = 297, 174310419Sdelphij T_Filenum = 298, 175310419Sdelphij T_Flag1 = 299, 176310419Sdelphij T_Flag2 = 300, 177310419Sdelphij T_Flag3 = 301, 178310419Sdelphij T_Flag4 = 302, 179310419Sdelphij T_Flake = 303, 180310419Sdelphij T_Floor = 304, 181310419Sdelphij T_Freq = 305, 182310419Sdelphij T_Fudge = 306, 183310419Sdelphij T_Host = 307, 184310419Sdelphij T_Huffpuff = 308, 185310419Sdelphij T_Iburst = 309, 186310419Sdelphij T_Ident = 310, 187310419Sdelphij T_Ignore = 311, 188310419Sdelphij T_Incalloc = 312, 189310419Sdelphij T_Incmem = 313, 190310419Sdelphij T_Initalloc = 314, 191310419Sdelphij T_Initmem = 315, 192310419Sdelphij T_Includefile = 316, 193310419Sdelphij T_Integer = 317, 194310419Sdelphij T_Interface = 318, 195310419Sdelphij T_Intrange = 319, 196310419Sdelphij T_Io = 320, 197310419Sdelphij T_Ipv4 = 321, 198310419Sdelphij T_Ipv4_flag = 322, 199310419Sdelphij T_Ipv6 = 323, 200310419Sdelphij T_Ipv6_flag = 324, 201310419Sdelphij T_Kernel = 325, 202310419Sdelphij T_Key = 326, 203310419Sdelphij T_Keys = 327, 204310419Sdelphij T_Keysdir = 328, 205310419Sdelphij T_Kod = 329, 206310419Sdelphij T_Mssntp = 330, 207310419Sdelphij T_Leapfile = 331, 208310419Sdelphij T_Leapsmearinterval = 332, 209310419Sdelphij T_Limited = 333, 210310419Sdelphij T_Link = 334, 211310419Sdelphij T_Listen = 335, 212310419Sdelphij T_Logconfig = 336, 213310419Sdelphij T_Logfile = 337, 214310419Sdelphij T_Loopstats = 338, 215310419Sdelphij T_Lowpriotrap = 339, 216310419Sdelphij T_Manycastclient = 340, 217310419Sdelphij T_Manycastserver = 341, 218310419Sdelphij T_Mask = 342, 219310419Sdelphij T_Maxage = 343, 220310419Sdelphij T_Maxclock = 344, 221310419Sdelphij T_Maxdepth = 345, 222310419Sdelphij T_Maxdist = 346, 223310419Sdelphij T_Maxmem = 347, 224310419Sdelphij T_Maxpoll = 348, 225310419Sdelphij T_Mdnstries = 349, 226310419Sdelphij T_Mem = 350, 227310419Sdelphij T_Memlock = 351, 228310419Sdelphij T_Minclock = 352, 229310419Sdelphij T_Mindepth = 353, 230310419Sdelphij T_Mindist = 354, 231310419Sdelphij T_Minimum = 355, 232310419Sdelphij T_Minpoll = 356, 233310419Sdelphij T_Minsane = 357, 234310419Sdelphij T_Mode = 358, 235310419Sdelphij T_Mode7 = 359, 236310419Sdelphij T_Monitor = 360, 237310419Sdelphij T_Month = 361, 238310419Sdelphij T_Mru = 362, 239310419Sdelphij T_Multicastclient = 363, 240310419Sdelphij T_Nic = 364, 241310419Sdelphij T_Nolink = 365, 242310419Sdelphij T_Nomodify = 366, 243310419Sdelphij T_Nomrulist = 367, 244310419Sdelphij T_None = 368, 245310419Sdelphij T_Nonvolatile = 369, 246310419Sdelphij T_Nopeer = 370, 247310419Sdelphij T_Noquery = 371, 248310419Sdelphij T_Noselect = 372, 249310419Sdelphij T_Noserve = 373, 250310419Sdelphij T_Notrap = 374, 251310419Sdelphij T_Notrust = 375, 252310419Sdelphij T_Ntp = 376, 253310419Sdelphij T_Ntpport = 377, 254310419Sdelphij T_NtpSignDsocket = 378, 255310419Sdelphij T_Orphan = 379, 256310419Sdelphij T_Orphanwait = 380, 257310419Sdelphij T_PCEdigest = 381, 258310419Sdelphij T_Panic = 382, 259310419Sdelphij T_Peer = 383, 260310419Sdelphij T_Peerstats = 384, 261310419Sdelphij T_Phone = 385, 262310419Sdelphij T_Pid = 386, 263310419Sdelphij T_Pidfile = 387, 264310419Sdelphij T_Pool = 388, 265310419Sdelphij T_Port = 389, 266310419Sdelphij T_Preempt = 390, 267310419Sdelphij T_Prefer = 391, 268310419Sdelphij T_Protostats = 392, 269310419Sdelphij T_Pw = 393, 270310419Sdelphij T_Randfile = 394, 271310419Sdelphij T_Rawstats = 395, 272310419Sdelphij T_Refid = 396, 273310419Sdelphij T_Requestkey = 397, 274310419Sdelphij T_Reset = 398, 275310419Sdelphij T_Restrict = 399, 276310419Sdelphij T_Revoke = 400, 277310419Sdelphij T_Rlimit = 401, 278310419Sdelphij T_Saveconfigdir = 402, 279310419Sdelphij T_Server = 403, 280310419Sdelphij T_Setvar = 404, 281310419Sdelphij T_Source = 405, 282310419Sdelphij T_Stacksize = 406, 283310419Sdelphij T_Statistics = 407, 284310419Sdelphij T_Stats = 408, 285310419Sdelphij T_Statsdir = 409, 286310419Sdelphij T_Step = 410, 287310419Sdelphij T_Stepback = 411, 288310419Sdelphij T_Stepfwd = 412, 289310419Sdelphij T_Stepout = 413, 290310419Sdelphij T_Stratum = 414, 291310419Sdelphij T_String = 415, 292310419Sdelphij T_Sys = 416, 293310419Sdelphij T_Sysstats = 417, 294310419Sdelphij T_Tick = 418, 295310419Sdelphij T_Time1 = 419, 296310419Sdelphij T_Time2 = 420, 297310419Sdelphij T_Timer = 421, 298310419Sdelphij T_Timingstats = 422, 299310419Sdelphij T_Tinker = 423, 300310419Sdelphij T_Tos = 424, 301310419Sdelphij T_Trap = 425, 302310419Sdelphij T_True = 426, 303310419Sdelphij T_Trustedkey = 427, 304310419Sdelphij T_Ttl = 428, 305310419Sdelphij T_Type = 429, 306310419Sdelphij T_U_int = 430, 307310419Sdelphij T_UEcrypto = 431, 308310419Sdelphij T_UEcryptonak = 432, 309310419Sdelphij T_UEdigest = 433, 310310419Sdelphij T_Unconfig = 434, 311310419Sdelphij T_Unpeer = 435, 312310419Sdelphij T_Version = 436, 313310419Sdelphij T_WanderThreshold = 437, 314310419Sdelphij T_Week = 438, 315310419Sdelphij T_Wildcard = 439, 316310419Sdelphij T_Xleave = 440, 317310419Sdelphij T_Year = 441, 318310419Sdelphij T_Flag = 442, 319310419Sdelphij T_EOC = 443, 320310419Sdelphij T_Simulate = 444, 321310419Sdelphij T_Beep_Delay = 445, 322310419Sdelphij T_Sim_Duration = 446, 323310419Sdelphij T_Server_Offset = 447, 324310419Sdelphij T_Duration = 448, 325310419Sdelphij T_Freq_Offset = 449, 326310419Sdelphij T_Wander = 450, 327310419Sdelphij T_Jitter = 451, 328310419Sdelphij T_Prop_Delay = 452, 329310419Sdelphij T_Proc_Delay = 453 330301301Sdelphij }; 331290001Sglebius#endif 332290001Sglebius/* Tokens. */ 333290001Sglebius#define T_Abbrev 258 334290001Sglebius#define T_Age 259 335290001Sglebius#define T_All 260 336290001Sglebius#define T_Allan 261 337290001Sglebius#define T_Allpeers 262 338290001Sglebius#define T_Auth 263 339290001Sglebius#define T_Autokey 264 340290001Sglebius#define T_Automax 265 341290001Sglebius#define T_Average 266 342290001Sglebius#define T_Bclient 267 343310419Sdelphij#define T_Bcpollbstep 268 344310419Sdelphij#define T_Beacon 269 345310419Sdelphij#define T_Broadcast 270 346310419Sdelphij#define T_Broadcastclient 271 347310419Sdelphij#define T_Broadcastdelay 272 348310419Sdelphij#define T_Burst 273 349310419Sdelphij#define T_Calibrate 274 350310419Sdelphij#define T_Ceiling 275 351310419Sdelphij#define T_Clockstats 276 352310419Sdelphij#define T_Cohort 277 353310419Sdelphij#define T_ControlKey 278 354310419Sdelphij#define T_Crypto 279 355310419Sdelphij#define T_Cryptostats 280 356310419Sdelphij#define T_Ctl 281 357310419Sdelphij#define T_Day 282 358310419Sdelphij#define T_Default 283 359310419Sdelphij#define T_Digest 284 360310419Sdelphij#define T_Disable 285 361310419Sdelphij#define T_Discard 286 362310419Sdelphij#define T_Dispersion 287 363310419Sdelphij#define T_Double 288 364310419Sdelphij#define T_Driftfile 289 365310419Sdelphij#define T_Drop 290 366310419Sdelphij#define T_Dscp 291 367310419Sdelphij#define T_Ellipsis 292 368310419Sdelphij#define T_Enable 293 369310419Sdelphij#define T_End 294 370310419Sdelphij#define T_False 295 371310419Sdelphij#define T_File 296 372310419Sdelphij#define T_Filegen 297 373310419Sdelphij#define T_Filenum 298 374310419Sdelphij#define T_Flag1 299 375310419Sdelphij#define T_Flag2 300 376310419Sdelphij#define T_Flag3 301 377310419Sdelphij#define T_Flag4 302 378310419Sdelphij#define T_Flake 303 379310419Sdelphij#define T_Floor 304 380310419Sdelphij#define T_Freq 305 381310419Sdelphij#define T_Fudge 306 382310419Sdelphij#define T_Host 307 383310419Sdelphij#define T_Huffpuff 308 384310419Sdelphij#define T_Iburst 309 385310419Sdelphij#define T_Ident 310 386310419Sdelphij#define T_Ignore 311 387310419Sdelphij#define T_Incalloc 312 388310419Sdelphij#define T_Incmem 313 389310419Sdelphij#define T_Initalloc 314 390310419Sdelphij#define T_Initmem 315 391310419Sdelphij#define T_Includefile 316 392310419Sdelphij#define T_Integer 317 393310419Sdelphij#define T_Interface 318 394310419Sdelphij#define T_Intrange 319 395310419Sdelphij#define T_Io 320 396310419Sdelphij#define T_Ipv4 321 397310419Sdelphij#define T_Ipv4_flag 322 398310419Sdelphij#define T_Ipv6 323 399310419Sdelphij#define T_Ipv6_flag 324 400310419Sdelphij#define T_Kernel 325 401310419Sdelphij#define T_Key 326 402310419Sdelphij#define T_Keys 327 403310419Sdelphij#define T_Keysdir 328 404310419Sdelphij#define T_Kod 329 405310419Sdelphij#define T_Mssntp 330 406310419Sdelphij#define T_Leapfile 331 407310419Sdelphij#define T_Leapsmearinterval 332 408310419Sdelphij#define T_Limited 333 409310419Sdelphij#define T_Link 334 410310419Sdelphij#define T_Listen 335 411310419Sdelphij#define T_Logconfig 336 412310419Sdelphij#define T_Logfile 337 413310419Sdelphij#define T_Loopstats 338 414310419Sdelphij#define T_Lowpriotrap 339 415310419Sdelphij#define T_Manycastclient 340 416310419Sdelphij#define T_Manycastserver 341 417310419Sdelphij#define T_Mask 342 418310419Sdelphij#define T_Maxage 343 419310419Sdelphij#define T_Maxclock 344 420310419Sdelphij#define T_Maxdepth 345 421310419Sdelphij#define T_Maxdist 346 422310419Sdelphij#define T_Maxmem 347 423310419Sdelphij#define T_Maxpoll 348 424310419Sdelphij#define T_Mdnstries 349 425310419Sdelphij#define T_Mem 350 426310419Sdelphij#define T_Memlock 351 427310419Sdelphij#define T_Minclock 352 428310419Sdelphij#define T_Mindepth 353 429310419Sdelphij#define T_Mindist 354 430310419Sdelphij#define T_Minimum 355 431310419Sdelphij#define T_Minpoll 356 432310419Sdelphij#define T_Minsane 357 433310419Sdelphij#define T_Mode 358 434310419Sdelphij#define T_Mode7 359 435310419Sdelphij#define T_Monitor 360 436310419Sdelphij#define T_Month 361 437310419Sdelphij#define T_Mru 362 438310419Sdelphij#define T_Multicastclient 363 439310419Sdelphij#define T_Nic 364 440310419Sdelphij#define T_Nolink 365 441310419Sdelphij#define T_Nomodify 366 442310419Sdelphij#define T_Nomrulist 367 443310419Sdelphij#define T_None 368 444310419Sdelphij#define T_Nonvolatile 369 445310419Sdelphij#define T_Nopeer 370 446310419Sdelphij#define T_Noquery 371 447310419Sdelphij#define T_Noselect 372 448310419Sdelphij#define T_Noserve 373 449310419Sdelphij#define T_Notrap 374 450310419Sdelphij#define T_Notrust 375 451310419Sdelphij#define T_Ntp 376 452310419Sdelphij#define T_Ntpport 377 453310419Sdelphij#define T_NtpSignDsocket 378 454310419Sdelphij#define T_Orphan 379 455310419Sdelphij#define T_Orphanwait 380 456310419Sdelphij#define T_PCEdigest 381 457310419Sdelphij#define T_Panic 382 458310419Sdelphij#define T_Peer 383 459310419Sdelphij#define T_Peerstats 384 460310419Sdelphij#define T_Phone 385 461310419Sdelphij#define T_Pid 386 462310419Sdelphij#define T_Pidfile 387 463310419Sdelphij#define T_Pool 388 464310419Sdelphij#define T_Port 389 465310419Sdelphij#define T_Preempt 390 466310419Sdelphij#define T_Prefer 391 467310419Sdelphij#define T_Protostats 392 468310419Sdelphij#define T_Pw 393 469310419Sdelphij#define T_Randfile 394 470310419Sdelphij#define T_Rawstats 395 471310419Sdelphij#define T_Refid 396 472310419Sdelphij#define T_Requestkey 397 473310419Sdelphij#define T_Reset 398 474310419Sdelphij#define T_Restrict 399 475310419Sdelphij#define T_Revoke 400 476310419Sdelphij#define T_Rlimit 401 477310419Sdelphij#define T_Saveconfigdir 402 478310419Sdelphij#define T_Server 403 479310419Sdelphij#define T_Setvar 404 480310419Sdelphij#define T_Source 405 481310419Sdelphij#define T_Stacksize 406 482310419Sdelphij#define T_Statistics 407 483310419Sdelphij#define T_Stats 408 484310419Sdelphij#define T_Statsdir 409 485310419Sdelphij#define T_Step 410 486310419Sdelphij#define T_Stepback 411 487310419Sdelphij#define T_Stepfwd 412 488310419Sdelphij#define T_Stepout 413 489310419Sdelphij#define T_Stratum 414 490310419Sdelphij#define T_String 415 491310419Sdelphij#define T_Sys 416 492310419Sdelphij#define T_Sysstats 417 493310419Sdelphij#define T_Tick 418 494310419Sdelphij#define T_Time1 419 495310419Sdelphij#define T_Time2 420 496310419Sdelphij#define T_Timer 421 497310419Sdelphij#define T_Timingstats 422 498310419Sdelphij#define T_Tinker 423 499310419Sdelphij#define T_Tos 424 500310419Sdelphij#define T_Trap 425 501310419Sdelphij#define T_True 426 502310419Sdelphij#define T_Trustedkey 427 503310419Sdelphij#define T_Ttl 428 504310419Sdelphij#define T_Type 429 505310419Sdelphij#define T_U_int 430 506310419Sdelphij#define T_UEcrypto 431 507310419Sdelphij#define T_UEcryptonak 432 508310419Sdelphij#define T_UEdigest 433 509310419Sdelphij#define T_Unconfig 434 510310419Sdelphij#define T_Unpeer 435 511310419Sdelphij#define T_Version 436 512310419Sdelphij#define T_WanderThreshold 437 513310419Sdelphij#define T_Week 438 514310419Sdelphij#define T_Wildcard 439 515310419Sdelphij#define T_Xleave 440 516310419Sdelphij#define T_Year 441 517310419Sdelphij#define T_Flag 442 518310419Sdelphij#define T_EOC 443 519310419Sdelphij#define T_Simulate 444 520310419Sdelphij#define T_Beep_Delay 445 521310419Sdelphij#define T_Sim_Duration 446 522310419Sdelphij#define T_Server_Offset 447 523310419Sdelphij#define T_Duration 448 524310419Sdelphij#define T_Freq_Offset 449 525310419Sdelphij#define T_Wander 450 526310419Sdelphij#define T_Jitter 451 527310419Sdelphij#define T_Prop_Delay 452 528310419Sdelphij#define T_Proc_Delay 453 529290001Sglebius 530301301Sdelphij/* Value type. */ 531301301Sdelphij#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 532294905Sdelphij 533301301Sdelphijunion YYSTYPE 534290001Sglebius{ 535301301Sdelphij#line 51 "../../ntpd/ntp_parser.y" /* yacc.c:355 */ 536290001Sglebius 537290001Sglebius char * String; 538290001Sglebius double Double; 539290001Sglebius int Integer; 540290001Sglebius unsigned U_int; 541290001Sglebius gen_fifo * Generic_fifo; 542290001Sglebius attr_val * Attr_val; 543290001Sglebius attr_val_fifo * Attr_val_fifo; 544290001Sglebius int_fifo * Int_fifo; 545290001Sglebius string_fifo * String_fifo; 546290001Sglebius address_node * Address_node; 547290001Sglebius address_fifo * Address_fifo; 548290001Sglebius setvar_node * Set_var; 549290001Sglebius server_info * Sim_server; 550290001Sglebius server_info_fifo * Sim_server_fifo; 551290001Sglebius script_info * Sim_script; 552290001Sglebius script_info_fifo * Sim_script_fifo; 553290001Sglebius 554310419Sdelphij#line 555 "ntp_parser.c" /* yacc.c:355 */ 555301301Sdelphij}; 556294905Sdelphij 557301301Sdelphijtypedef union YYSTYPE YYSTYPE; 558290001Sglebius# define YYSTYPE_IS_TRIVIAL 1 559290001Sglebius# define YYSTYPE_IS_DECLARED 1 560290001Sglebius#endif 561290001Sglebius 562301301Sdelphij 563290001Sglebiusextern YYSTYPE yylval; 564290001Sglebius 565290001Sglebiusint yyparse (void); 566290001Sglebius 567301301Sdelphij#endif /* !YY_YY_Y_TAB_H_INCLUDED */ 568290001Sglebius 569290001Sglebius/* Copy the second part of user declarations. */ 570290001Sglebius 571310419Sdelphij#line 572 "ntp_parser.c" /* yacc.c:358 */ 572290001Sglebius 573290001Sglebius#ifdef short 574290001Sglebius# undef short 575290001Sglebius#endif 576290001Sglebius 577290001Sglebius#ifdef YYTYPE_UINT8 578290001Sglebiustypedef YYTYPE_UINT8 yytype_uint8; 579290001Sglebius#else 580290001Sglebiustypedef unsigned char yytype_uint8; 581290001Sglebius#endif 582290001Sglebius 583290001Sglebius#ifdef YYTYPE_INT8 584290001Sglebiustypedef YYTYPE_INT8 yytype_int8; 585301301Sdelphij#else 586294905Sdelphijtypedef signed char yytype_int8; 587290001Sglebius#endif 588290001Sglebius 589290001Sglebius#ifdef YYTYPE_UINT16 590290001Sglebiustypedef YYTYPE_UINT16 yytype_uint16; 591290001Sglebius#else 592290001Sglebiustypedef unsigned short int yytype_uint16; 593290001Sglebius#endif 594290001Sglebius 595290001Sglebius#ifdef YYTYPE_INT16 596290001Sglebiustypedef YYTYPE_INT16 yytype_int16; 597290001Sglebius#else 598290001Sglebiustypedef short int yytype_int16; 599290001Sglebius#endif 600290001Sglebius 601290001Sglebius#ifndef YYSIZE_T 602290001Sglebius# ifdef __SIZE_TYPE__ 603290001Sglebius# define YYSIZE_T __SIZE_TYPE__ 604290001Sglebius# elif defined size_t 605290001Sglebius# define YYSIZE_T size_t 606301301Sdelphij# elif ! defined YYSIZE_T 607290001Sglebius# include <stddef.h> /* INFRINGES ON USER NAME SPACE */ 608290001Sglebius# define YYSIZE_T size_t 609290001Sglebius# else 610290001Sglebius# define YYSIZE_T unsigned int 611290001Sglebius# endif 612290001Sglebius#endif 613290001Sglebius 614290001Sglebius#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) 615290001Sglebius 616290001Sglebius#ifndef YY_ 617290001Sglebius# if defined YYENABLE_NLS && YYENABLE_NLS 618290001Sglebius# if ENABLE_NLS 619290001Sglebius# include <libintl.h> /* INFRINGES ON USER NAME SPACE */ 620290001Sglebius# define YY_(Msgid) dgettext ("bison-runtime", Msgid) 621290001Sglebius# endif 622290001Sglebius# endif 623290001Sglebius# ifndef YY_ 624290001Sglebius# define YY_(Msgid) Msgid 625290001Sglebius# endif 626290001Sglebius#endif 627290001Sglebius 628301301Sdelphij#ifndef YY_ATTRIBUTE 629301301Sdelphij# if (defined __GNUC__ \ 630301301Sdelphij && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ 631301301Sdelphij || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C 632301301Sdelphij# define YY_ATTRIBUTE(Spec) __attribute__(Spec) 633301301Sdelphij# else 634301301Sdelphij# define YY_ATTRIBUTE(Spec) /* empty */ 635290001Sglebius# endif 636290001Sglebius#endif 637290001Sglebius 638301301Sdelphij#ifndef YY_ATTRIBUTE_PURE 639301301Sdelphij# define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) 640301301Sdelphij#endif 641301301Sdelphij 642301301Sdelphij#ifndef YY_ATTRIBUTE_UNUSED 643301301Sdelphij# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) 644301301Sdelphij#endif 645301301Sdelphij 646301301Sdelphij#if !defined _Noreturn \ 647301301Sdelphij && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112) 648301301Sdelphij# if defined _MSC_VER && 1200 <= _MSC_VER 649301301Sdelphij# define _Noreturn __declspec (noreturn) 650301301Sdelphij# else 651301301Sdelphij# define _Noreturn YY_ATTRIBUTE ((__noreturn__)) 652301301Sdelphij# endif 653301301Sdelphij#endif 654301301Sdelphij 655290001Sglebius/* Suppress unused-variable warnings by "using" E. */ 656290001Sglebius#if ! defined lint || defined __GNUC__ 657290001Sglebius# define YYUSE(E) ((void) (E)) 658290001Sglebius#else 659290001Sglebius# define YYUSE(E) /* empty */ 660290001Sglebius#endif 661290001Sglebius 662301301Sdelphij#if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ 663301301Sdelphij/* Suppress an incorrect diagnostic about yylval being uninitialized. */ 664301301Sdelphij# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ 665301301Sdelphij _Pragma ("GCC diagnostic push") \ 666301301Sdelphij _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ 667301301Sdelphij _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") 668301301Sdelphij# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ 669301301Sdelphij _Pragma ("GCC diagnostic pop") 670290001Sglebius#else 671301301Sdelphij# define YY_INITIAL_VALUE(Value) Value 672290001Sglebius#endif 673301301Sdelphij#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 674301301Sdelphij# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 675301301Sdelphij# define YY_IGNORE_MAYBE_UNINITIALIZED_END 676290001Sglebius#endif 677301301Sdelphij#ifndef YY_INITIAL_VALUE 678301301Sdelphij# define YY_INITIAL_VALUE(Value) /* Nothing. */ 679301301Sdelphij#endif 680290001Sglebius 681301301Sdelphij 682290001Sglebius#if ! defined yyoverflow || YYERROR_VERBOSE 683290001Sglebius 684290001Sglebius/* The parser invokes alloca or malloc; define the necessary symbols. */ 685290001Sglebius 686290001Sglebius# ifdef YYSTACK_USE_ALLOCA 687290001Sglebius# if YYSTACK_USE_ALLOCA 688290001Sglebius# ifdef __GNUC__ 689290001Sglebius# define YYSTACK_ALLOC __builtin_alloca 690290001Sglebius# elif defined __BUILTIN_VA_ARG_INCR 691290001Sglebius# include <alloca.h> /* INFRINGES ON USER NAME SPACE */ 692290001Sglebius# elif defined _AIX 693290001Sglebius# define YYSTACK_ALLOC __alloca 694290001Sglebius# elif defined _MSC_VER 695290001Sglebius# include <malloc.h> /* INFRINGES ON USER NAME SPACE */ 696290001Sglebius# define alloca _alloca 697290001Sglebius# else 698290001Sglebius# define YYSTACK_ALLOC alloca 699301301Sdelphij# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS 700290001Sglebius# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 701290001Sglebius /* Use EXIT_SUCCESS as a witness for stdlib.h. */ 702290001Sglebius# ifndef EXIT_SUCCESS 703290001Sglebius# define EXIT_SUCCESS 0 704290001Sglebius# endif 705290001Sglebius# endif 706290001Sglebius# endif 707290001Sglebius# endif 708290001Sglebius# endif 709290001Sglebius 710290001Sglebius# ifdef YYSTACK_ALLOC 711301301Sdelphij /* Pacify GCC's 'empty if-body' warning. */ 712301301Sdelphij# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) 713290001Sglebius# ifndef YYSTACK_ALLOC_MAXIMUM 714290001Sglebius /* The OS might guarantee only one guard page at the bottom of the stack, 715290001Sglebius and a page size can be as small as 4096 bytes. So we cannot safely 716290001Sglebius invoke alloca (N) if N exceeds 4096. Use a slightly smaller number 717290001Sglebius to allow for a few compiler-allocated temporary stack slots. */ 718290001Sglebius# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ 719290001Sglebius# endif 720290001Sglebius# else 721290001Sglebius# define YYSTACK_ALLOC YYMALLOC 722290001Sglebius# define YYSTACK_FREE YYFREE 723290001Sglebius# ifndef YYSTACK_ALLOC_MAXIMUM 724290001Sglebius# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM 725290001Sglebius# endif 726290001Sglebius# if (defined __cplusplus && ! defined EXIT_SUCCESS \ 727290001Sglebius && ! ((defined YYMALLOC || defined malloc) \ 728301301Sdelphij && (defined YYFREE || defined free))) 729290001Sglebius# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 730290001Sglebius# ifndef EXIT_SUCCESS 731290001Sglebius# define EXIT_SUCCESS 0 732290001Sglebius# endif 733290001Sglebius# endif 734290001Sglebius# ifndef YYMALLOC 735290001Sglebius# define YYMALLOC malloc 736301301Sdelphij# if ! defined malloc && ! defined EXIT_SUCCESS 737290001Sglebiusvoid *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ 738290001Sglebius# endif 739290001Sglebius# endif 740290001Sglebius# ifndef YYFREE 741290001Sglebius# define YYFREE free 742301301Sdelphij# if ! defined free && ! defined EXIT_SUCCESS 743290001Sglebiusvoid free (void *); /* INFRINGES ON USER NAME SPACE */ 744290001Sglebius# endif 745290001Sglebius# endif 746290001Sglebius# endif 747290001Sglebius#endif /* ! defined yyoverflow || YYERROR_VERBOSE */ 748290001Sglebius 749290001Sglebius 750290001Sglebius#if (! defined yyoverflow \ 751290001Sglebius && (! defined __cplusplus \ 752301301Sdelphij || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 753290001Sglebius 754290001Sglebius/* A type that is properly aligned for any stack member. */ 755290001Sglebiusunion yyalloc 756290001Sglebius{ 757290001Sglebius yytype_int16 yyss_alloc; 758290001Sglebius YYSTYPE yyvs_alloc; 759290001Sglebius}; 760290001Sglebius 761290001Sglebius/* The size of the maximum gap between one aligned stack and the next. */ 762290001Sglebius# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) 763290001Sglebius 764290001Sglebius/* The size of an array large to enough to hold all stacks, each with 765290001Sglebius N elements. */ 766290001Sglebius# define YYSTACK_BYTES(N) \ 767290001Sglebius ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ 768290001Sglebius + YYSTACK_GAP_MAXIMUM) 769290001Sglebius 770290001Sglebius# define YYCOPY_NEEDED 1 771290001Sglebius 772290001Sglebius/* Relocate STACK from its old location to the new one. The 773290001Sglebius local variables YYSIZE and YYSTACKSIZE give the old and new number of 774290001Sglebius elements in the stack, and YYPTR gives the new location of the 775290001Sglebius stack. Advance YYPTR to a properly aligned location for the next 776290001Sglebius stack. */ 777301301Sdelphij# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ 778301301Sdelphij do \ 779301301Sdelphij { \ 780301301Sdelphij YYSIZE_T yynewbytes; \ 781301301Sdelphij YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ 782301301Sdelphij Stack = &yyptr->Stack_alloc; \ 783301301Sdelphij yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 784301301Sdelphij yyptr += yynewbytes / sizeof (*yyptr); \ 785301301Sdelphij } \ 786301301Sdelphij while (0) 787290001Sglebius 788290001Sglebius#endif 789290001Sglebius 790290001Sglebius#if defined YYCOPY_NEEDED && YYCOPY_NEEDED 791290001Sglebius/* Copy COUNT objects from SRC to DST. The source and destination do 792290001Sglebius not overlap. */ 793290001Sglebius# ifndef YYCOPY 794290001Sglebius# if defined __GNUC__ && 1 < __GNUC__ 795290001Sglebius# define YYCOPY(Dst, Src, Count) \ 796290001Sglebius __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) 797290001Sglebius# else 798290001Sglebius# define YYCOPY(Dst, Src, Count) \ 799290001Sglebius do \ 800290001Sglebius { \ 801290001Sglebius YYSIZE_T yyi; \ 802290001Sglebius for (yyi = 0; yyi < (Count); yyi++) \ 803290001Sglebius (Dst)[yyi] = (Src)[yyi]; \ 804290001Sglebius } \ 805301301Sdelphij while (0) 806290001Sglebius# endif 807290001Sglebius# endif 808290001Sglebius#endif /* !YYCOPY_NEEDED */ 809290001Sglebius 810290001Sglebius/* YYFINAL -- State number of the termination state. */ 811310419Sdelphij#define YYFINAL 215 812290001Sglebius/* YYLAST -- Last index in YYTABLE. */ 813310419Sdelphij#define YYLAST 654 814290001Sglebius 815290001Sglebius/* YYNTOKENS -- Number of terminals. */ 816310419Sdelphij#define YYNTOKENS 204 817290001Sglebius/* YYNNTS -- Number of nonterminals. */ 818290001Sglebius#define YYNNTS 105 819290001Sglebius/* YYNRULES -- Number of rules. */ 820310419Sdelphij#define YYNRULES 318 821301301Sdelphij/* YYNSTATES -- Number of states. */ 822310419Sdelphij#define YYNSTATES 424 823290001Sglebius 824301301Sdelphij/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned 825301301Sdelphij by yylex, with out-of-bounds checking. */ 826290001Sglebius#define YYUNDEFTOK 2 827310419Sdelphij#define YYMAXUTOK 453 828290001Sglebius 829301301Sdelphij#define YYTRANSLATE(YYX) \ 830290001Sglebius ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 831290001Sglebius 832301301Sdelphij/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM 833301301Sdelphij as returned by yylex, without out-of-bounds checking. */ 834290001Sglebiusstatic const yytype_uint8 yytranslate[] = 835290001Sglebius{ 836290001Sglebius 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 837290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 838290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 839290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 840310419Sdelphij 200, 201, 2, 2, 2, 2, 2, 2, 2, 2, 841290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 842310419Sdelphij 2, 199, 2, 2, 2, 2, 2, 2, 2, 2, 843290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 844290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 845290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 846290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 847290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 848310419Sdelphij 2, 2, 2, 202, 2, 203, 2, 2, 2, 2, 849290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 850290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 851290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 852290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 853290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 854290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 855290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 856290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 857290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 858290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 859290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 860290001Sglebius 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 861290001Sglebius 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 862290001Sglebius 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 863290001Sglebius 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 864290001Sglebius 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 865290001Sglebius 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 866290001Sglebius 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 867290001Sglebius 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 868290001Sglebius 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 869290001Sglebius 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 870290001Sglebius 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 871290001Sglebius 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 872290001Sglebius 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 873290001Sglebius 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 874290001Sglebius 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 875290001Sglebius 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 876290001Sglebius 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 877290001Sglebius 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 878290001Sglebius 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 879290001Sglebius 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 880294905Sdelphij 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 881310419Sdelphij 195, 196, 197, 198 882290001Sglebius}; 883290001Sglebius 884290001Sglebius#if YYDEBUG 885301301Sdelphij /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ 886290001Sglebiusstatic const yytype_uint16 yyrline[] = 887290001Sglebius{ 888310419Sdelphij 0, 371, 371, 375, 376, 377, 392, 393, 394, 395, 889310419Sdelphij 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 890310419Sdelphij 413, 423, 424, 425, 426, 427, 431, 432, 437, 442, 891310419Sdelphij 444, 450, 451, 459, 460, 461, 465, 470, 471, 472, 892310419Sdelphij 473, 474, 475, 476, 477, 481, 483, 488, 489, 490, 893310419Sdelphij 491, 492, 493, 497, 502, 511, 521, 522, 532, 534, 894310419Sdelphij 536, 538, 549, 556, 558, 563, 565, 567, 569, 571, 895310419Sdelphij 580, 586, 587, 595, 597, 609, 610, 611, 612, 613, 896310419Sdelphij 622, 627, 632, 640, 642, 644, 649, 650, 651, 652, 897310419Sdelphij 653, 654, 655, 659, 660, 661, 662, 671, 673, 682, 898310419Sdelphij 692, 697, 705, 706, 707, 708, 709, 710, 711, 712, 899310419Sdelphij 717, 718, 726, 736, 745, 760, 765, 766, 770, 771, 900310419Sdelphij 775, 776, 777, 778, 779, 780, 781, 790, 794, 798, 901310419Sdelphij 806, 814, 822, 837, 852, 865, 866, 874, 875, 876, 902310419Sdelphij 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 903310419Sdelphij 887, 888, 892, 897, 905, 910, 911, 912, 916, 921, 904310419Sdelphij 929, 934, 935, 936, 937, 938, 939, 940, 941, 949, 905310419Sdelphij 959, 964, 972, 974, 976, 985, 987, 992, 993, 997, 906310419Sdelphij 998, 999, 1000, 1008, 1013, 1018, 1026, 1031, 1032, 1033, 907310419Sdelphij 1042, 1044, 1049, 1054, 1062, 1064, 1081, 1082, 1083, 1084, 908310419Sdelphij 1085, 1086, 1090, 1091, 1092, 1093, 1094, 1095, 1103, 1108, 909310419Sdelphij 1113, 1121, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 910310419Sdelphij 1134, 1135, 1144, 1145, 1146, 1153, 1160, 1167, 1183, 1202, 911310419Sdelphij 1204, 1206, 1208, 1210, 1212, 1219, 1224, 1225, 1226, 1230, 912310419Sdelphij 1234, 1243, 1244, 1248, 1249, 1250, 1254, 1265, 1279, 1291, 913310419Sdelphij 1296, 1298, 1303, 1304, 1312, 1314, 1322, 1327, 1335, 1360, 914310419Sdelphij 1367, 1377, 1378, 1382, 1383, 1384, 1385, 1389, 1390, 1391, 915310419Sdelphij 1395, 1400, 1405, 1413, 1414, 1415, 1416, 1417, 1418, 1419, 916310419Sdelphij 1429, 1434, 1442, 1447, 1455, 1457, 1461, 1466, 1471, 1479, 917310419Sdelphij 1484, 1492, 1501, 1502, 1506, 1507, 1516, 1534, 1538, 1543, 918310419Sdelphij 1551, 1556, 1557, 1561, 1566, 1574, 1579, 1584, 1589, 1594, 919310419Sdelphij 1602, 1607, 1612, 1620, 1625, 1626, 1627, 1628, 1629 920290001Sglebius}; 921290001Sglebius#endif 922290001Sglebius 923290001Sglebius#if YYDEBUG || YYERROR_VERBOSE || 1 924290001Sglebius/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. 925290001Sglebius First, the terminals, then, starting at YYNTOKENS, nonterminals. */ 926290001Sglebiusstatic const char *const yytname[] = 927290001Sglebius{ 928290001Sglebius "$end", "error", "$undefined", "T_Abbrev", "T_Age", "T_All", "T_Allan", 929290001Sglebius "T_Allpeers", "T_Auth", "T_Autokey", "T_Automax", "T_Average", 930310419Sdelphij "T_Bclient", "T_Bcpollbstep", "T_Beacon", "T_Broadcast", 931310419Sdelphij "T_Broadcastclient", "T_Broadcastdelay", "T_Burst", "T_Calibrate", 932310419Sdelphij "T_Ceiling", "T_Clockstats", "T_Cohort", "T_ControlKey", "T_Crypto", 933310419Sdelphij "T_Cryptostats", "T_Ctl", "T_Day", "T_Default", "T_Digest", "T_Disable", 934310419Sdelphij "T_Discard", "T_Dispersion", "T_Double", "T_Driftfile", "T_Drop", 935310419Sdelphij "T_Dscp", "T_Ellipsis", "T_Enable", "T_End", "T_False", "T_File", 936310419Sdelphij "T_Filegen", "T_Filenum", "T_Flag1", "T_Flag2", "T_Flag3", "T_Flag4", 937310419Sdelphij "T_Flake", "T_Floor", "T_Freq", "T_Fudge", "T_Host", "T_Huffpuff", 938310419Sdelphij "T_Iburst", "T_Ident", "T_Ignore", "T_Incalloc", "T_Incmem", 939310419Sdelphij "T_Initalloc", "T_Initmem", "T_Includefile", "T_Integer", "T_Interface", 940310419Sdelphij "T_Intrange", "T_Io", "T_Ipv4", "T_Ipv4_flag", "T_Ipv6", "T_Ipv6_flag", 941310419Sdelphij "T_Kernel", "T_Key", "T_Keys", "T_Keysdir", "T_Kod", "T_Mssntp", 942310419Sdelphij "T_Leapfile", "T_Leapsmearinterval", "T_Limited", "T_Link", "T_Listen", 943310419Sdelphij "T_Logconfig", "T_Logfile", "T_Loopstats", "T_Lowpriotrap", 944310419Sdelphij "T_Manycastclient", "T_Manycastserver", "T_Mask", "T_Maxage", 945310419Sdelphij "T_Maxclock", "T_Maxdepth", "T_Maxdist", "T_Maxmem", "T_Maxpoll", 946310419Sdelphij "T_Mdnstries", "T_Mem", "T_Memlock", "T_Minclock", "T_Mindepth", 947310419Sdelphij "T_Mindist", "T_Minimum", "T_Minpoll", "T_Minsane", "T_Mode", "T_Mode7", 948310419Sdelphij "T_Monitor", "T_Month", "T_Mru", "T_Multicastclient", "T_Nic", 949310419Sdelphij "T_Nolink", "T_Nomodify", "T_Nomrulist", "T_None", "T_Nonvolatile", 950310419Sdelphij "T_Nopeer", "T_Noquery", "T_Noselect", "T_Noserve", "T_Notrap", 951310419Sdelphij "T_Notrust", "T_Ntp", "T_Ntpport", "T_NtpSignDsocket", "T_Orphan", 952310419Sdelphij "T_Orphanwait", "T_PCEdigest", "T_Panic", "T_Peer", "T_Peerstats", 953310419Sdelphij "T_Phone", "T_Pid", "T_Pidfile", "T_Pool", "T_Port", "T_Preempt", 954310419Sdelphij "T_Prefer", "T_Protostats", "T_Pw", "T_Randfile", "T_Rawstats", 955310419Sdelphij "T_Refid", "T_Requestkey", "T_Reset", "T_Restrict", "T_Revoke", 956310419Sdelphij "T_Rlimit", "T_Saveconfigdir", "T_Server", "T_Setvar", "T_Source", 957310419Sdelphij "T_Stacksize", "T_Statistics", "T_Stats", "T_Statsdir", "T_Step", 958310419Sdelphij "T_Stepback", "T_Stepfwd", "T_Stepout", "T_Stratum", "T_String", "T_Sys", 959310419Sdelphij "T_Sysstats", "T_Tick", "T_Time1", "T_Time2", "T_Timer", "T_Timingstats", 960310419Sdelphij "T_Tinker", "T_Tos", "T_Trap", "T_True", "T_Trustedkey", "T_Ttl", 961310419Sdelphij "T_Type", "T_U_int", "T_UEcrypto", "T_UEcryptonak", "T_UEdigest", 962310419Sdelphij "T_Unconfig", "T_Unpeer", "T_Version", "T_WanderThreshold", "T_Week", 963310419Sdelphij "T_Wildcard", "T_Xleave", "T_Year", "T_Flag", "T_EOC", "T_Simulate", 964310419Sdelphij "T_Beep_Delay", "T_Sim_Duration", "T_Server_Offset", "T_Duration", 965310419Sdelphij "T_Freq_Offset", "T_Wander", "T_Jitter", "T_Prop_Delay", "T_Proc_Delay", 966310419Sdelphij "'='", "'('", "')'", "'{'", "'}'", "$accept", "configuration", 967310419Sdelphij "command_list", "command", "server_command", "client_type", "address", 968310419Sdelphij "ip_address", "address_fam", "option_list", "option", "option_flag", 969310419Sdelphij "option_flag_keyword", "option_int", "option_int_keyword", "option_str", 970310419Sdelphij "option_str_keyword", "unpeer_command", "unpeer_keyword", 971310419Sdelphij "other_mode_command", "authentication_command", "crypto_command_list", 972310419Sdelphij "crypto_command", "crypto_str_keyword", "orphan_mode_command", 973310419Sdelphij "tos_option_list", "tos_option", "tos_option_int_keyword", 974310419Sdelphij "tos_option_dbl_keyword", "monitoring_command", "stats_list", "stat", 975310419Sdelphij "filegen_option_list", "filegen_option", "link_nolink", "enable_disable", 976310419Sdelphij "filegen_type", "access_control_command", "ac_flag_list", 977310419Sdelphij "access_control_flag", "discard_option_list", "discard_option", 978310419Sdelphij "discard_option_keyword", "mru_option_list", "mru_option", 979310419Sdelphij "mru_option_keyword", "fudge_command", "fudge_factor_list", 980310419Sdelphij "fudge_factor", "fudge_factor_dbl_keyword", "fudge_factor_bool_keyword", 981310419Sdelphij "rlimit_command", "rlimit_option_list", "rlimit_option", 982310419Sdelphij "rlimit_option_keyword", "system_option_command", "system_option_list", 983310419Sdelphij "system_option", "system_option_flag_keyword", 984290001Sglebius "system_option_local_flag_keyword", "tinker_command", 985290001Sglebius "tinker_option_list", "tinker_option", "tinker_option_keyword", 986290001Sglebius "miscellaneous_command", "misc_cmd_dbl_keyword", "misc_cmd_int_keyword", 987290001Sglebius "misc_cmd_str_keyword", "misc_cmd_str_lcl_keyword", "drift_parm", 988290001Sglebius "variable_assign", "t_default_or_zero", "trap_option_list", 989290001Sglebius "trap_option", "log_config_list", "log_config_command", 990290001Sglebius "interface_command", "interface_nic", "nic_rule_class", 991290001Sglebius "nic_rule_action", "reset_command", "counter_set_list", 992290001Sglebius "counter_set_keyword", "integer_list", "integer_list_range", 993290001Sglebius "integer_list_range_elt", "integer_range", "string_list", "address_list", 994290001Sglebius "boolean", "number", "simulate_command", "sim_conf_start", 995290001Sglebius "sim_init_statement_list", "sim_init_statement", "sim_init_keyword", 996290001Sglebius "sim_server_list", "sim_server", "sim_server_offset", "sim_server_name", 997290001Sglebius "sim_act_list", "sim_act", "sim_act_stmt_list", "sim_act_stmt", 998301301Sdelphij "sim_act_keyword", YY_NULLPTR 999290001Sglebius}; 1000290001Sglebius#endif 1001290001Sglebius 1002290001Sglebius# ifdef YYPRINT 1003301301Sdelphij/* YYTOKNUM[NUM] -- (External) token number corresponding to the 1004301301Sdelphij (internal) symbol number NUM (which must be that of a token). */ 1005290001Sglebiusstatic const yytype_uint16 yytoknum[] = 1006290001Sglebius{ 1007290001Sglebius 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, 1008290001Sglebius 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 1009290001Sglebius 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 1010290001Sglebius 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 1011290001Sglebius 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 1012290001Sglebius 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 1013290001Sglebius 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 1014290001Sglebius 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 1015290001Sglebius 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 1016290001Sglebius 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 1017290001Sglebius 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 1018290001Sglebius 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 1019290001Sglebius 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 1020290001Sglebius 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 1021290001Sglebius 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 1022290001Sglebius 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 1023290001Sglebius 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 1024290001Sglebius 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 1025290001Sglebius 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 1026310419Sdelphij 445, 446, 447, 448, 449, 450, 451, 452, 453, 61, 1027310419Sdelphij 40, 41, 123, 125 1028290001Sglebius}; 1029290001Sglebius# endif 1030290001Sglebius 1031301301Sdelphij#define YYPACT_NINF -189 1032290001Sglebius 1033301301Sdelphij#define yypact_value_is_default(Yystate) \ 1034301301Sdelphij (!!((Yystate) == (-189))) 1035301301Sdelphij 1036301301Sdelphij#define YYTABLE_NINF -7 1037301301Sdelphij 1038301301Sdelphij#define yytable_value_is_error(Yytable_value) \ 1039301301Sdelphij 0 1040301301Sdelphij 1041301301Sdelphij /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 1042301301Sdelphij STATE-NUM. */ 1043301301Sdelphijstatic const yytype_int16 yypact[] = 1044290001Sglebius{ 1045310419Sdelphij 18, -177, -45, -189, -189, -189, -40, -189, 32, 5, 1046310419Sdelphij -129, -189, 32, -189, 204, -44, -189, -117, -189, -110, 1047310419Sdelphij -101, -189, -189, -97, -189, -189, -44, -4, 495, -44, 1048310419Sdelphij -189, -189, -96, -189, -94, -189, -189, 8, 54, 258, 1049310419Sdelphij 10, -28, -189, -189, -89, 204, -86, -189, 270, 529, 1050310419Sdelphij -85, -56, 14, -189, -189, -189, 83, 207, -95, -189, 1051310419Sdelphij -44, -189, -44, -189, -189, -189, -189, -189, -189, -189, 1052310419Sdelphij -189, -189, -189, -7, 24, -73, -68, -189, -3, -189, 1053310419Sdelphij -189, -106, -189, -189, -189, 313, -189, -189, -189, -189, 1054310419Sdelphij -189, -189, -189, -189, -189, -189, -189, -189, 32, -189, 1055310419Sdelphij -189, -189, -189, -189, -189, 5, -189, 35, 65, -189, 1056310419Sdelphij 32, -189, -189, -189, -189, -189, -189, -189, -189, -189, 1057310419Sdelphij -189, -189, -189, 110, -189, -59, 368, -189, -189, -189, 1058310419Sdelphij -97, -189, -189, -44, -189, -189, -189, -189, -189, -189, 1059310419Sdelphij -189, -189, -189, 495, -189, 44, -44, -189, -189, -51, 1060310419Sdelphij -189, -189, -189, -189, -189, -189, -189, -189, 54, -189, 1061310419Sdelphij -189, 86, 89, -189, -189, 33, -189, -189, -189, -189, 1062310419Sdelphij -28, -189, 49, -75, -189, 204, -189, -189, -189, -189, 1063310419Sdelphij -189, -189, -189, -189, -189, -189, -189, -189, 270, -189, 1064310419Sdelphij -7, -189, -189, -189, -33, -189, -189, -189, -189, -189, 1065310419Sdelphij -189, -189, -189, 529, -189, 66, -7, -189, -189, 67, 1066310419Sdelphij -56, -189, -189, -189, 68, -189, -53, -189, -189, -189, 1067310419Sdelphij -189, -189, -189, -189, -189, -189, -189, -189, -189, 16, 1068310419Sdelphij -153, -189, -189, -189, -189, -189, 77, -189, -18, -189, 1069310419Sdelphij -189, -189, -189, 226, -13, -189, -189, -189, -189, -8, 1070310419Sdelphij 97, -189, -189, 110, -189, -7, -33, -189, -189, -189, 1071310419Sdelphij -189, -189, -189, -189, -189, 449, -189, -189, 449, 449, 1072310419Sdelphij -85, -189, -189, 11, -189, -189, -189, -189, -189, -189, 1073310419Sdelphij -189, -189, -189, -189, -49, 108, -189, -189, -189, 125, 1074310419Sdelphij -189, -189, -189, -189, -189, -189, -189, -189, -102, -20, 1075310419Sdelphij -30, -189, -189, -189, -189, 13, -189, -189, 9, -189, 1076301301Sdelphij -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, 1077301301Sdelphij -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, 1078310419Sdelphij -189, -189, -189, -189, 449, 449, -189, 146, -85, 113, 1079310419Sdelphij -189, 116, -189, -189, -189, -189, -189, -189, -189, -189, 1080301301Sdelphij -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, 1081310419Sdelphij -189, -54, -189, 23, -10, 6, -138, -189, -9, -189, 1082310419Sdelphij -7, -189, -189, -189, -189, -189, -189, -189, -189, -189, 1083310419Sdelphij 449, -189, -189, -189, -189, -17, -189, -189, -189, -44, 1084310419Sdelphij -189, -189, -189, 20, -189, -189, -189, 0, 21, -7, 1085310419Sdelphij 22, -173, -189, 25, -7, -189, -189, -189, 17, 7, 1086310419Sdelphij -189, -189, -189, -189, -189, 217, 39, 36, -189, 46, 1087310419Sdelphij -189, -7, -189, -189 1088290001Sglebius}; 1089290001Sglebius 1090301301Sdelphij /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. 1091301301Sdelphij Performed when YYTABLE does not specify something else to do. Zero 1092301301Sdelphij means the default is an error. */ 1093290001Sglebiusstatic const yytype_uint16 yydefact[] = 1094290001Sglebius{ 1095310419Sdelphij 0, 0, 0, 24, 58, 236, 0, 71, 0, 0, 1096310419Sdelphij 248, 239, 0, 229, 0, 0, 241, 0, 261, 0, 1097310419Sdelphij 0, 242, 240, 0, 243, 25, 0, 0, 0, 0, 1098310419Sdelphij 262, 237, 0, 23, 0, 244, 22, 0, 0, 0, 1099310419Sdelphij 0, 0, 245, 21, 0, 0, 0, 238, 0, 0, 1100310419Sdelphij 0, 0, 0, 56, 57, 297, 0, 2, 0, 7, 1101290001Sglebius 0, 8, 0, 9, 10, 13, 11, 12, 14, 15, 1102310419Sdelphij 16, 17, 18, 0, 0, 0, 0, 222, 0, 223, 1103310419Sdelphij 19, 0, 5, 62, 63, 64, 196, 197, 198, 199, 1104310419Sdelphij 202, 200, 201, 203, 204, 205, 206, 207, 191, 193, 1105310419Sdelphij 194, 195, 155, 156, 157, 127, 153, 0, 246, 230, 1106310419Sdelphij 190, 102, 103, 104, 105, 109, 106, 107, 108, 110, 1107310419Sdelphij 29, 30, 28, 0, 26, 0, 6, 65, 66, 258, 1108310419Sdelphij 231, 257, 290, 59, 61, 161, 162, 163, 164, 165, 1109310419Sdelphij 166, 167, 168, 128, 159, 0, 60, 70, 288, 232, 1110310419Sdelphij 67, 273, 274, 275, 276, 277, 278, 279, 270, 272, 1111310419Sdelphij 135, 29, 30, 135, 135, 26, 68, 189, 187, 188, 1112310419Sdelphij 183, 185, 0, 0, 233, 97, 101, 98, 212, 213, 1113310419Sdelphij 214, 215, 216, 217, 218, 219, 220, 221, 208, 210, 1114310419Sdelphij 0, 86, 92, 87, 0, 88, 96, 94, 95, 93, 1115310419Sdelphij 91, 89, 90, 80, 82, 0, 0, 252, 284, 0, 1116310419Sdelphij 69, 283, 285, 281, 235, 1, 0, 4, 31, 55, 1117310419Sdelphij 295, 294, 224, 225, 226, 227, 269, 268, 267, 0, 1118310419Sdelphij 0, 79, 75, 76, 77, 78, 0, 72, 0, 192, 1119310419Sdelphij 152, 154, 247, 99, 0, 179, 180, 181, 182, 0, 1120310419Sdelphij 0, 177, 178, 169, 171, 0, 0, 27, 228, 256, 1121310419Sdelphij 289, 158, 160, 287, 271, 131, 135, 135, 134, 129, 1122310419Sdelphij 0, 184, 186, 0, 100, 209, 211, 293, 291, 292, 1123310419Sdelphij 85, 81, 83, 84, 234, 0, 282, 280, 3, 20, 1124310419Sdelphij 263, 264, 265, 260, 266, 259, 301, 302, 0, 0, 1125310419Sdelphij 0, 74, 73, 119, 118, 0, 116, 117, 0, 111, 1126310419Sdelphij 114, 115, 175, 176, 174, 170, 172, 173, 137, 138, 1127301301Sdelphij 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 1128310419Sdelphij 149, 150, 151, 136, 132, 133, 135, 251, 0, 0, 1129310419Sdelphij 253, 0, 37, 38, 39, 54, 47, 49, 48, 51, 1130310419Sdelphij 40, 41, 42, 43, 50, 52, 44, 32, 33, 36, 1131310419Sdelphij 34, 0, 35, 0, 0, 0, 0, 304, 0, 299, 1132310419Sdelphij 0, 112, 126, 122, 124, 120, 121, 123, 125, 113, 1133310419Sdelphij 130, 250, 249, 255, 254, 0, 45, 46, 53, 0, 1134310419Sdelphij 298, 296, 303, 0, 300, 286, 307, 0, 0, 0, 1135310419Sdelphij 0, 0, 309, 0, 0, 305, 308, 306, 0, 0, 1136310419Sdelphij 314, 315, 316, 317, 318, 0, 0, 0, 310, 0, 1137310419Sdelphij 312, 0, 311, 313 1138290001Sglebius}; 1139290001Sglebius 1140301301Sdelphij /* YYPGOTO[NTERM-NUM]. */ 1141301301Sdelphijstatic const yytype_int16 yypgoto[] = 1142290001Sglebius{ 1143310419Sdelphij -189, -189, -189, -48, -189, -189, -15, -38, -189, -189, 1144301301Sdelphij -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, 1145310419Sdelphij -189, -189, -189, -189, -189, -189, 37, -189, -189, -189, 1146310419Sdelphij -189, -42, -189, -189, -189, -189, -189, -189, -159, -189, 1147310419Sdelphij -189, 131, -189, -189, 96, -189, -189, -189, -6, -189, 1148310419Sdelphij -189, -189, -189, 74, -189, -189, 236, -71, -189, -189, 1149310419Sdelphij -189, -189, 62, -189, -189, -189, -189, -189, -189, -189, 1150310419Sdelphij -189, -189, -189, -189, -189, 122, -189, -189, -189, -189, 1151310419Sdelphij -189, -189, 95, -189, -189, 45, -189, -189, 225, 1, 1152310419Sdelphij -188, -189, -189, -189, -39, -189, -189, -103, -189, -189, 1153310419Sdelphij -189, -136, -189, -149, -189 1154290001Sglebius}; 1155290001Sglebius 1156301301Sdelphij /* YYDEFGOTO[NTERM-NUM]. */ 1157301301Sdelphijstatic const yytype_int16 yydefgoto[] = 1158290001Sglebius{ 1159310419Sdelphij -1, 56, 57, 58, 59, 60, 132, 124, 125, 289, 1160310419Sdelphij 357, 358, 359, 360, 361, 362, 363, 61, 62, 63, 1161310419Sdelphij 64, 85, 237, 238, 65, 203, 204, 205, 206, 66, 1162310419Sdelphij 175, 119, 243, 309, 310, 311, 379, 67, 265, 333, 1163310419Sdelphij 105, 106, 107, 143, 144, 145, 68, 253, 254, 255, 1164310419Sdelphij 256, 69, 170, 171, 172, 70, 98, 99, 100, 101, 1165301301Sdelphij 71, 188, 189, 190, 72, 73, 74, 75, 76, 109, 1166310419Sdelphij 174, 382, 284, 340, 130, 131, 77, 78, 295, 229, 1167310419Sdelphij 79, 158, 159, 214, 210, 211, 212, 149, 133, 280, 1168310419Sdelphij 222, 80, 81, 298, 299, 300, 366, 367, 398, 368, 1169310419Sdelphij 401, 402, 415, 416, 417 1170290001Sglebius}; 1171290001Sglebius 1172301301Sdelphij /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If 1173301301Sdelphij positive, shift that token. If negative, reduce the rule whose 1174301301Sdelphij number is the opposite. If YYTABLE_NINF, syntax error. */ 1175290001Sglebiusstatic const yytype_int16 yytable[] = 1176290001Sglebius{ 1177310419Sdelphij 123, 165, 276, 176, 268, 269, 208, 277, 386, 216, 1178310419Sdelphij 364, 82, 207, 372, 338, 167, 102, 83, 283, 1, 1179310419Sdelphij 400, 290, 84, 120, 164, 121, 220, 239, 2, 278, 1180310419Sdelphij 405, 108, 226, 3, 4, 5, 373, 296, 297, 239, 1181310419Sdelphij 86, 6, 7, 126, 87, 218, 364, 219, 8, 9, 1182310419Sdelphij 127, 88, 10, 227, 11, 221, 12, 13, 134, 128, 1183310419Sdelphij 14, 151, 152, 129, 147, 391, 148, 316, 168, 15, 1184310419Sdelphij 150, 173, 166, 16, 177, 122, 213, 228, 258, 17, 1185310419Sdelphij 153, 18, 291, 215, 292, 339, 223, 224, 296, 297, 1186310419Sdelphij 19, 20, 225, 217, 21, 22, 230, 241, 242, 23, 1187310419Sdelphij 24, 257, 89, 25, 26, 103, 262, 334, 335, 263, 1188310419Sdelphij 104, 272, 27, 244, 266, 374, 122, 267, 260, 154, 1189310419Sdelphij 270, 387, 375, 169, 273, 28, 29, 30, 282, 285, 1190310419Sdelphij 287, 260, 31, 274, 342, 288, 90, 91, 279, 301, 1191310419Sdelphij 376, 32, 302, 343, 209, 341, 33, 312, 34, 155, 1192310419Sdelphij 35, 36, 313, 92, 245, 246, 247, 248, 93, 314, 1193310419Sdelphij 37, 38, 39, 40, 41, 42, 43, 44, 369, 370, 1194310419Sdelphij 45, 337, 46, 371, 381, 384, 293, 380, 385, 344, 1195310419Sdelphij 345, 47, 394, 388, 395, 94, 48, 49, 50, 389, 1196310419Sdelphij 51, 52, 377, 393, 390, 378, 346, 53, 54, 399, 1197310419Sdelphij 294, 410, 411, 412, 413, 414, -6, 55, 95, 96, 1198310419Sdelphij 97, 403, 397, 407, 400, 156, 408, 2, 347, 409, 1199310419Sdelphij 157, 404, 3, 4, 5, 111, 348, 420, 349, 112, 1200310419Sdelphij 6, 7, 336, 423, 422, 421, 240, 8, 9, 261, 1201310419Sdelphij 281, 10, 350, 11, 271, 12, 13, 315, 110, 14, 1202310419Sdelphij 275, 249, 259, 264, 146, 286, 303, 317, 15, 365, 1203310419Sdelphij 351, 352, 16, 392, 304, 406, 419, 305, 17, 250, 1204310419Sdelphij 18, 0, 0, 0, 251, 252, 178, 0, 0, 19, 1205310419Sdelphij 20, 0, 0, 21, 22, 0, 160, 113, 23, 24, 1206310419Sdelphij 0, 0, 25, 26, 0, 0, 353, 0, 354, 0, 1207310419Sdelphij 383, 27, 179, 0, 0, 306, 355, 0, 0, 0, 1208310419Sdelphij 356, 0, 0, 0, 28, 29, 30, 0, 0, 0, 1209310419Sdelphij 180, 31, 0, 181, 0, 161, 0, 162, 0, 0, 1210310419Sdelphij 32, 0, 0, 114, 0, 33, 307, 34, 0, 35, 1211310419Sdelphij 36, 115, 231, 0, 116, 0, 0, 0, 0, 37, 1212310419Sdelphij 38, 39, 40, 41, 42, 43, 44, 0, 0, 45, 1213310419Sdelphij 0, 46, 0, 0, 0, 232, 117, 0, 233, 0, 1214310419Sdelphij 47, 118, 0, 0, 396, 48, 49, 50, 2, 51, 1215310419Sdelphij 52, 0, 0, 3, 4, 5, 53, 54, 0, 0, 1216310419Sdelphij 0, 6, 7, 0, 0, -6, 55, 182, 8, 9, 1217310419Sdelphij 308, 0, 10, 0, 11, 0, 12, 13, 163, 0, 1218310419Sdelphij 14, 410, 411, 412, 413, 414, 0, 0, 122, 15, 1219310419Sdelphij 418, 0, 0, 16, 0, 183, 184, 185, 186, 17, 1220310419Sdelphij 0, 18, 0, 187, 0, 0, 0, 0, 0, 0, 1221310419Sdelphij 19, 20, 0, 0, 21, 22, 0, 0, 0, 23, 1222310419Sdelphij 24, 234, 235, 25, 26, 0, 0, 0, 236, 0, 1223310419Sdelphij 0, 0, 27, 0, 0, 0, 0, 0, 0, 0, 1224310419Sdelphij 0, 0, 0, 0, 0, 28, 29, 30, 0, 0, 1225310419Sdelphij 0, 0, 31, 0, 0, 0, 0, 0, 0, 0, 1226310419Sdelphij 0, 32, 0, 0, 0, 0, 33, 318, 34, 0, 1227310419Sdelphij 35, 36, 0, 0, 0, 319, 0, 0, 0, 0, 1228310419Sdelphij 37, 38, 39, 40, 41, 42, 43, 44, 0, 0, 1229310419Sdelphij 45, 0, 46, 320, 321, 0, 0, 322, 0, 0, 1230310419Sdelphij 0, 47, 0, 323, 0, 0, 48, 49, 50, 0, 1231310419Sdelphij 51, 52, 191, 192, 0, 0, 0, 53, 54, 193, 1232310419Sdelphij 0, 194, 135, 136, 137, 138, 0, 55, 0, 0, 1233310419Sdelphij 324, 325, 0, 0, 326, 327, 0, 328, 329, 330, 1234310419Sdelphij 0, 331, 0, 0, 0, 0, 0, 0, 195, 0, 1235310419Sdelphij 0, 0, 0, 139, 0, 140, 0, 141, 0, 0, 1236310419Sdelphij 0, 0, 0, 142, 0, 0, 0, 0, 0, 0, 1237290001Sglebius 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1238310419Sdelphij 0, 0, 0, 0, 0, 0, 0, 0, 196, 0, 1239310419Sdelphij 197, 0, 0, 0, 0, 0, 198, 0, 199, 0, 1240310419Sdelphij 332, 200, 0, 0, 0, 0, 0, 0, 0, 0, 1241294905Sdelphij 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1242310419Sdelphij 0, 0, 0, 201, 202 1243290001Sglebius}; 1244290001Sglebius 1245290001Sglebiusstatic const yytype_int16 yycheck[] = 1246290001Sglebius{ 1247310419Sdelphij 15, 39, 190, 45, 163, 164, 62, 40, 62, 57, 1248310419Sdelphij 148, 188, 50, 4, 63, 43, 11, 62, 206, 1, 1249310419Sdelphij 193, 5, 62, 67, 39, 69, 33, 98, 10, 62, 1250310419Sdelphij 203, 160, 35, 15, 16, 17, 27, 190, 191, 110, 1251310419Sdelphij 8, 23, 24, 160, 12, 60, 148, 62, 30, 31, 1252310419Sdelphij 160, 19, 34, 56, 36, 62, 38, 39, 62, 160, 1253310419Sdelphij 42, 7, 8, 160, 160, 203, 160, 255, 96, 51, 1254310419Sdelphij 62, 160, 62, 55, 160, 160, 62, 80, 126, 61, 1255310419Sdelphij 26, 63, 66, 0, 68, 134, 62, 160, 190, 191, 1256310419Sdelphij 72, 73, 160, 188, 76, 77, 202, 62, 33, 81, 1257310419Sdelphij 82, 160, 70, 85, 86, 100, 62, 266, 267, 160, 1258310419Sdelphij 105, 62, 94, 3, 28, 106, 160, 28, 133, 65, 1259310419Sdelphij 87, 175, 113, 151, 199, 107, 108, 109, 62, 62, 1260310419Sdelphij 62, 146, 114, 175, 9, 188, 104, 105, 171, 62, 1261310419Sdelphij 131, 123, 160, 18, 200, 37, 128, 160, 130, 95, 1262310419Sdelphij 132, 133, 160, 121, 44, 45, 46, 47, 126, 62, 1263310419Sdelphij 142, 143, 144, 145, 146, 147, 148, 149, 188, 199, 1264310419Sdelphij 152, 160, 154, 160, 28, 62, 160, 336, 62, 54, 1265310419Sdelphij 55, 163, 370, 160, 201, 153, 168, 169, 170, 199, 1266310419Sdelphij 172, 173, 183, 202, 188, 186, 71, 179, 180, 199, 1267310419Sdelphij 184, 194, 195, 196, 197, 198, 188, 189, 176, 177, 1268310419Sdelphij 178, 399, 192, 188, 193, 161, 404, 10, 93, 202, 1269310419Sdelphij 166, 199, 15, 16, 17, 21, 101, 188, 103, 25, 1270310419Sdelphij 23, 24, 270, 421, 188, 199, 105, 30, 31, 143, 1271310419Sdelphij 203, 34, 117, 36, 170, 38, 39, 253, 12, 42, 1272310419Sdelphij 188, 141, 130, 158, 29, 210, 30, 256, 51, 298, 1273310419Sdelphij 135, 136, 55, 366, 38, 401, 415, 41, 61, 159, 1274310419Sdelphij 63, -1, -1, -1, 164, 165, 6, -1, -1, 72, 1275310419Sdelphij 73, -1, -1, 76, 77, -1, 28, 83, 81, 82, 1276310419Sdelphij -1, -1, 85, 86, -1, -1, 171, -1, 173, -1, 1277310419Sdelphij 338, 94, 32, -1, -1, 79, 181, -1, -1, -1, 1278310419Sdelphij 185, -1, -1, -1, 107, 108, 109, -1, -1, -1, 1279310419Sdelphij 50, 114, -1, 53, -1, 67, -1, 69, -1, -1, 1280310419Sdelphij 123, -1, -1, 129, -1, 128, 110, 130, -1, 132, 1281310419Sdelphij 133, 137, 29, -1, 140, -1, -1, -1, -1, 142, 1282310419Sdelphij 143, 144, 145, 146, 147, 148, 149, -1, -1, 152, 1283310419Sdelphij -1, 154, -1, -1, -1, 52, 162, -1, 55, -1, 1284310419Sdelphij 163, 167, -1, -1, 389, 168, 169, 170, 10, 172, 1285310419Sdelphij 173, -1, -1, 15, 16, 17, 179, 180, -1, -1, 1286310419Sdelphij -1, 23, 24, -1, -1, 188, 189, 127, 30, 31, 1287310419Sdelphij 174, -1, 34, -1, 36, -1, 38, 39, 150, -1, 1288310419Sdelphij 42, 194, 195, 196, 197, 198, -1, -1, 160, 51, 1289310419Sdelphij 203, -1, -1, 55, -1, 155, 156, 157, 158, 61, 1290310419Sdelphij -1, 63, -1, 163, -1, -1, -1, -1, -1, -1, 1291310419Sdelphij 72, 73, -1, -1, 76, 77, -1, -1, -1, 81, 1292310419Sdelphij 82, 138, 139, 85, 86, -1, -1, -1, 145, -1, 1293310419Sdelphij -1, -1, 94, -1, -1, -1, -1, -1, -1, -1, 1294310419Sdelphij -1, -1, -1, -1, -1, 107, 108, 109, -1, -1, 1295310419Sdelphij -1, -1, 114, -1, -1, -1, -1, -1, -1, -1, 1296310419Sdelphij -1, 123, -1, -1, -1, -1, 128, 48, 130, -1, 1297310419Sdelphij 132, 133, -1, -1, -1, 56, -1, -1, -1, -1, 1298310419Sdelphij 142, 143, 144, 145, 146, 147, 148, 149, -1, -1, 1299310419Sdelphij 152, -1, 154, 74, 75, -1, -1, 78, -1, -1, 1300310419Sdelphij -1, 163, -1, 84, -1, -1, 168, 169, 170, -1, 1301310419Sdelphij 172, 173, 13, 14, -1, -1, -1, 179, 180, 20, 1302310419Sdelphij -1, 22, 57, 58, 59, 60, -1, 189, -1, -1, 1303310419Sdelphij 111, 112, -1, -1, 115, 116, -1, 118, 119, 120, 1304310419Sdelphij -1, 122, -1, -1, -1, -1, -1, -1, 49, -1, 1305310419Sdelphij -1, -1, -1, 88, -1, 90, -1, 92, -1, -1, 1306310419Sdelphij -1, -1, -1, 98, -1, -1, -1, -1, -1, -1, 1307301301Sdelphij -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1308310419Sdelphij -1, -1, -1, -1, -1, -1, -1, -1, 89, -1, 1309310419Sdelphij 91, -1, -1, -1, -1, -1, 97, -1, 99, -1, 1310310419Sdelphij 181, 102, -1, -1, -1, -1, -1, -1, -1, -1, 1311301301Sdelphij -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1312310419Sdelphij -1, -1, -1, 124, 125 1313290001Sglebius}; 1314290001Sglebius 1315301301Sdelphij /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing 1316301301Sdelphij symbol of state STATE-NUM. */ 1317290001Sglebiusstatic const yytype_uint16 yystos[] = 1318290001Sglebius{ 1319310419Sdelphij 0, 1, 10, 15, 16, 17, 23, 24, 30, 31, 1320310419Sdelphij 34, 36, 38, 39, 42, 51, 55, 61, 63, 72, 1321310419Sdelphij 73, 76, 77, 81, 82, 85, 86, 94, 107, 108, 1322310419Sdelphij 109, 114, 123, 128, 130, 132, 133, 142, 143, 144, 1323310419Sdelphij 145, 146, 147, 148, 149, 152, 154, 163, 168, 169, 1324310419Sdelphij 170, 172, 173, 179, 180, 189, 205, 206, 207, 208, 1325310419Sdelphij 209, 221, 222, 223, 224, 228, 233, 241, 250, 255, 1326310419Sdelphij 259, 264, 268, 269, 270, 271, 272, 280, 281, 284, 1327310419Sdelphij 295, 296, 188, 62, 62, 225, 8, 12, 19, 70, 1328310419Sdelphij 104, 105, 121, 126, 153, 176, 177, 178, 260, 261, 1329310419Sdelphij 262, 263, 11, 100, 105, 244, 245, 246, 160, 273, 1330310419Sdelphij 260, 21, 25, 83, 129, 137, 140, 162, 167, 235, 1331310419Sdelphij 67, 69, 160, 210, 211, 212, 160, 160, 160, 160, 1332310419Sdelphij 278, 279, 210, 292, 62, 57, 58, 59, 60, 88, 1333310419Sdelphij 90, 92, 98, 247, 248, 249, 292, 160, 160, 291, 1334310419Sdelphij 62, 7, 8, 26, 65, 95, 161, 166, 285, 286, 1335310419Sdelphij 28, 67, 69, 150, 210, 211, 62, 43, 96, 151, 1336310419Sdelphij 256, 257, 258, 160, 274, 234, 235, 160, 6, 32, 1337310419Sdelphij 50, 53, 127, 155, 156, 157, 158, 163, 265, 266, 1338310419Sdelphij 267, 13, 14, 20, 22, 49, 89, 91, 97, 99, 1339310419Sdelphij 102, 124, 125, 229, 230, 231, 232, 211, 62, 200, 1340310419Sdelphij 288, 289, 290, 62, 287, 0, 207, 188, 210, 210, 1341310419Sdelphij 33, 62, 294, 62, 160, 160, 35, 56, 80, 283, 1342310419Sdelphij 202, 29, 52, 55, 138, 139, 145, 226, 227, 261, 1343310419Sdelphij 245, 62, 33, 236, 3, 44, 45, 46, 47, 141, 1344310419Sdelphij 159, 164, 165, 251, 252, 253, 254, 160, 207, 279, 1345310419Sdelphij 210, 248, 62, 160, 286, 242, 28, 28, 242, 242, 1346310419Sdelphij 87, 257, 62, 199, 235, 266, 294, 40, 62, 171, 1347310419Sdelphij 293, 230, 62, 294, 276, 62, 289, 62, 188, 213, 1348310419Sdelphij 5, 66, 68, 160, 184, 282, 190, 191, 297, 298, 1349310419Sdelphij 299, 62, 160, 30, 38, 41, 79, 110, 174, 237, 1350310419Sdelphij 238, 239, 160, 160, 62, 252, 294, 293, 48, 56, 1351310419Sdelphij 74, 75, 78, 84, 111, 112, 115, 116, 118, 119, 1352310419Sdelphij 120, 122, 181, 243, 242, 242, 211, 160, 63, 134, 1353310419Sdelphij 277, 37, 9, 18, 54, 55, 71, 93, 101, 103, 1354310419Sdelphij 117, 135, 136, 171, 173, 181, 185, 214, 215, 216, 1355310419Sdelphij 217, 218, 219, 220, 148, 298, 300, 301, 303, 188, 1356310419Sdelphij 199, 160, 4, 27, 106, 113, 131, 183, 186, 240, 1357310419Sdelphij 242, 28, 275, 211, 62, 62, 62, 175, 160, 199, 1358310419Sdelphij 188, 203, 301, 202, 294, 201, 210, 192, 302, 199, 1359310419Sdelphij 193, 304, 305, 294, 199, 203, 305, 188, 294, 202, 1360310419Sdelphij 194, 195, 196, 197, 198, 306, 307, 308, 203, 307, 1361310419Sdelphij 188, 199, 188, 294 1362290001Sglebius}; 1363290001Sglebius 1364301301Sdelphij /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ 1365301301Sdelphijstatic const yytype_uint16 yyr1[] = 1366301301Sdelphij{ 1367310419Sdelphij 0, 204, 205, 206, 206, 206, 207, 207, 207, 207, 1368310419Sdelphij 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 1369310419Sdelphij 208, 209, 209, 209, 209, 209, 210, 210, 211, 212, 1370310419Sdelphij 212, 213, 213, 214, 214, 214, 215, 216, 216, 216, 1371310419Sdelphij 216, 216, 216, 216, 216, 217, 217, 218, 218, 218, 1372310419Sdelphij 218, 218, 218, 219, 220, 221, 222, 222, 223, 223, 1373310419Sdelphij 223, 223, 224, 224, 224, 224, 224, 224, 224, 224, 1374310419Sdelphij 224, 225, 225, 226, 226, 227, 227, 227, 227, 227, 1375310419Sdelphij 228, 229, 229, 230, 230, 230, 231, 231, 231, 231, 1376310419Sdelphij 231, 231, 231, 232, 232, 232, 232, 233, 233, 233, 1377310419Sdelphij 234, 234, 235, 235, 235, 235, 235, 235, 235, 235, 1378310419Sdelphij 236, 236, 237, 237, 237, 237, 238, 238, 239, 239, 1379310419Sdelphij 240, 240, 240, 240, 240, 240, 240, 241, 241, 241, 1380310419Sdelphij 241, 241, 241, 241, 241, 242, 242, 243, 243, 243, 1381310419Sdelphij 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 1382310419Sdelphij 243, 243, 244, 244, 245, 246, 246, 246, 247, 247, 1383310419Sdelphij 248, 249, 249, 249, 249, 249, 249, 249, 249, 250, 1384310419Sdelphij 251, 251, 252, 252, 252, 252, 252, 253, 253, 254, 1385310419Sdelphij 254, 254, 254, 255, 256, 256, 257, 258, 258, 258, 1386310419Sdelphij 259, 259, 260, 260, 261, 261, 262, 262, 262, 262, 1387310419Sdelphij 262, 262, 263, 263, 263, 263, 263, 263, 264, 265, 1388310419Sdelphij 265, 266, 267, 267, 267, 267, 267, 267, 267, 267, 1389310419Sdelphij 267, 267, 268, 268, 268, 268, 268, 268, 268, 268, 1390310419Sdelphij 268, 268, 268, 268, 268, 268, 269, 269, 269, 270, 1391310419Sdelphij 270, 271, 271, 272, 272, 272, 273, 273, 273, 274, 1392310419Sdelphij 275, 275, 276, 276, 277, 277, 278, 278, 279, 280, 1393310419Sdelphij 280, 281, 281, 282, 282, 282, 282, 283, 283, 283, 1394310419Sdelphij 284, 285, 285, 286, 286, 286, 286, 286, 286, 286, 1395310419Sdelphij 287, 287, 288, 288, 289, 289, 290, 291, 291, 292, 1396310419Sdelphij 292, 293, 293, 293, 294, 294, 295, 296, 297, 297, 1397310419Sdelphij 298, 299, 299, 300, 300, 301, 302, 303, 304, 304, 1398310419Sdelphij 305, 306, 306, 307, 308, 308, 308, 308, 308 1399301301Sdelphij}; 1400290001Sglebius 1401301301Sdelphij /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ 1402301301Sdelphijstatic const yytype_uint8 yyr2[] = 1403301301Sdelphij{ 1404301301Sdelphij 0, 2, 1, 3, 2, 2, 0, 1, 1, 1, 1405301301Sdelphij 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1406301301Sdelphij 3, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1407301301Sdelphij 1, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1408301301Sdelphij 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1409301301Sdelphij 1, 1, 1, 2, 1, 2, 1, 1, 1, 2, 1410301301Sdelphij 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1411301301Sdelphij 2, 0, 2, 2, 2, 1, 1, 1, 1, 1, 1412301301Sdelphij 2, 2, 1, 2, 2, 2, 1, 1, 1, 1, 1413310419Sdelphij 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 1414310419Sdelphij 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1415310419Sdelphij 0, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1416310419Sdelphij 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 1417310419Sdelphij 5, 3, 4, 4, 3, 0, 2, 1, 1, 1, 1418310419Sdelphij 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1419310419Sdelphij 1, 1, 2, 1, 2, 1, 1, 1, 2, 1, 1420310419Sdelphij 2, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1421310419Sdelphij 2, 1, 2, 2, 2, 2, 2, 1, 1, 1, 1422310419Sdelphij 1, 1, 1, 2, 2, 1, 2, 1, 1, 1, 1423301301Sdelphij 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1424310419Sdelphij 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1425310419Sdelphij 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1426310419Sdelphij 1, 1, 1, 1, 2, 2, 2, 2, 3, 1, 1427310419Sdelphij 2, 2, 2, 2, 3, 2, 1, 1, 1, 1, 1428310419Sdelphij 1, 1, 1, 1, 1, 1, 1, 2, 0, 4, 1429310419Sdelphij 1, 0, 0, 2, 2, 2, 2, 1, 1, 3, 1430310419Sdelphij 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1431301301Sdelphij 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1432310419Sdelphij 2, 1, 2, 1, 1, 1, 5, 2, 1, 2, 1433310419Sdelphij 1, 1, 1, 1, 1, 1, 5, 1, 3, 2, 1434310419Sdelphij 3, 1, 1, 2, 1, 5, 4, 3, 2, 1, 1435310419Sdelphij 6, 3, 2, 3, 1, 1, 1, 1, 1 1436301301Sdelphij}; 1437290001Sglebius 1438290001Sglebius 1439301301Sdelphij#define yyerrok (yyerrstatus = 0) 1440301301Sdelphij#define yyclearin (yychar = YYEMPTY) 1441301301Sdelphij#define YYEMPTY (-2) 1442301301Sdelphij#define YYEOF 0 1443290001Sglebius 1444301301Sdelphij#define YYACCEPT goto yyacceptlab 1445301301Sdelphij#define YYABORT goto yyabortlab 1446301301Sdelphij#define YYERROR goto yyerrorlab 1447290001Sglebius 1448301301Sdelphij 1449290001Sglebius#define YYRECOVERING() (!!yyerrstatus) 1450290001Sglebius 1451290001Sglebius#define YYBACKUP(Token, Value) \ 1452290001Sglebiusdo \ 1453290001Sglebius if (yychar == YYEMPTY) \ 1454290001Sglebius { \ 1455290001Sglebius yychar = (Token); \ 1456290001Sglebius yylval = (Value); \ 1457290001Sglebius YYPOPSTACK (yylen); \ 1458290001Sglebius yystate = *yyssp; \ 1459290001Sglebius goto yybackup; \ 1460290001Sglebius } \ 1461290001Sglebius else \ 1462290001Sglebius { \ 1463290001Sglebius yyerror (YY_("syntax error: cannot back up")); \ 1464301301Sdelphij YYERROR; \ 1465301301Sdelphij } \ 1466301301Sdelphijwhile (0) 1467290001Sglebius 1468290001Sglebius/* Error token number */ 1469301301Sdelphij#define YYTERROR 1 1470301301Sdelphij#define YYERRCODE 256 1471290001Sglebius 1472290001Sglebius 1473290001Sglebius 1474290001Sglebius/* Enable debugging if requested. */ 1475290001Sglebius#if YYDEBUG 1476290001Sglebius 1477290001Sglebius# ifndef YYFPRINTF 1478290001Sglebius# include <stdio.h> /* INFRINGES ON USER NAME SPACE */ 1479290001Sglebius# define YYFPRINTF fprintf 1480290001Sglebius# endif 1481290001Sglebius 1482301301Sdelphij# define YYDPRINTF(Args) \ 1483301301Sdelphijdo { \ 1484301301Sdelphij if (yydebug) \ 1485301301Sdelphij YYFPRINTF Args; \ 1486301301Sdelphij} while (0) 1487290001Sglebius 1488301301Sdelphij/* This macro is provided for backward compatibility. */ 1489301301Sdelphij#ifndef YY_LOCATION_PRINT 1490301301Sdelphij# define YY_LOCATION_PRINT(File, Loc) ((void) 0) 1491301301Sdelphij#endif 1492290001Sglebius 1493290001Sglebius 1494301301Sdelphij# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ 1495301301Sdelphijdo { \ 1496301301Sdelphij if (yydebug) \ 1497301301Sdelphij { \ 1498301301Sdelphij YYFPRINTF (stderr, "%s ", Title); \ 1499301301Sdelphij yy_symbol_print (stderr, \ 1500301301Sdelphij Type, Value); \ 1501301301Sdelphij YYFPRINTF (stderr, "\n"); \ 1502301301Sdelphij } \ 1503301301Sdelphij} while (0) 1504290001Sglebius 1505301301Sdelphij 1506301301Sdelphij/*----------------------------------------. 1507301301Sdelphij| Print this symbol's value on YYOUTPUT. | 1508301301Sdelphij`----------------------------------------*/ 1509301301Sdelphij 1510290001Sglebiusstatic void 1511290001Sglebiusyy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) 1512290001Sglebius{ 1513290001Sglebius FILE *yyo = yyoutput; 1514290001Sglebius YYUSE (yyo); 1515290001Sglebius if (!yyvaluep) 1516290001Sglebius return; 1517290001Sglebius# ifdef YYPRINT 1518290001Sglebius if (yytype < YYNTOKENS) 1519290001Sglebius YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); 1520290001Sglebius# endif 1521290001Sglebius YYUSE (yytype); 1522290001Sglebius} 1523290001Sglebius 1524290001Sglebius 1525290001Sglebius/*--------------------------------. 1526290001Sglebius| Print this symbol on YYOUTPUT. | 1527290001Sglebius`--------------------------------*/ 1528290001Sglebius 1529290001Sglebiusstatic void 1530290001Sglebiusyy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) 1531290001Sglebius{ 1532301301Sdelphij YYFPRINTF (yyoutput, "%s %s (", 1533301301Sdelphij yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]); 1534290001Sglebius 1535290001Sglebius yy_symbol_value_print (yyoutput, yytype, yyvaluep); 1536290001Sglebius YYFPRINTF (yyoutput, ")"); 1537290001Sglebius} 1538290001Sglebius 1539290001Sglebius/*------------------------------------------------------------------. 1540290001Sglebius| yy_stack_print -- Print the state stack from its BOTTOM up to its | 1541290001Sglebius| TOP (included). | 1542290001Sglebius`------------------------------------------------------------------*/ 1543290001Sglebius 1544290001Sglebiusstatic void 1545290001Sglebiusyy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) 1546290001Sglebius{ 1547290001Sglebius YYFPRINTF (stderr, "Stack now"); 1548290001Sglebius for (; yybottom <= yytop; yybottom++) 1549290001Sglebius { 1550290001Sglebius int yybot = *yybottom; 1551290001Sglebius YYFPRINTF (stderr, " %d", yybot); 1552290001Sglebius } 1553290001Sglebius YYFPRINTF (stderr, "\n"); 1554290001Sglebius} 1555290001Sglebius 1556301301Sdelphij# define YY_STACK_PRINT(Bottom, Top) \ 1557301301Sdelphijdo { \ 1558301301Sdelphij if (yydebug) \ 1559301301Sdelphij yy_stack_print ((Bottom), (Top)); \ 1560301301Sdelphij} while (0) 1561290001Sglebius 1562290001Sglebius 1563290001Sglebius/*------------------------------------------------. 1564290001Sglebius| Report that the YYRULE is going to be reduced. | 1565290001Sglebius`------------------------------------------------*/ 1566290001Sglebius 1567290001Sglebiusstatic void 1568301301Sdelphijyy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule) 1569290001Sglebius{ 1570301301Sdelphij unsigned long int yylno = yyrline[yyrule]; 1571290001Sglebius int yynrhs = yyr2[yyrule]; 1572290001Sglebius int yyi; 1573290001Sglebius YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", 1574301301Sdelphij yyrule - 1, yylno); 1575290001Sglebius /* The symbols being reduced. */ 1576290001Sglebius for (yyi = 0; yyi < yynrhs; yyi++) 1577290001Sglebius { 1578290001Sglebius YYFPRINTF (stderr, " $%d = ", yyi + 1); 1579301301Sdelphij yy_symbol_print (stderr, 1580301301Sdelphij yystos[yyssp[yyi + 1 - yynrhs]], 1581301301Sdelphij &(yyvsp[(yyi + 1) - (yynrhs)]) 1582301301Sdelphij ); 1583290001Sglebius YYFPRINTF (stderr, "\n"); 1584290001Sglebius } 1585290001Sglebius} 1586290001Sglebius 1587301301Sdelphij# define YY_REDUCE_PRINT(Rule) \ 1588301301Sdelphijdo { \ 1589301301Sdelphij if (yydebug) \ 1590301301Sdelphij yy_reduce_print (yyssp, yyvsp, Rule); \ 1591301301Sdelphij} while (0) 1592290001Sglebius 1593290001Sglebius/* Nonzero means print parse trace. It is left uninitialized so that 1594290001Sglebius multiple parsers can coexist. */ 1595290001Sglebiusint yydebug; 1596290001Sglebius#else /* !YYDEBUG */ 1597290001Sglebius# define YYDPRINTF(Args) 1598290001Sglebius# define YY_SYMBOL_PRINT(Title, Type, Value, Location) 1599290001Sglebius# define YY_STACK_PRINT(Bottom, Top) 1600290001Sglebius# define YY_REDUCE_PRINT(Rule) 1601290001Sglebius#endif /* !YYDEBUG */ 1602290001Sglebius 1603290001Sglebius 1604290001Sglebius/* YYINITDEPTH -- initial size of the parser's stacks. */ 1605301301Sdelphij#ifndef YYINITDEPTH 1606290001Sglebius# define YYINITDEPTH 200 1607290001Sglebius#endif 1608290001Sglebius 1609290001Sglebius/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only 1610290001Sglebius if the built-in stack extension method is used). 1611290001Sglebius 1612290001Sglebius Do not make this value too large; the results are undefined if 1613290001Sglebius YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) 1614290001Sglebius evaluated with infinite-precision integer arithmetic. */ 1615290001Sglebius 1616290001Sglebius#ifndef YYMAXDEPTH 1617290001Sglebius# define YYMAXDEPTH 10000 1618290001Sglebius#endif 1619290001Sglebius 1620290001Sglebius 1621290001Sglebius#if YYERROR_VERBOSE 1622290001Sglebius 1623290001Sglebius# ifndef yystrlen 1624290001Sglebius# if defined __GLIBC__ && defined _STRING_H 1625290001Sglebius# define yystrlen strlen 1626290001Sglebius# else 1627290001Sglebius/* Return the length of YYSTR. */ 1628290001Sglebiusstatic YYSIZE_T 1629290001Sglebiusyystrlen (const char *yystr) 1630290001Sglebius{ 1631290001Sglebius YYSIZE_T yylen; 1632290001Sglebius for (yylen = 0; yystr[yylen]; yylen++) 1633290001Sglebius continue; 1634290001Sglebius return yylen; 1635290001Sglebius} 1636290001Sglebius# endif 1637290001Sglebius# endif 1638290001Sglebius 1639290001Sglebius# ifndef yystpcpy 1640290001Sglebius# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE 1641290001Sglebius# define yystpcpy stpcpy 1642290001Sglebius# else 1643290001Sglebius/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in 1644290001Sglebius YYDEST. */ 1645290001Sglebiusstatic char * 1646290001Sglebiusyystpcpy (char *yydest, const char *yysrc) 1647290001Sglebius{ 1648290001Sglebius char *yyd = yydest; 1649290001Sglebius const char *yys = yysrc; 1650290001Sglebius 1651290001Sglebius while ((*yyd++ = *yys++) != '\0') 1652290001Sglebius continue; 1653290001Sglebius 1654290001Sglebius return yyd - 1; 1655290001Sglebius} 1656290001Sglebius# endif 1657290001Sglebius# endif 1658290001Sglebius 1659290001Sglebius# ifndef yytnamerr 1660290001Sglebius/* Copy to YYRES the contents of YYSTR after stripping away unnecessary 1661290001Sglebius quotes and backslashes, so that it's suitable for yyerror. The 1662290001Sglebius heuristic is that double-quoting is unnecessary unless the string 1663290001Sglebius contains an apostrophe, a comma, or backslash (other than 1664290001Sglebius backslash-backslash). YYSTR is taken from yytname. If YYRES is 1665290001Sglebius null, do not copy; instead, return the length of what the result 1666290001Sglebius would have been. */ 1667290001Sglebiusstatic YYSIZE_T 1668290001Sglebiusyytnamerr (char *yyres, const char *yystr) 1669290001Sglebius{ 1670290001Sglebius if (*yystr == '"') 1671290001Sglebius { 1672290001Sglebius YYSIZE_T yyn = 0; 1673290001Sglebius char const *yyp = yystr; 1674290001Sglebius 1675290001Sglebius for (;;) 1676301301Sdelphij switch (*++yyp) 1677301301Sdelphij { 1678301301Sdelphij case '\'': 1679301301Sdelphij case ',': 1680301301Sdelphij goto do_not_strip_quotes; 1681290001Sglebius 1682301301Sdelphij case '\\': 1683301301Sdelphij if (*++yyp != '\\') 1684301301Sdelphij goto do_not_strip_quotes; 1685301301Sdelphij /* Fall through. */ 1686301301Sdelphij default: 1687301301Sdelphij if (yyres) 1688301301Sdelphij yyres[yyn] = *yyp; 1689301301Sdelphij yyn++; 1690301301Sdelphij break; 1691290001Sglebius 1692301301Sdelphij case '"': 1693301301Sdelphij if (yyres) 1694301301Sdelphij yyres[yyn] = '\0'; 1695301301Sdelphij return yyn; 1696301301Sdelphij } 1697290001Sglebius do_not_strip_quotes: ; 1698290001Sglebius } 1699290001Sglebius 1700290001Sglebius if (! yyres) 1701290001Sglebius return yystrlen (yystr); 1702290001Sglebius 1703290001Sglebius return yystpcpy (yyres, yystr) - yyres; 1704290001Sglebius} 1705290001Sglebius# endif 1706290001Sglebius 1707290001Sglebius/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message 1708290001Sglebius about the unexpected token YYTOKEN for the state stack whose top is 1709290001Sglebius YYSSP. 1710290001Sglebius 1711290001Sglebius Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is 1712290001Sglebius not large enough to hold the message. In that case, also set 1713290001Sglebius *YYMSG_ALLOC to the required number of bytes. Return 2 if the 1714290001Sglebius required number of bytes is too large to store. */ 1715290001Sglebiusstatic int 1716290001Sglebiusyysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, 1717290001Sglebius yytype_int16 *yyssp, int yytoken) 1718290001Sglebius{ 1719301301Sdelphij YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); 1720290001Sglebius YYSIZE_T yysize = yysize0; 1721290001Sglebius enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; 1722290001Sglebius /* Internationalized format string. */ 1723301301Sdelphij const char *yyformat = YY_NULLPTR; 1724290001Sglebius /* Arguments of yyformat. */ 1725290001Sglebius char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; 1726290001Sglebius /* Number of reported tokens (one for the "unexpected", one per 1727290001Sglebius "expected"). */ 1728290001Sglebius int yycount = 0; 1729290001Sglebius 1730290001Sglebius /* There are many possibilities here to consider: 1731290001Sglebius - If this state is a consistent state with a default action, then 1732290001Sglebius the only way this function was invoked is if the default action 1733290001Sglebius is an error action. In that case, don't check for expected 1734290001Sglebius tokens because there are none. 1735290001Sglebius - The only way there can be no lookahead present (in yychar) is if 1736290001Sglebius this state is a consistent state with a default action. Thus, 1737290001Sglebius detecting the absence of a lookahead is sufficient to determine 1738290001Sglebius that there is no unexpected or expected token to report. In that 1739290001Sglebius case, just report a simple "syntax error". 1740290001Sglebius - Don't assume there isn't a lookahead just because this state is a 1741290001Sglebius consistent state with a default action. There might have been a 1742290001Sglebius previous inconsistent state, consistent state with a non-default 1743290001Sglebius action, or user semantic action that manipulated yychar. 1744290001Sglebius - Of course, the expected token list depends on states to have 1745290001Sglebius correct lookahead information, and it depends on the parser not 1746290001Sglebius to perform extra reductions after fetching a lookahead from the 1747290001Sglebius scanner and before detecting a syntax error. Thus, state merging 1748290001Sglebius (from LALR or IELR) and default reductions corrupt the expected 1749290001Sglebius token list. However, the list is correct for canonical LR with 1750290001Sglebius one exception: it will still contain any token that will not be 1751290001Sglebius accepted due to an error action in a later state. 1752290001Sglebius */ 1753290001Sglebius if (yytoken != YYEMPTY) 1754290001Sglebius { 1755290001Sglebius int yyn = yypact[*yyssp]; 1756290001Sglebius yyarg[yycount++] = yytname[yytoken]; 1757290001Sglebius if (!yypact_value_is_default (yyn)) 1758290001Sglebius { 1759290001Sglebius /* Start YYX at -YYN if negative to avoid negative indexes in 1760290001Sglebius YYCHECK. In other words, skip the first -YYN actions for 1761290001Sglebius this state because they are default actions. */ 1762290001Sglebius int yyxbegin = yyn < 0 ? -yyn : 0; 1763290001Sglebius /* Stay within bounds of both yycheck and yytname. */ 1764290001Sglebius int yychecklim = YYLAST - yyn + 1; 1765290001Sglebius int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; 1766290001Sglebius int yyx; 1767290001Sglebius 1768290001Sglebius for (yyx = yyxbegin; yyx < yyxend; ++yyx) 1769290001Sglebius if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR 1770290001Sglebius && !yytable_value_is_error (yytable[yyx + yyn])) 1771290001Sglebius { 1772290001Sglebius if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) 1773290001Sglebius { 1774290001Sglebius yycount = 1; 1775290001Sglebius yysize = yysize0; 1776290001Sglebius break; 1777290001Sglebius } 1778290001Sglebius yyarg[yycount++] = yytname[yyx]; 1779290001Sglebius { 1780301301Sdelphij YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); 1781290001Sglebius if (! (yysize <= yysize1 1782290001Sglebius && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) 1783290001Sglebius return 2; 1784290001Sglebius yysize = yysize1; 1785290001Sglebius } 1786290001Sglebius } 1787290001Sglebius } 1788290001Sglebius } 1789290001Sglebius 1790290001Sglebius switch (yycount) 1791290001Sglebius { 1792290001Sglebius# define YYCASE_(N, S) \ 1793290001Sglebius case N: \ 1794290001Sglebius yyformat = S; \ 1795290001Sglebius break 1796290001Sglebius YYCASE_(0, YY_("syntax error")); 1797290001Sglebius YYCASE_(1, YY_("syntax error, unexpected %s")); 1798290001Sglebius YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); 1799290001Sglebius YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); 1800290001Sglebius YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); 1801290001Sglebius YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); 1802290001Sglebius# undef YYCASE_ 1803290001Sglebius } 1804290001Sglebius 1805290001Sglebius { 1806290001Sglebius YYSIZE_T yysize1 = yysize + yystrlen (yyformat); 1807290001Sglebius if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) 1808290001Sglebius return 2; 1809290001Sglebius yysize = yysize1; 1810290001Sglebius } 1811290001Sglebius 1812290001Sglebius if (*yymsg_alloc < yysize) 1813290001Sglebius { 1814290001Sglebius *yymsg_alloc = 2 * yysize; 1815290001Sglebius if (! (yysize <= *yymsg_alloc 1816290001Sglebius && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) 1817290001Sglebius *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; 1818290001Sglebius return 1; 1819290001Sglebius } 1820290001Sglebius 1821290001Sglebius /* Avoid sprintf, as that infringes on the user's name space. 1822290001Sglebius Don't have undefined behavior even if the translation 1823290001Sglebius produced a string with the wrong number of "%s"s. */ 1824290001Sglebius { 1825290001Sglebius char *yyp = *yymsg; 1826290001Sglebius int yyi = 0; 1827290001Sglebius while ((*yyp = *yyformat) != '\0') 1828290001Sglebius if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) 1829290001Sglebius { 1830290001Sglebius yyp += yytnamerr (yyp, yyarg[yyi++]); 1831290001Sglebius yyformat += 2; 1832290001Sglebius } 1833290001Sglebius else 1834290001Sglebius { 1835290001Sglebius yyp++; 1836290001Sglebius yyformat++; 1837290001Sglebius } 1838290001Sglebius } 1839290001Sglebius return 0; 1840290001Sglebius} 1841290001Sglebius#endif /* YYERROR_VERBOSE */ 1842290001Sglebius 1843290001Sglebius/*-----------------------------------------------. 1844290001Sglebius| Release the memory associated to this symbol. | 1845290001Sglebius`-----------------------------------------------*/ 1846290001Sglebius 1847290001Sglebiusstatic void 1848290001Sglebiusyydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) 1849290001Sglebius{ 1850290001Sglebius YYUSE (yyvaluep); 1851290001Sglebius if (!yymsg) 1852290001Sglebius yymsg = "Deleting"; 1853290001Sglebius YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); 1854290001Sglebius 1855301301Sdelphij YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 1856290001Sglebius YYUSE (yytype); 1857301301Sdelphij YY_IGNORE_MAYBE_UNINITIALIZED_END 1858290001Sglebius} 1859290001Sglebius 1860290001Sglebius 1861290001Sglebius 1862290001Sglebius 1863290001Sglebius/* The lookahead symbol. */ 1864290001Sglebiusint yychar; 1865290001Sglebius 1866290001Sglebius/* The semantic value of the lookahead symbol. */ 1867301301SdelphijYYSTYPE yylval; 1868290001Sglebius/* Number of syntax errors so far. */ 1869290001Sglebiusint yynerrs; 1870290001Sglebius 1871290001Sglebius 1872290001Sglebius/*----------. 1873290001Sglebius| yyparse. | 1874290001Sglebius`----------*/ 1875290001Sglebius 1876290001Sglebiusint 1877290001Sglebiusyyparse (void) 1878290001Sglebius{ 1879290001Sglebius int yystate; 1880290001Sglebius /* Number of tokens to shift before error messages enabled. */ 1881290001Sglebius int yyerrstatus; 1882290001Sglebius 1883290001Sglebius /* The stacks and their tools: 1884301301Sdelphij 'yyss': related to states. 1885301301Sdelphij 'yyvs': related to semantic values. 1886290001Sglebius 1887290001Sglebius Refer to the stacks through separate pointers, to allow yyoverflow 1888290001Sglebius to reallocate them elsewhere. */ 1889290001Sglebius 1890290001Sglebius /* The state stack. */ 1891290001Sglebius yytype_int16 yyssa[YYINITDEPTH]; 1892290001Sglebius yytype_int16 *yyss; 1893290001Sglebius yytype_int16 *yyssp; 1894290001Sglebius 1895290001Sglebius /* The semantic value stack. */ 1896290001Sglebius YYSTYPE yyvsa[YYINITDEPTH]; 1897290001Sglebius YYSTYPE *yyvs; 1898290001Sglebius YYSTYPE *yyvsp; 1899290001Sglebius 1900290001Sglebius YYSIZE_T yystacksize; 1901290001Sglebius 1902290001Sglebius int yyn; 1903290001Sglebius int yyresult; 1904290001Sglebius /* Lookahead token as an internal (translated) token number. */ 1905290001Sglebius int yytoken = 0; 1906290001Sglebius /* The variables used to return semantic value and location from the 1907290001Sglebius action routines. */ 1908290001Sglebius YYSTYPE yyval; 1909290001Sglebius 1910290001Sglebius#if YYERROR_VERBOSE 1911290001Sglebius /* Buffer for error messages, and its allocated size. */ 1912290001Sglebius char yymsgbuf[128]; 1913290001Sglebius char *yymsg = yymsgbuf; 1914290001Sglebius YYSIZE_T yymsg_alloc = sizeof yymsgbuf; 1915290001Sglebius#endif 1916290001Sglebius 1917290001Sglebius#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) 1918290001Sglebius 1919290001Sglebius /* The number of symbols on the RHS of the reduced rule. 1920290001Sglebius Keep to zero when no symbol should be popped. */ 1921290001Sglebius int yylen = 0; 1922290001Sglebius 1923290001Sglebius yyssp = yyss = yyssa; 1924290001Sglebius yyvsp = yyvs = yyvsa; 1925290001Sglebius yystacksize = YYINITDEPTH; 1926290001Sglebius 1927290001Sglebius YYDPRINTF ((stderr, "Starting parse\n")); 1928290001Sglebius 1929290001Sglebius yystate = 0; 1930290001Sglebius yyerrstatus = 0; 1931290001Sglebius yynerrs = 0; 1932290001Sglebius yychar = YYEMPTY; /* Cause a token to be read. */ 1933290001Sglebius goto yysetstate; 1934290001Sglebius 1935290001Sglebius/*------------------------------------------------------------. 1936290001Sglebius| yynewstate -- Push a new state, which is found in yystate. | 1937290001Sglebius`------------------------------------------------------------*/ 1938290001Sglebius yynewstate: 1939290001Sglebius /* In all cases, when you get here, the value and location stacks 1940290001Sglebius have just been pushed. So pushing a state here evens the stacks. */ 1941290001Sglebius yyssp++; 1942290001Sglebius 1943290001Sglebius yysetstate: 1944290001Sglebius *yyssp = yystate; 1945290001Sglebius 1946290001Sglebius if (yyss + yystacksize - 1 <= yyssp) 1947290001Sglebius { 1948290001Sglebius /* Get the current used size of the three stacks, in elements. */ 1949290001Sglebius YYSIZE_T yysize = yyssp - yyss + 1; 1950290001Sglebius 1951290001Sglebius#ifdef yyoverflow 1952290001Sglebius { 1953301301Sdelphij /* Give user a chance to reallocate the stack. Use copies of 1954301301Sdelphij these so that the &'s don't force the real ones into 1955301301Sdelphij memory. */ 1956301301Sdelphij YYSTYPE *yyvs1 = yyvs; 1957301301Sdelphij yytype_int16 *yyss1 = yyss; 1958290001Sglebius 1959301301Sdelphij /* Each stack pointer address is followed by the size of the 1960301301Sdelphij data in use in that stack, in bytes. This used to be a 1961301301Sdelphij conditional around just the two extra args, but that might 1962301301Sdelphij be undefined if yyoverflow is a macro. */ 1963301301Sdelphij yyoverflow (YY_("memory exhausted"), 1964301301Sdelphij &yyss1, yysize * sizeof (*yyssp), 1965301301Sdelphij &yyvs1, yysize * sizeof (*yyvsp), 1966301301Sdelphij &yystacksize); 1967290001Sglebius 1968301301Sdelphij yyss = yyss1; 1969301301Sdelphij yyvs = yyvs1; 1970290001Sglebius } 1971290001Sglebius#else /* no yyoverflow */ 1972290001Sglebius# ifndef YYSTACK_RELOCATE 1973290001Sglebius goto yyexhaustedlab; 1974290001Sglebius# else 1975290001Sglebius /* Extend the stack our own way. */ 1976290001Sglebius if (YYMAXDEPTH <= yystacksize) 1977301301Sdelphij goto yyexhaustedlab; 1978290001Sglebius yystacksize *= 2; 1979290001Sglebius if (YYMAXDEPTH < yystacksize) 1980301301Sdelphij yystacksize = YYMAXDEPTH; 1981290001Sglebius 1982290001Sglebius { 1983301301Sdelphij yytype_int16 *yyss1 = yyss; 1984301301Sdelphij union yyalloc *yyptr = 1985301301Sdelphij (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); 1986301301Sdelphij if (! yyptr) 1987301301Sdelphij goto yyexhaustedlab; 1988301301Sdelphij YYSTACK_RELOCATE (yyss_alloc, yyss); 1989301301Sdelphij YYSTACK_RELOCATE (yyvs_alloc, yyvs); 1990290001Sglebius# undef YYSTACK_RELOCATE 1991301301Sdelphij if (yyss1 != yyssa) 1992301301Sdelphij YYSTACK_FREE (yyss1); 1993290001Sglebius } 1994290001Sglebius# endif 1995290001Sglebius#endif /* no yyoverflow */ 1996290001Sglebius 1997290001Sglebius yyssp = yyss + yysize - 1; 1998290001Sglebius yyvsp = yyvs + yysize - 1; 1999290001Sglebius 2000290001Sglebius YYDPRINTF ((stderr, "Stack size increased to %lu\n", 2001301301Sdelphij (unsigned long int) yystacksize)); 2002290001Sglebius 2003290001Sglebius if (yyss + yystacksize - 1 <= yyssp) 2004301301Sdelphij YYABORT; 2005290001Sglebius } 2006290001Sglebius 2007290001Sglebius YYDPRINTF ((stderr, "Entering state %d\n", yystate)); 2008290001Sglebius 2009290001Sglebius if (yystate == YYFINAL) 2010290001Sglebius YYACCEPT; 2011290001Sglebius 2012290001Sglebius goto yybackup; 2013290001Sglebius 2014290001Sglebius/*-----------. 2015290001Sglebius| yybackup. | 2016290001Sglebius`-----------*/ 2017290001Sglebiusyybackup: 2018290001Sglebius 2019290001Sglebius /* Do appropriate processing given the current state. Read a 2020290001Sglebius lookahead token if we need one and don't already have one. */ 2021290001Sglebius 2022290001Sglebius /* First try to decide what to do without reference to lookahead token. */ 2023290001Sglebius yyn = yypact[yystate]; 2024290001Sglebius if (yypact_value_is_default (yyn)) 2025290001Sglebius goto yydefault; 2026290001Sglebius 2027290001Sglebius /* Not known => get a lookahead token if don't already have one. */ 2028290001Sglebius 2029290001Sglebius /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */ 2030290001Sglebius if (yychar == YYEMPTY) 2031290001Sglebius { 2032290001Sglebius YYDPRINTF ((stderr, "Reading a token: ")); 2033301301Sdelphij yychar = yylex (); 2034290001Sglebius } 2035290001Sglebius 2036290001Sglebius if (yychar <= YYEOF) 2037290001Sglebius { 2038290001Sglebius yychar = yytoken = YYEOF; 2039290001Sglebius YYDPRINTF ((stderr, "Now at end of input.\n")); 2040290001Sglebius } 2041290001Sglebius else 2042290001Sglebius { 2043290001Sglebius yytoken = YYTRANSLATE (yychar); 2044290001Sglebius YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); 2045290001Sglebius } 2046290001Sglebius 2047290001Sglebius /* If the proper action on seeing token YYTOKEN is to reduce or to 2048290001Sglebius detect an error, take that action. */ 2049290001Sglebius yyn += yytoken; 2050290001Sglebius if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) 2051290001Sglebius goto yydefault; 2052290001Sglebius yyn = yytable[yyn]; 2053290001Sglebius if (yyn <= 0) 2054290001Sglebius { 2055290001Sglebius if (yytable_value_is_error (yyn)) 2056290001Sglebius goto yyerrlab; 2057290001Sglebius yyn = -yyn; 2058290001Sglebius goto yyreduce; 2059290001Sglebius } 2060290001Sglebius 2061290001Sglebius /* Count tokens shifted since error; after three, turn off error 2062290001Sglebius status. */ 2063290001Sglebius if (yyerrstatus) 2064290001Sglebius yyerrstatus--; 2065290001Sglebius 2066290001Sglebius /* Shift the lookahead token. */ 2067290001Sglebius YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); 2068290001Sglebius 2069290001Sglebius /* Discard the shifted token. */ 2070290001Sglebius yychar = YYEMPTY; 2071290001Sglebius 2072290001Sglebius yystate = yyn; 2073290001Sglebius YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 2074290001Sglebius *++yyvsp = yylval; 2075290001Sglebius YY_IGNORE_MAYBE_UNINITIALIZED_END 2076290001Sglebius 2077290001Sglebius goto yynewstate; 2078290001Sglebius 2079290001Sglebius 2080290001Sglebius/*-----------------------------------------------------------. 2081290001Sglebius| yydefault -- do the default action for the current state. | 2082290001Sglebius`-----------------------------------------------------------*/ 2083290001Sglebiusyydefault: 2084290001Sglebius yyn = yydefact[yystate]; 2085290001Sglebius if (yyn == 0) 2086290001Sglebius goto yyerrlab; 2087290001Sglebius goto yyreduce; 2088290001Sglebius 2089290001Sglebius 2090290001Sglebius/*-----------------------------. 2091290001Sglebius| yyreduce -- Do a reduction. | 2092290001Sglebius`-----------------------------*/ 2093290001Sglebiusyyreduce: 2094290001Sglebius /* yyn is the number of a rule to reduce with. */ 2095290001Sglebius yylen = yyr2[yyn]; 2096290001Sglebius 2097290001Sglebius /* If YYLEN is nonzero, implement the default value of the action: 2098301301Sdelphij '$$ = $1'. 2099290001Sglebius 2100290001Sglebius Otherwise, the following line sets YYVAL to garbage. 2101290001Sglebius This behavior is undocumented and Bison 2102290001Sglebius users should not rely upon it. Assigning to YYVAL 2103290001Sglebius unconditionally makes the parser a bit smaller, and it avoids a 2104290001Sglebius GCC warning that YYVAL may be used uninitialized. */ 2105290001Sglebius yyval = yyvsp[1-yylen]; 2106290001Sglebius 2107290001Sglebius 2108290001Sglebius YY_REDUCE_PRINT (yyn); 2109290001Sglebius switch (yyn) 2110290001Sglebius { 2111290001Sglebius case 5: 2112310419Sdelphij#line 378 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2113290001Sglebius { 2114290001Sglebius /* I will need to incorporate much more fine grained 2115290001Sglebius * error messages. The following should suffice for 2116290001Sglebius * the time being. 2117290001Sglebius */ 2118290001Sglebius struct FILE_INFO * ip_ctx = lex_current(); 2119290001Sglebius msyslog(LOG_ERR, 2120290001Sglebius "syntax error in %s line %d, column %d", 2121290001Sglebius ip_ctx->fname, 2122290001Sglebius ip_ctx->errpos.nline, 2123290001Sglebius ip_ctx->errpos.ncol); 2124290001Sglebius } 2125310419Sdelphij#line 2126 "ntp_parser.c" /* yacc.c:1646 */ 2126290001Sglebius break; 2127290001Sglebius 2128290001Sglebius case 20: 2129310419Sdelphij#line 414 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2130290001Sglebius { 2131290001Sglebius peer_node *my_node; 2132290001Sglebius 2133301301Sdelphij my_node = create_peer_node((yyvsp[-2].Integer), (yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo)); 2134290001Sglebius APPEND_G_FIFO(cfgt.peers, my_node); 2135290001Sglebius } 2136310419Sdelphij#line 2137 "ntp_parser.c" /* yacc.c:1646 */ 2137290001Sglebius break; 2138290001Sglebius 2139290001Sglebius case 27: 2140310419Sdelphij#line 433 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2141301301Sdelphij { (yyval.Address_node) = create_address_node((yyvsp[0].String), (yyvsp[-1].Integer)); } 2142310419Sdelphij#line 2143 "ntp_parser.c" /* yacc.c:1646 */ 2143290001Sglebius break; 2144290001Sglebius 2145290001Sglebius case 28: 2146310419Sdelphij#line 438 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2147301301Sdelphij { (yyval.Address_node) = create_address_node((yyvsp[0].String), AF_UNSPEC); } 2148310419Sdelphij#line 2149 "ntp_parser.c" /* yacc.c:1646 */ 2149290001Sglebius break; 2150290001Sglebius 2151290001Sglebius case 29: 2152310419Sdelphij#line 443 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2153290001Sglebius { (yyval.Integer) = AF_INET; } 2154310419Sdelphij#line 2155 "ntp_parser.c" /* yacc.c:1646 */ 2155290001Sglebius break; 2156290001Sglebius 2157290001Sglebius case 30: 2158310419Sdelphij#line 445 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2159290001Sglebius { (yyval.Integer) = AF_INET6; } 2160310419Sdelphij#line 2161 "ntp_parser.c" /* yacc.c:1646 */ 2161290001Sglebius break; 2162290001Sglebius 2163290001Sglebius case 31: 2164310419Sdelphij#line 450 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2165290001Sglebius { (yyval.Attr_val_fifo) = NULL; } 2166310419Sdelphij#line 2167 "ntp_parser.c" /* yacc.c:1646 */ 2167290001Sglebius break; 2168290001Sglebius 2169290001Sglebius case 32: 2170310419Sdelphij#line 452 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2171290001Sglebius { 2172301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2173301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2174290001Sglebius } 2175310419Sdelphij#line 2176 "ntp_parser.c" /* yacc.c:1646 */ 2176290001Sglebius break; 2177290001Sglebius 2178290001Sglebius case 36: 2179310419Sdelphij#line 466 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2180301301Sdelphij { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); } 2181310419Sdelphij#line 2182 "ntp_parser.c" /* yacc.c:1646 */ 2182290001Sglebius break; 2183290001Sglebius 2184290001Sglebius case 45: 2185310419Sdelphij#line 482 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2186301301Sdelphij { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2187310419Sdelphij#line 2188 "ntp_parser.c" /* yacc.c:1646 */ 2188290001Sglebius break; 2189290001Sglebius 2190290001Sglebius case 46: 2191310419Sdelphij#line 484 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2192301301Sdelphij { (yyval.Attr_val) = create_attr_uval((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2193310419Sdelphij#line 2194 "ntp_parser.c" /* yacc.c:1646 */ 2194290001Sglebius break; 2195290001Sglebius 2196290001Sglebius case 53: 2197310419Sdelphij#line 498 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2198301301Sdelphij { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } 2199310419Sdelphij#line 2200 "ntp_parser.c" /* yacc.c:1646 */ 2200290001Sglebius break; 2201290001Sglebius 2202290001Sglebius case 55: 2203310419Sdelphij#line 512 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2204290001Sglebius { 2205290001Sglebius unpeer_node *my_node; 2206290001Sglebius 2207301301Sdelphij my_node = create_unpeer_node((yyvsp[0].Address_node)); 2208290001Sglebius if (my_node) 2209290001Sglebius APPEND_G_FIFO(cfgt.unpeers, my_node); 2210290001Sglebius } 2211310419Sdelphij#line 2212 "ntp_parser.c" /* yacc.c:1646 */ 2212290001Sglebius break; 2213290001Sglebius 2214290001Sglebius case 58: 2215310419Sdelphij#line 533 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2216290001Sglebius { cfgt.broadcastclient = 1; } 2217310419Sdelphij#line 2218 "ntp_parser.c" /* yacc.c:1646 */ 2218290001Sglebius break; 2219290001Sglebius 2220290001Sglebius case 59: 2221310419Sdelphij#line 535 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2222301301Sdelphij { CONCAT_G_FIFOS(cfgt.manycastserver, (yyvsp[0].Address_fifo)); } 2223310419Sdelphij#line 2224 "ntp_parser.c" /* yacc.c:1646 */ 2224290001Sglebius break; 2225290001Sglebius 2226290001Sglebius case 60: 2227310419Sdelphij#line 537 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2228301301Sdelphij { CONCAT_G_FIFOS(cfgt.multicastclient, (yyvsp[0].Address_fifo)); } 2229310419Sdelphij#line 2230 "ntp_parser.c" /* yacc.c:1646 */ 2230290001Sglebius break; 2231290001Sglebius 2232290001Sglebius case 61: 2233310419Sdelphij#line 539 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2234301301Sdelphij { cfgt.mdnstries = (yyvsp[0].Integer); } 2235310419Sdelphij#line 2236 "ntp_parser.c" /* yacc.c:1646 */ 2236290001Sglebius break; 2237290001Sglebius 2238290001Sglebius case 62: 2239310419Sdelphij#line 550 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2240290001Sglebius { 2241290001Sglebius attr_val *atrv; 2242290001Sglebius 2243301301Sdelphij atrv = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); 2244290001Sglebius APPEND_G_FIFO(cfgt.vars, atrv); 2245290001Sglebius } 2246310419Sdelphij#line 2247 "ntp_parser.c" /* yacc.c:1646 */ 2247290001Sglebius break; 2248290001Sglebius 2249290001Sglebius case 63: 2250310419Sdelphij#line 557 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2251301301Sdelphij { cfgt.auth.control_key = (yyvsp[0].Integer); } 2252310419Sdelphij#line 2253 "ntp_parser.c" /* yacc.c:1646 */ 2253290001Sglebius break; 2254290001Sglebius 2255290001Sglebius case 64: 2256310419Sdelphij#line 559 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2257290001Sglebius { 2258290001Sglebius cfgt.auth.cryptosw++; 2259301301Sdelphij CONCAT_G_FIFOS(cfgt.auth.crypto_cmd_list, (yyvsp[0].Attr_val_fifo)); 2260290001Sglebius } 2261310419Sdelphij#line 2262 "ntp_parser.c" /* yacc.c:1646 */ 2262290001Sglebius break; 2263290001Sglebius 2264290001Sglebius case 65: 2265310419Sdelphij#line 564 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2266301301Sdelphij { cfgt.auth.keys = (yyvsp[0].String); } 2267310419Sdelphij#line 2268 "ntp_parser.c" /* yacc.c:1646 */ 2268290001Sglebius break; 2269290001Sglebius 2270290001Sglebius case 66: 2271310419Sdelphij#line 566 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2272301301Sdelphij { cfgt.auth.keysdir = (yyvsp[0].String); } 2273310419Sdelphij#line 2274 "ntp_parser.c" /* yacc.c:1646 */ 2274290001Sglebius break; 2275290001Sglebius 2276290001Sglebius case 67: 2277310419Sdelphij#line 568 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2278301301Sdelphij { cfgt.auth.request_key = (yyvsp[0].Integer); } 2279310419Sdelphij#line 2280 "ntp_parser.c" /* yacc.c:1646 */ 2280290001Sglebius break; 2281290001Sglebius 2282290001Sglebius case 68: 2283310419Sdelphij#line 570 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2284301301Sdelphij { cfgt.auth.revoke = (yyvsp[0].Integer); } 2285310419Sdelphij#line 2286 "ntp_parser.c" /* yacc.c:1646 */ 2286290001Sglebius break; 2287290001Sglebius 2288290001Sglebius case 69: 2289310419Sdelphij#line 572 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2290290001Sglebius { 2291301301Sdelphij cfgt.auth.trusted_key_list = (yyvsp[0].Attr_val_fifo); 2292290001Sglebius 2293290001Sglebius // if (!cfgt.auth.trusted_key_list) 2294290001Sglebius // cfgt.auth.trusted_key_list = $2; 2295290001Sglebius // else 2296290001Sglebius // LINK_SLIST(cfgt.auth.trusted_key_list, $2, link); 2297290001Sglebius } 2298310419Sdelphij#line 2299 "ntp_parser.c" /* yacc.c:1646 */ 2299290001Sglebius break; 2300290001Sglebius 2301290001Sglebius case 70: 2302310419Sdelphij#line 581 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2303301301Sdelphij { cfgt.auth.ntp_signd_socket = (yyvsp[0].String); } 2304310419Sdelphij#line 2305 "ntp_parser.c" /* yacc.c:1646 */ 2305290001Sglebius break; 2306290001Sglebius 2307290001Sglebius case 71: 2308310419Sdelphij#line 586 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2309290001Sglebius { (yyval.Attr_val_fifo) = NULL; } 2310310419Sdelphij#line 2311 "ntp_parser.c" /* yacc.c:1646 */ 2311290001Sglebius break; 2312290001Sglebius 2313290001Sglebius case 72: 2314310419Sdelphij#line 588 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2315290001Sglebius { 2316301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2317301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2318290001Sglebius } 2319310419Sdelphij#line 2320 "ntp_parser.c" /* yacc.c:1646 */ 2320290001Sglebius break; 2321290001Sglebius 2322290001Sglebius case 73: 2323310419Sdelphij#line 596 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2324301301Sdelphij { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } 2325310419Sdelphij#line 2326 "ntp_parser.c" /* yacc.c:1646 */ 2326290001Sglebius break; 2327290001Sglebius 2328290001Sglebius case 74: 2329310419Sdelphij#line 598 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2330290001Sglebius { 2331290001Sglebius (yyval.Attr_val) = NULL; 2332301301Sdelphij cfgt.auth.revoke = (yyvsp[0].Integer); 2333290001Sglebius msyslog(LOG_WARNING, 2334290001Sglebius "'crypto revoke %d' is deprecated, " 2335290001Sglebius "please use 'revoke %d' instead.", 2336290001Sglebius cfgt.auth.revoke, cfgt.auth.revoke); 2337290001Sglebius } 2338310419Sdelphij#line 2339 "ntp_parser.c" /* yacc.c:1646 */ 2339290001Sglebius break; 2340290001Sglebius 2341290001Sglebius case 80: 2342310419Sdelphij#line 623 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2343301301Sdelphij { CONCAT_G_FIFOS(cfgt.orphan_cmds, (yyvsp[0].Attr_val_fifo)); } 2344310419Sdelphij#line 2345 "ntp_parser.c" /* yacc.c:1646 */ 2345290001Sglebius break; 2346290001Sglebius 2347290001Sglebius case 81: 2348310419Sdelphij#line 628 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2349290001Sglebius { 2350301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2351301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2352290001Sglebius } 2353310419Sdelphij#line 2354 "ntp_parser.c" /* yacc.c:1646 */ 2354290001Sglebius break; 2355290001Sglebius 2356290001Sglebius case 82: 2357310419Sdelphij#line 633 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2358290001Sglebius { 2359290001Sglebius (yyval.Attr_val_fifo) = NULL; 2360301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2361290001Sglebius } 2362310419Sdelphij#line 2363 "ntp_parser.c" /* yacc.c:1646 */ 2363290001Sglebius break; 2364290001Sglebius 2365290001Sglebius case 83: 2366310419Sdelphij#line 641 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2367301301Sdelphij { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); } 2368310419Sdelphij#line 2369 "ntp_parser.c" /* yacc.c:1646 */ 2369290001Sglebius break; 2370290001Sglebius 2371290001Sglebius case 84: 2372310419Sdelphij#line 643 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2373301301Sdelphij { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); } 2374310419Sdelphij#line 2375 "ntp_parser.c" /* yacc.c:1646 */ 2375290001Sglebius break; 2376290001Sglebius 2377290001Sglebius case 85: 2378310419Sdelphij#line 645 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2379301301Sdelphij { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); } 2380310419Sdelphij#line 2381 "ntp_parser.c" /* yacc.c:1646 */ 2381290001Sglebius break; 2382290001Sglebius 2383310419Sdelphij case 97: 2384310419Sdelphij#line 672 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2385301301Sdelphij { CONCAT_G_FIFOS(cfgt.stats_list, (yyvsp[0].Int_fifo)); } 2386310419Sdelphij#line 2387 "ntp_parser.c" /* yacc.c:1646 */ 2387290001Sglebius break; 2388290001Sglebius 2389310419Sdelphij case 98: 2390310419Sdelphij#line 674 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2391290001Sglebius { 2392290001Sglebius if (lex_from_file()) { 2393301301Sdelphij cfgt.stats_dir = (yyvsp[0].String); 2394290001Sglebius } else { 2395301301Sdelphij YYFREE((yyvsp[0].String)); 2396290001Sglebius yyerror("statsdir remote configuration ignored"); 2397290001Sglebius } 2398290001Sglebius } 2399310419Sdelphij#line 2400 "ntp_parser.c" /* yacc.c:1646 */ 2400290001Sglebius break; 2401290001Sglebius 2402310419Sdelphij case 99: 2403310419Sdelphij#line 683 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2404290001Sglebius { 2405290001Sglebius filegen_node *fgn; 2406290001Sglebius 2407301301Sdelphij fgn = create_filegen_node((yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo)); 2408290001Sglebius APPEND_G_FIFO(cfgt.filegen_opts, fgn); 2409290001Sglebius } 2410310419Sdelphij#line 2411 "ntp_parser.c" /* yacc.c:1646 */ 2411290001Sglebius break; 2412290001Sglebius 2413310419Sdelphij case 100: 2414310419Sdelphij#line 693 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2415290001Sglebius { 2416301301Sdelphij (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); 2417301301Sdelphij APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 2418290001Sglebius } 2419310419Sdelphij#line 2420 "ntp_parser.c" /* yacc.c:1646 */ 2420290001Sglebius break; 2421290001Sglebius 2422310419Sdelphij case 101: 2423310419Sdelphij#line 698 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2424290001Sglebius { 2425290001Sglebius (yyval.Int_fifo) = NULL; 2426301301Sdelphij APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 2427290001Sglebius } 2428310419Sdelphij#line 2429 "ntp_parser.c" /* yacc.c:1646 */ 2429290001Sglebius break; 2430290001Sglebius 2431310419Sdelphij case 110: 2432310419Sdelphij#line 717 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2433290001Sglebius { (yyval.Attr_val_fifo) = NULL; } 2434310419Sdelphij#line 2435 "ntp_parser.c" /* yacc.c:1646 */ 2435290001Sglebius break; 2436290001Sglebius 2437310419Sdelphij case 111: 2438310419Sdelphij#line 719 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2439290001Sglebius { 2440301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2441301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2442290001Sglebius } 2443310419Sdelphij#line 2444 "ntp_parser.c" /* yacc.c:1646 */ 2444290001Sglebius break; 2445290001Sglebius 2446310419Sdelphij case 112: 2447310419Sdelphij#line 727 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2448290001Sglebius { 2449290001Sglebius if (lex_from_file()) { 2450301301Sdelphij (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); 2451290001Sglebius } else { 2452290001Sglebius (yyval.Attr_val) = NULL; 2453301301Sdelphij YYFREE((yyvsp[0].String)); 2454290001Sglebius yyerror("filegen file remote config ignored"); 2455290001Sglebius } 2456290001Sglebius } 2457310419Sdelphij#line 2458 "ntp_parser.c" /* yacc.c:1646 */ 2458290001Sglebius break; 2459290001Sglebius 2460310419Sdelphij case 113: 2461310419Sdelphij#line 737 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2462290001Sglebius { 2463290001Sglebius if (lex_from_file()) { 2464301301Sdelphij (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); 2465290001Sglebius } else { 2466290001Sglebius (yyval.Attr_val) = NULL; 2467290001Sglebius yyerror("filegen type remote config ignored"); 2468290001Sglebius } 2469290001Sglebius } 2470310419Sdelphij#line 2471 "ntp_parser.c" /* yacc.c:1646 */ 2471290001Sglebius break; 2472290001Sglebius 2473310419Sdelphij case 114: 2474310419Sdelphij#line 746 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2475290001Sglebius { 2476290001Sglebius const char *err; 2477290001Sglebius 2478290001Sglebius if (lex_from_file()) { 2479301301Sdelphij (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); 2480290001Sglebius } else { 2481290001Sglebius (yyval.Attr_val) = NULL; 2482301301Sdelphij if (T_Link == (yyvsp[0].Integer)) 2483290001Sglebius err = "filegen link remote config ignored"; 2484290001Sglebius else 2485290001Sglebius err = "filegen nolink remote config ignored"; 2486290001Sglebius yyerror(err); 2487290001Sglebius } 2488290001Sglebius } 2489310419Sdelphij#line 2490 "ntp_parser.c" /* yacc.c:1646 */ 2490290001Sglebius break; 2491290001Sglebius 2492310419Sdelphij case 115: 2493310419Sdelphij#line 761 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2494301301Sdelphij { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); } 2495310419Sdelphij#line 2496 "ntp_parser.c" /* yacc.c:1646 */ 2496290001Sglebius break; 2497290001Sglebius 2498310419Sdelphij case 127: 2499310419Sdelphij#line 791 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2500290001Sglebius { 2501301301Sdelphij CONCAT_G_FIFOS(cfgt.discard_opts, (yyvsp[0].Attr_val_fifo)); 2502290001Sglebius } 2503310419Sdelphij#line 2504 "ntp_parser.c" /* yacc.c:1646 */ 2504290001Sglebius break; 2505290001Sglebius 2506310419Sdelphij case 128: 2507310419Sdelphij#line 795 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2508290001Sglebius { 2509301301Sdelphij CONCAT_G_FIFOS(cfgt.mru_opts, (yyvsp[0].Attr_val_fifo)); 2510290001Sglebius } 2511310419Sdelphij#line 2512 "ntp_parser.c" /* yacc.c:1646 */ 2512290001Sglebius break; 2513290001Sglebius 2514310419Sdelphij case 129: 2515310419Sdelphij#line 799 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2516290001Sglebius { 2517290001Sglebius restrict_node *rn; 2518290001Sglebius 2519301301Sdelphij rn = create_restrict_node((yyvsp[-1].Address_node), NULL, (yyvsp[0].Int_fifo), 2520290001Sglebius lex_current()->curpos.nline); 2521290001Sglebius APPEND_G_FIFO(cfgt.restrict_opts, rn); 2522290001Sglebius } 2523310419Sdelphij#line 2524 "ntp_parser.c" /* yacc.c:1646 */ 2524290001Sglebius break; 2525290001Sglebius 2526310419Sdelphij case 130: 2527310419Sdelphij#line 807 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2528290001Sglebius { 2529290001Sglebius restrict_node *rn; 2530290001Sglebius 2531301301Sdelphij rn = create_restrict_node((yyvsp[-3].Address_node), (yyvsp[-1].Address_node), (yyvsp[0].Int_fifo), 2532290001Sglebius lex_current()->curpos.nline); 2533290001Sglebius APPEND_G_FIFO(cfgt.restrict_opts, rn); 2534290001Sglebius } 2535310419Sdelphij#line 2536 "ntp_parser.c" /* yacc.c:1646 */ 2536290001Sglebius break; 2537290001Sglebius 2538310419Sdelphij case 131: 2539310419Sdelphij#line 815 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2540290001Sglebius { 2541290001Sglebius restrict_node *rn; 2542290001Sglebius 2543301301Sdelphij rn = create_restrict_node(NULL, NULL, (yyvsp[0].Int_fifo), 2544290001Sglebius lex_current()->curpos.nline); 2545290001Sglebius APPEND_G_FIFO(cfgt.restrict_opts, rn); 2546290001Sglebius } 2547310419Sdelphij#line 2548 "ntp_parser.c" /* yacc.c:1646 */ 2548290001Sglebius break; 2549290001Sglebius 2550310419Sdelphij case 132: 2551310419Sdelphij#line 823 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2552290001Sglebius { 2553290001Sglebius restrict_node *rn; 2554290001Sglebius 2555290001Sglebius rn = create_restrict_node( 2556290001Sglebius create_address_node( 2557290001Sglebius estrdup("0.0.0.0"), 2558290001Sglebius AF_INET), 2559290001Sglebius create_address_node( 2560290001Sglebius estrdup("0.0.0.0"), 2561290001Sglebius AF_INET), 2562301301Sdelphij (yyvsp[0].Int_fifo), 2563290001Sglebius lex_current()->curpos.nline); 2564290001Sglebius APPEND_G_FIFO(cfgt.restrict_opts, rn); 2565290001Sglebius } 2566310419Sdelphij#line 2567 "ntp_parser.c" /* yacc.c:1646 */ 2567290001Sglebius break; 2568290001Sglebius 2569310419Sdelphij case 133: 2570310419Sdelphij#line 838 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2571290001Sglebius { 2572290001Sglebius restrict_node *rn; 2573290001Sglebius 2574290001Sglebius rn = create_restrict_node( 2575290001Sglebius create_address_node( 2576290001Sglebius estrdup("::"), 2577290001Sglebius AF_INET6), 2578290001Sglebius create_address_node( 2579290001Sglebius estrdup("::"), 2580290001Sglebius AF_INET6), 2581301301Sdelphij (yyvsp[0].Int_fifo), 2582290001Sglebius lex_current()->curpos.nline); 2583290001Sglebius APPEND_G_FIFO(cfgt.restrict_opts, rn); 2584290001Sglebius } 2585310419Sdelphij#line 2586 "ntp_parser.c" /* yacc.c:1646 */ 2586290001Sglebius break; 2587290001Sglebius 2588310419Sdelphij case 134: 2589310419Sdelphij#line 853 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2590290001Sglebius { 2591290001Sglebius restrict_node * rn; 2592290001Sglebius 2593301301Sdelphij APPEND_G_FIFO((yyvsp[0].Int_fifo), create_int_node((yyvsp[-1].Integer))); 2594290001Sglebius rn = create_restrict_node( 2595301301Sdelphij NULL, NULL, (yyvsp[0].Int_fifo), lex_current()->curpos.nline); 2596290001Sglebius APPEND_G_FIFO(cfgt.restrict_opts, rn); 2597290001Sglebius } 2598310419Sdelphij#line 2599 "ntp_parser.c" /* yacc.c:1646 */ 2599290001Sglebius break; 2600290001Sglebius 2601310419Sdelphij case 135: 2602310419Sdelphij#line 865 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2603290001Sglebius { (yyval.Int_fifo) = NULL; } 2604310419Sdelphij#line 2605 "ntp_parser.c" /* yacc.c:1646 */ 2605290001Sglebius break; 2606290001Sglebius 2607310419Sdelphij case 136: 2608310419Sdelphij#line 867 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2609290001Sglebius { 2610301301Sdelphij (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); 2611301301Sdelphij APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 2612290001Sglebius } 2613310419Sdelphij#line 2614 "ntp_parser.c" /* yacc.c:1646 */ 2614290001Sglebius break; 2615290001Sglebius 2616310419Sdelphij case 152: 2617310419Sdelphij#line 893 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2618290001Sglebius { 2619301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2620301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2621290001Sglebius } 2622310419Sdelphij#line 2623 "ntp_parser.c" /* yacc.c:1646 */ 2623290001Sglebius break; 2624290001Sglebius 2625310419Sdelphij case 153: 2626310419Sdelphij#line 898 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2627290001Sglebius { 2628290001Sglebius (yyval.Attr_val_fifo) = NULL; 2629301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2630290001Sglebius } 2631310419Sdelphij#line 2632 "ntp_parser.c" /* yacc.c:1646 */ 2632290001Sglebius break; 2633290001Sglebius 2634310419Sdelphij case 154: 2635310419Sdelphij#line 906 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2636301301Sdelphij { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2637310419Sdelphij#line 2638 "ntp_parser.c" /* yacc.c:1646 */ 2638290001Sglebius break; 2639290001Sglebius 2640310419Sdelphij case 158: 2641310419Sdelphij#line 917 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2642290001Sglebius { 2643301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2644301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2645290001Sglebius } 2646310419Sdelphij#line 2647 "ntp_parser.c" /* yacc.c:1646 */ 2647290001Sglebius break; 2648290001Sglebius 2649310419Sdelphij case 159: 2650310419Sdelphij#line 922 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2651290001Sglebius { 2652290001Sglebius (yyval.Attr_val_fifo) = NULL; 2653301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2654290001Sglebius } 2655310419Sdelphij#line 2656 "ntp_parser.c" /* yacc.c:1646 */ 2656290001Sglebius break; 2657290001Sglebius 2658310419Sdelphij case 160: 2659310419Sdelphij#line 930 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2660301301Sdelphij { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2661310419Sdelphij#line 2662 "ntp_parser.c" /* yacc.c:1646 */ 2662290001Sglebius break; 2663290001Sglebius 2664310419Sdelphij case 169: 2665310419Sdelphij#line 950 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2666290001Sglebius { 2667290001Sglebius addr_opts_node *aon; 2668290001Sglebius 2669301301Sdelphij aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo)); 2670290001Sglebius APPEND_G_FIFO(cfgt.fudge, aon); 2671290001Sglebius } 2672310419Sdelphij#line 2673 "ntp_parser.c" /* yacc.c:1646 */ 2673290001Sglebius break; 2674290001Sglebius 2675310419Sdelphij case 170: 2676310419Sdelphij#line 960 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2677290001Sglebius { 2678301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2679301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2680290001Sglebius } 2681310419Sdelphij#line 2682 "ntp_parser.c" /* yacc.c:1646 */ 2682290001Sglebius break; 2683290001Sglebius 2684310419Sdelphij case 171: 2685310419Sdelphij#line 965 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2686290001Sglebius { 2687290001Sglebius (yyval.Attr_val_fifo) = NULL; 2688301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2689290001Sglebius } 2690310419Sdelphij#line 2691 "ntp_parser.c" /* yacc.c:1646 */ 2691290001Sglebius break; 2692290001Sglebius 2693310419Sdelphij case 172: 2694310419Sdelphij#line 973 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2695301301Sdelphij { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); } 2696310419Sdelphij#line 2697 "ntp_parser.c" /* yacc.c:1646 */ 2697290001Sglebius break; 2698290001Sglebius 2699310419Sdelphij case 173: 2700310419Sdelphij#line 975 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2701301301Sdelphij { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2702310419Sdelphij#line 2703 "ntp_parser.c" /* yacc.c:1646 */ 2703290001Sglebius break; 2704290001Sglebius 2705310419Sdelphij case 174: 2706310419Sdelphij#line 977 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2707293896Sglebius { 2708301301Sdelphij if ((yyvsp[0].Integer) >= 0 && (yyvsp[0].Integer) <= 16) { 2709301301Sdelphij (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); 2710293896Sglebius } else { 2711293896Sglebius (yyval.Attr_val) = NULL; 2712293896Sglebius yyerror("fudge factor: stratum value not in [0..16], ignored"); 2713293896Sglebius } 2714293896Sglebius } 2715310419Sdelphij#line 2716 "ntp_parser.c" /* yacc.c:1646 */ 2716290001Sglebius break; 2717290001Sglebius 2718310419Sdelphij case 175: 2719310419Sdelphij#line 986 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2720301301Sdelphij { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } 2721310419Sdelphij#line 2722 "ntp_parser.c" /* yacc.c:1646 */ 2722290001Sglebius break; 2723290001Sglebius 2724310419Sdelphij case 176: 2725310419Sdelphij#line 988 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2726301301Sdelphij { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } 2727310419Sdelphij#line 2728 "ntp_parser.c" /* yacc.c:1646 */ 2728290001Sglebius break; 2729290001Sglebius 2730310419Sdelphij case 183: 2731310419Sdelphij#line 1009 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2732301301Sdelphij { CONCAT_G_FIFOS(cfgt.rlimit, (yyvsp[0].Attr_val_fifo)); } 2733310419Sdelphij#line 2734 "ntp_parser.c" /* yacc.c:1646 */ 2734290001Sglebius break; 2735290001Sglebius 2736310419Sdelphij case 184: 2737310419Sdelphij#line 1014 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2738290001Sglebius { 2739301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2740301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2741290001Sglebius } 2742310419Sdelphij#line 2743 "ntp_parser.c" /* yacc.c:1646 */ 2743290001Sglebius break; 2744290001Sglebius 2745310419Sdelphij case 185: 2746310419Sdelphij#line 1019 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2747290001Sglebius { 2748290001Sglebius (yyval.Attr_val_fifo) = NULL; 2749301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2750290001Sglebius } 2751310419Sdelphij#line 2752 "ntp_parser.c" /* yacc.c:1646 */ 2752290001Sglebius break; 2753290001Sglebius 2754310419Sdelphij case 186: 2755310419Sdelphij#line 1027 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2756301301Sdelphij { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 2757310419Sdelphij#line 2758 "ntp_parser.c" /* yacc.c:1646 */ 2758290001Sglebius break; 2759290001Sglebius 2760310419Sdelphij case 190: 2761310419Sdelphij#line 1043 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2762301301Sdelphij { CONCAT_G_FIFOS(cfgt.enable_opts, (yyvsp[0].Attr_val_fifo)); } 2763310419Sdelphij#line 2764 "ntp_parser.c" /* yacc.c:1646 */ 2764290001Sglebius break; 2765290001Sglebius 2766310419Sdelphij case 191: 2767310419Sdelphij#line 1045 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2768301301Sdelphij { CONCAT_G_FIFOS(cfgt.disable_opts, (yyvsp[0].Attr_val_fifo)); } 2769310419Sdelphij#line 2770 "ntp_parser.c" /* yacc.c:1646 */ 2770290001Sglebius break; 2771290001Sglebius 2772310419Sdelphij case 192: 2773310419Sdelphij#line 1050 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2774290001Sglebius { 2775301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2776301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2777290001Sglebius } 2778310419Sdelphij#line 2779 "ntp_parser.c" /* yacc.c:1646 */ 2779290001Sglebius break; 2780290001Sglebius 2781310419Sdelphij case 193: 2782310419Sdelphij#line 1055 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2783290001Sglebius { 2784290001Sglebius (yyval.Attr_val_fifo) = NULL; 2785301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2786290001Sglebius } 2787310419Sdelphij#line 2788 "ntp_parser.c" /* yacc.c:1646 */ 2788290001Sglebius break; 2789290001Sglebius 2790310419Sdelphij case 194: 2791310419Sdelphij#line 1063 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2792301301Sdelphij { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); } 2793310419Sdelphij#line 2794 "ntp_parser.c" /* yacc.c:1646 */ 2794290001Sglebius break; 2795290001Sglebius 2796310419Sdelphij case 195: 2797310419Sdelphij#line 1065 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2798290001Sglebius { 2799290001Sglebius if (lex_from_file()) { 2800301301Sdelphij (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); 2801290001Sglebius } else { 2802290001Sglebius char err_str[128]; 2803290001Sglebius 2804290001Sglebius (yyval.Attr_val) = NULL; 2805290001Sglebius snprintf(err_str, sizeof(err_str), 2806290001Sglebius "enable/disable %s remote configuration ignored", 2807301301Sdelphij keyword((yyvsp[0].Integer))); 2808290001Sglebius yyerror(err_str); 2809290001Sglebius } 2810290001Sglebius } 2811310419Sdelphij#line 2812 "ntp_parser.c" /* yacc.c:1646 */ 2812290001Sglebius break; 2813290001Sglebius 2814310419Sdelphij case 208: 2815310419Sdelphij#line 1104 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2816301301Sdelphij { CONCAT_G_FIFOS(cfgt.tinker, (yyvsp[0].Attr_val_fifo)); } 2817310419Sdelphij#line 2818 "ntp_parser.c" /* yacc.c:1646 */ 2818290001Sglebius break; 2819290001Sglebius 2820310419Sdelphij case 209: 2821310419Sdelphij#line 1109 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2822290001Sglebius { 2823301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 2824301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2825290001Sglebius } 2826310419Sdelphij#line 2827 "ntp_parser.c" /* yacc.c:1646 */ 2827290001Sglebius break; 2828290001Sglebius 2829310419Sdelphij case 210: 2830310419Sdelphij#line 1114 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2831290001Sglebius { 2832290001Sglebius (yyval.Attr_val_fifo) = NULL; 2833301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 2834290001Sglebius } 2835310419Sdelphij#line 2836 "ntp_parser.c" /* yacc.c:1646 */ 2836290001Sglebius break; 2837290001Sglebius 2838310419Sdelphij case 211: 2839310419Sdelphij#line 1122 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2840301301Sdelphij { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); } 2841310419Sdelphij#line 2842 "ntp_parser.c" /* yacc.c:1646 */ 2842290001Sglebius break; 2843290001Sglebius 2844310419Sdelphij case 224: 2845310419Sdelphij#line 1147 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2846290001Sglebius { 2847290001Sglebius attr_val *av; 2848290001Sglebius 2849301301Sdelphij av = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); 2850290001Sglebius APPEND_G_FIFO(cfgt.vars, av); 2851290001Sglebius } 2852310419Sdelphij#line 2853 "ntp_parser.c" /* yacc.c:1646 */ 2853290001Sglebius break; 2854290001Sglebius 2855310419Sdelphij case 225: 2856310419Sdelphij#line 1154 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2857290001Sglebius { 2858290001Sglebius attr_val *av; 2859290001Sglebius 2860301301Sdelphij av = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); 2861290001Sglebius APPEND_G_FIFO(cfgt.vars, av); 2862290001Sglebius } 2863310419Sdelphij#line 2864 "ntp_parser.c" /* yacc.c:1646 */ 2864290001Sglebius break; 2865290001Sglebius 2866310419Sdelphij case 226: 2867310419Sdelphij#line 1161 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2868290001Sglebius { 2869290001Sglebius attr_val *av; 2870290001Sglebius 2871301301Sdelphij av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); 2872290001Sglebius APPEND_G_FIFO(cfgt.vars, av); 2873290001Sglebius } 2874310419Sdelphij#line 2875 "ntp_parser.c" /* yacc.c:1646 */ 2875290001Sglebius break; 2876290001Sglebius 2877310419Sdelphij case 227: 2878310419Sdelphij#line 1168 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2879290001Sglebius { 2880290001Sglebius char error_text[64]; 2881290001Sglebius attr_val *av; 2882290001Sglebius 2883290001Sglebius if (lex_from_file()) { 2884301301Sdelphij av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); 2885290001Sglebius APPEND_G_FIFO(cfgt.vars, av); 2886290001Sglebius } else { 2887301301Sdelphij YYFREE((yyvsp[0].String)); 2888290001Sglebius snprintf(error_text, sizeof(error_text), 2889290001Sglebius "%s remote config ignored", 2890301301Sdelphij keyword((yyvsp[-1].Integer))); 2891290001Sglebius yyerror(error_text); 2892290001Sglebius } 2893290001Sglebius } 2894310419Sdelphij#line 2895 "ntp_parser.c" /* yacc.c:1646 */ 2895290001Sglebius break; 2896290001Sglebius 2897310419Sdelphij case 228: 2898310419Sdelphij#line 1184 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2899290001Sglebius { 2900290001Sglebius if (!lex_from_file()) { 2901301301Sdelphij YYFREE((yyvsp[-1].String)); /* avoid leak */ 2902290001Sglebius yyerror("remote includefile ignored"); 2903290001Sglebius break; 2904290001Sglebius } 2905290001Sglebius if (lex_level() > MAXINCLUDELEVEL) { 2906290001Sglebius fprintf(stderr, "getconfig: Maximum include file level exceeded.\n"); 2907290001Sglebius msyslog(LOG_ERR, "getconfig: Maximum include file level exceeded."); 2908290001Sglebius } else { 2909301301Sdelphij const char * path = FindConfig((yyvsp[-1].String)); /* might return $2! */ 2910290001Sglebius if (!lex_push_file(path, "r")) { 2911290001Sglebius fprintf(stderr, "getconfig: Couldn't open <%s>\n", path); 2912290001Sglebius msyslog(LOG_ERR, "getconfig: Couldn't open <%s>", path); 2913290001Sglebius } 2914290001Sglebius } 2915301301Sdelphij YYFREE((yyvsp[-1].String)); /* avoid leak */ 2916290001Sglebius } 2917310419Sdelphij#line 2918 "ntp_parser.c" /* yacc.c:1646 */ 2918290001Sglebius break; 2919290001Sglebius 2920301301Sdelphij case 229: 2921301301Sdelphij#line 1203 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2922310419Sdelphij { lex_flush_stack(); } 2923310419Sdelphij#line 2924 "ntp_parser.c" /* yacc.c:1646 */ 2924290001Sglebius break; 2925290001Sglebius 2926294905Sdelphij case 230: 2927301301Sdelphij#line 1205 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2928310419Sdelphij { /* see drift_parm below for actions */ } 2929310419Sdelphij#line 2930 "ntp_parser.c" /* yacc.c:1646 */ 2930290001Sglebius break; 2931290001Sglebius 2932294905Sdelphij case 231: 2933301301Sdelphij#line 1207 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2934310419Sdelphij { CONCAT_G_FIFOS(cfgt.logconfig, (yyvsp[0].Attr_val_fifo)); } 2935310419Sdelphij#line 2936 "ntp_parser.c" /* yacc.c:1646 */ 2936290001Sglebius break; 2937290001Sglebius 2938294905Sdelphij case 232: 2939301301Sdelphij#line 1209 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2940310419Sdelphij { CONCAT_G_FIFOS(cfgt.phone, (yyvsp[0].String_fifo)); } 2941310419Sdelphij#line 2942 "ntp_parser.c" /* yacc.c:1646 */ 2942301301Sdelphij break; 2943301301Sdelphij 2944301301Sdelphij case 233: 2945301301Sdelphij#line 1211 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2946310419Sdelphij { APPEND_G_FIFO(cfgt.setvar, (yyvsp[0].Set_var)); } 2947310419Sdelphij#line 2948 "ntp_parser.c" /* yacc.c:1646 */ 2948310419Sdelphij break; 2949310419Sdelphij 2950310419Sdelphij case 234: 2951310419Sdelphij#line 1213 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2952290001Sglebius { 2953290001Sglebius addr_opts_node *aon; 2954290001Sglebius 2955301301Sdelphij aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo)); 2956290001Sglebius APPEND_G_FIFO(cfgt.trap, aon); 2957290001Sglebius } 2958310419Sdelphij#line 2959 "ntp_parser.c" /* yacc.c:1646 */ 2959290001Sglebius break; 2960290001Sglebius 2961310419Sdelphij case 235: 2962310419Sdelphij#line 1220 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2963301301Sdelphij { CONCAT_G_FIFOS(cfgt.ttl, (yyvsp[0].Attr_val_fifo)); } 2964310419Sdelphij#line 2965 "ntp_parser.c" /* yacc.c:1646 */ 2965290001Sglebius break; 2966290001Sglebius 2967310419Sdelphij case 240: 2968310419Sdelphij#line 1235 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2969290001Sglebius { 2970290001Sglebius#ifndef LEAP_SMEAR 2971290001Sglebius yyerror("Built without LEAP_SMEAR support."); 2972290001Sglebius#endif 2973290001Sglebius } 2974310419Sdelphij#line 2975 "ntp_parser.c" /* yacc.c:1646 */ 2975290001Sglebius break; 2976290001Sglebius 2977310419Sdelphij case 246: 2978310419Sdelphij#line 1255 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2979290001Sglebius { 2980290001Sglebius if (lex_from_file()) { 2981290001Sglebius attr_val *av; 2982301301Sdelphij av = create_attr_sval(T_Driftfile, (yyvsp[0].String)); 2983290001Sglebius APPEND_G_FIFO(cfgt.vars, av); 2984290001Sglebius } else { 2985301301Sdelphij YYFREE((yyvsp[0].String)); 2986290001Sglebius yyerror("driftfile remote configuration ignored"); 2987290001Sglebius } 2988290001Sglebius } 2989310419Sdelphij#line 2990 "ntp_parser.c" /* yacc.c:1646 */ 2990290001Sglebius break; 2991290001Sglebius 2992310419Sdelphij case 247: 2993310419Sdelphij#line 1266 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 2994290001Sglebius { 2995290001Sglebius if (lex_from_file()) { 2996290001Sglebius attr_val *av; 2997301301Sdelphij av = create_attr_sval(T_Driftfile, (yyvsp[-1].String)); 2998290001Sglebius APPEND_G_FIFO(cfgt.vars, av); 2999301301Sdelphij av = create_attr_dval(T_WanderThreshold, (yyvsp[0].Double)); 3000290001Sglebius APPEND_G_FIFO(cfgt.vars, av); 3001290001Sglebius } else { 3002301301Sdelphij YYFREE((yyvsp[-1].String)); 3003290001Sglebius yyerror("driftfile remote configuration ignored"); 3004290001Sglebius } 3005290001Sglebius } 3006310419Sdelphij#line 3007 "ntp_parser.c" /* yacc.c:1646 */ 3007290001Sglebius break; 3008290001Sglebius 3009310419Sdelphij case 248: 3010310419Sdelphij#line 1279 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3011290001Sglebius { 3012290001Sglebius if (lex_from_file()) { 3013290001Sglebius attr_val *av; 3014290001Sglebius av = create_attr_sval(T_Driftfile, estrdup("")); 3015290001Sglebius APPEND_G_FIFO(cfgt.vars, av); 3016290001Sglebius } else { 3017290001Sglebius yyerror("driftfile remote configuration ignored"); 3018290001Sglebius } 3019290001Sglebius } 3020310419Sdelphij#line 3021 "ntp_parser.c" /* yacc.c:1646 */ 3021290001Sglebius break; 3022290001Sglebius 3023310419Sdelphij case 249: 3024310419Sdelphij#line 1292 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3025301301Sdelphij { (yyval.Set_var) = create_setvar_node((yyvsp[-3].String), (yyvsp[-1].String), (yyvsp[0].Integer)); } 3026310419Sdelphij#line 3027 "ntp_parser.c" /* yacc.c:1646 */ 3027290001Sglebius break; 3028290001Sglebius 3029310419Sdelphij case 251: 3030310419Sdelphij#line 1298 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3031290001Sglebius { (yyval.Integer) = 0; } 3032310419Sdelphij#line 3033 "ntp_parser.c" /* yacc.c:1646 */ 3033290001Sglebius break; 3034290001Sglebius 3035310419Sdelphij case 252: 3036310419Sdelphij#line 1303 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3037290001Sglebius { (yyval.Attr_val_fifo) = NULL; } 3038310419Sdelphij#line 3039 "ntp_parser.c" /* yacc.c:1646 */ 3039290001Sglebius break; 3040290001Sglebius 3041310419Sdelphij case 253: 3042310419Sdelphij#line 1305 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3043290001Sglebius { 3044301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 3045301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 3046290001Sglebius } 3047310419Sdelphij#line 3048 "ntp_parser.c" /* yacc.c:1646 */ 3048290001Sglebius break; 3049290001Sglebius 3050310419Sdelphij case 254: 3051310419Sdelphij#line 1313 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3052301301Sdelphij { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } 3053310419Sdelphij#line 3054 "ntp_parser.c" /* yacc.c:1646 */ 3054290001Sglebius break; 3055290001Sglebius 3056310419Sdelphij case 255: 3057310419Sdelphij#line 1315 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3058290001Sglebius { 3059301301Sdelphij (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), estrdup((yyvsp[0].Address_node)->address)); 3060301301Sdelphij destroy_address_node((yyvsp[0].Address_node)); 3061290001Sglebius } 3062310419Sdelphij#line 3063 "ntp_parser.c" /* yacc.c:1646 */ 3063290001Sglebius break; 3064290001Sglebius 3065310419Sdelphij case 256: 3066310419Sdelphij#line 1323 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3067290001Sglebius { 3068301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 3069301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 3070290001Sglebius } 3071310419Sdelphij#line 3072 "ntp_parser.c" /* yacc.c:1646 */ 3072290001Sglebius break; 3073290001Sglebius 3074310419Sdelphij case 257: 3075310419Sdelphij#line 1328 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3076290001Sglebius { 3077290001Sglebius (yyval.Attr_val_fifo) = NULL; 3078301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 3079290001Sglebius } 3080310419Sdelphij#line 3081 "ntp_parser.c" /* yacc.c:1646 */ 3081290001Sglebius break; 3082290001Sglebius 3083310419Sdelphij case 258: 3084310419Sdelphij#line 1336 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3085290001Sglebius { 3086290001Sglebius char prefix; 3087290001Sglebius char * type; 3088290001Sglebius 3089301301Sdelphij switch ((yyvsp[0].String)[0]) { 3090290001Sglebius 3091290001Sglebius case '+': 3092290001Sglebius case '-': 3093290001Sglebius case '=': 3094301301Sdelphij prefix = (yyvsp[0].String)[0]; 3095301301Sdelphij type = (yyvsp[0].String) + 1; 3096290001Sglebius break; 3097290001Sglebius 3098290001Sglebius default: 3099290001Sglebius prefix = '='; 3100301301Sdelphij type = (yyvsp[0].String); 3101290001Sglebius } 3102290001Sglebius 3103290001Sglebius (yyval.Attr_val) = create_attr_sval(prefix, estrdup(type)); 3104301301Sdelphij YYFREE((yyvsp[0].String)); 3105290001Sglebius } 3106310419Sdelphij#line 3107 "ntp_parser.c" /* yacc.c:1646 */ 3107290001Sglebius break; 3108290001Sglebius 3109310419Sdelphij case 259: 3110310419Sdelphij#line 1361 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3111290001Sglebius { 3112290001Sglebius nic_rule_node *nrn; 3113290001Sglebius 3114301301Sdelphij nrn = create_nic_rule_node((yyvsp[0].Integer), NULL, (yyvsp[-1].Integer)); 3115290001Sglebius APPEND_G_FIFO(cfgt.nic_rules, nrn); 3116290001Sglebius } 3117310419Sdelphij#line 3118 "ntp_parser.c" /* yacc.c:1646 */ 3118290001Sglebius break; 3119290001Sglebius 3120310419Sdelphij case 260: 3121310419Sdelphij#line 1368 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3122290001Sglebius { 3123290001Sglebius nic_rule_node *nrn; 3124290001Sglebius 3125301301Sdelphij nrn = create_nic_rule_node(0, (yyvsp[0].String), (yyvsp[-1].Integer)); 3126290001Sglebius APPEND_G_FIFO(cfgt.nic_rules, nrn); 3127290001Sglebius } 3128310419Sdelphij#line 3129 "ntp_parser.c" /* yacc.c:1646 */ 3129290001Sglebius break; 3130290001Sglebius 3131310419Sdelphij case 270: 3132310419Sdelphij#line 1396 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3133301301Sdelphij { CONCAT_G_FIFOS(cfgt.reset_counters, (yyvsp[0].Int_fifo)); } 3134310419Sdelphij#line 3135 "ntp_parser.c" /* yacc.c:1646 */ 3135290001Sglebius break; 3136290001Sglebius 3137310419Sdelphij case 271: 3138310419Sdelphij#line 1401 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3139290001Sglebius { 3140301301Sdelphij (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); 3141301301Sdelphij APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 3142290001Sglebius } 3143310419Sdelphij#line 3144 "ntp_parser.c" /* yacc.c:1646 */ 3144290001Sglebius break; 3145290001Sglebius 3146310419Sdelphij case 272: 3147310419Sdelphij#line 1406 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3148290001Sglebius { 3149301301Sdelphij (yyval.Int_fifo) = NULL; 3150301301Sdelphij APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); 3151290001Sglebius } 3152310419Sdelphij#line 3153 "ntp_parser.c" /* yacc.c:1646 */ 3153290001Sglebius break; 3154290001Sglebius 3155310419Sdelphij case 280: 3156310419Sdelphij#line 1430 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3157290001Sglebius { 3158301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 3159301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer))); 3160290001Sglebius } 3161310419Sdelphij#line 3162 "ntp_parser.c" /* yacc.c:1646 */ 3162290001Sglebius break; 3163290001Sglebius 3164310419Sdelphij case 281: 3165310419Sdelphij#line 1435 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3166290001Sglebius { 3167301301Sdelphij (yyval.Attr_val_fifo) = NULL; 3168301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer))); 3169290001Sglebius } 3170310419Sdelphij#line 3171 "ntp_parser.c" /* yacc.c:1646 */ 3171290001Sglebius break; 3172290001Sglebius 3173310419Sdelphij case 282: 3174310419Sdelphij#line 1443 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3175290001Sglebius { 3176301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); 3177301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 3178290001Sglebius } 3179310419Sdelphij#line 3180 "ntp_parser.c" /* yacc.c:1646 */ 3180290001Sglebius break; 3181290001Sglebius 3182310419Sdelphij case 283: 3183310419Sdelphij#line 1448 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3184301301Sdelphij { 3185301301Sdelphij (yyval.Attr_val_fifo) = NULL; 3186301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); 3187301301Sdelphij } 3188310419Sdelphij#line 3189 "ntp_parser.c" /* yacc.c:1646 */ 3189290001Sglebius break; 3190290001Sglebius 3191310419Sdelphij case 284: 3192310419Sdelphij#line 1456 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3193301301Sdelphij { (yyval.Attr_val) = create_attr_ival('i', (yyvsp[0].Integer)); } 3194310419Sdelphij#line 3195 "ntp_parser.c" /* yacc.c:1646 */ 3195290001Sglebius break; 3196290001Sglebius 3197310419Sdelphij case 286: 3198310419Sdelphij#line 1462 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3199301301Sdelphij { (yyval.Attr_val) = create_attr_rangeval('-', (yyvsp[-3].Integer), (yyvsp[-1].Integer)); } 3200310419Sdelphij#line 3201 "ntp_parser.c" /* yacc.c:1646 */ 3201290001Sglebius break; 3202290001Sglebius 3203310419Sdelphij case 287: 3204310419Sdelphij#line 1467 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3205290001Sglebius { 3206301301Sdelphij (yyval.String_fifo) = (yyvsp[-1].String_fifo); 3207301301Sdelphij APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String))); 3208290001Sglebius } 3209310419Sdelphij#line 3210 "ntp_parser.c" /* yacc.c:1646 */ 3210290001Sglebius break; 3211290001Sglebius 3212310419Sdelphij case 288: 3213310419Sdelphij#line 1472 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3214290001Sglebius { 3215301301Sdelphij (yyval.String_fifo) = NULL; 3216301301Sdelphij APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String))); 3217290001Sglebius } 3218310419Sdelphij#line 3219 "ntp_parser.c" /* yacc.c:1646 */ 3219290001Sglebius break; 3220290001Sglebius 3221310419Sdelphij case 289: 3222310419Sdelphij#line 1480 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3223290001Sglebius { 3224301301Sdelphij (yyval.Address_fifo) = (yyvsp[-1].Address_fifo); 3225301301Sdelphij APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node)); 3226290001Sglebius } 3227310419Sdelphij#line 3228 "ntp_parser.c" /* yacc.c:1646 */ 3228290001Sglebius break; 3229290001Sglebius 3230310419Sdelphij case 290: 3231310419Sdelphij#line 1485 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3232290001Sglebius { 3233301301Sdelphij (yyval.Address_fifo) = NULL; 3234301301Sdelphij APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node)); 3235301301Sdelphij } 3236310419Sdelphij#line 3237 "ntp_parser.c" /* yacc.c:1646 */ 3237301301Sdelphij break; 3238301301Sdelphij 3239310419Sdelphij case 291: 3240310419Sdelphij#line 1493 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3241301301Sdelphij { 3242301301Sdelphij if ((yyvsp[0].Integer) != 0 && (yyvsp[0].Integer) != 1) { 3243290001Sglebius yyerror("Integer value is not boolean (0 or 1). Assuming 1"); 3244290001Sglebius (yyval.Integer) = 1; 3245290001Sglebius } else { 3246301301Sdelphij (yyval.Integer) = (yyvsp[0].Integer); 3247290001Sglebius } 3248290001Sglebius } 3249310419Sdelphij#line 3250 "ntp_parser.c" /* yacc.c:1646 */ 3250290001Sglebius break; 3251290001Sglebius 3252310419Sdelphij case 292: 3253310419Sdelphij#line 1501 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3254290001Sglebius { (yyval.Integer) = 1; } 3255310419Sdelphij#line 3256 "ntp_parser.c" /* yacc.c:1646 */ 3256290001Sglebius break; 3257290001Sglebius 3258310419Sdelphij case 293: 3259310419Sdelphij#line 1502 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3260290001Sglebius { (yyval.Integer) = 0; } 3261310419Sdelphij#line 3262 "ntp_parser.c" /* yacc.c:1646 */ 3262290001Sglebius break; 3263290001Sglebius 3264310419Sdelphij case 294: 3265310419Sdelphij#line 1506 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3266301301Sdelphij { (yyval.Double) = (double)(yyvsp[0].Integer); } 3267310419Sdelphij#line 3268 "ntp_parser.c" /* yacc.c:1646 */ 3268290001Sglebius break; 3269290001Sglebius 3270310419Sdelphij case 296: 3271310419Sdelphij#line 1517 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3272290001Sglebius { 3273290001Sglebius sim_node *sn; 3274290001Sglebius 3275301301Sdelphij sn = create_sim_node((yyvsp[-2].Attr_val_fifo), (yyvsp[-1].Sim_server_fifo)); 3276290001Sglebius APPEND_G_FIFO(cfgt.sim_details, sn); 3277290001Sglebius 3278290001Sglebius /* Revert from ; to \n for end-of-command */ 3279290001Sglebius old_config_style = 1; 3280290001Sglebius } 3281310419Sdelphij#line 3282 "ntp_parser.c" /* yacc.c:1646 */ 3282290001Sglebius break; 3283290001Sglebius 3284310419Sdelphij case 297: 3285310419Sdelphij#line 1534 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3286290001Sglebius { old_config_style = 0; } 3287310419Sdelphij#line 3288 "ntp_parser.c" /* yacc.c:1646 */ 3288290001Sglebius break; 3289290001Sglebius 3290310419Sdelphij case 298: 3291310419Sdelphij#line 1539 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3292290001Sglebius { 3293301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo); 3294301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); 3295290001Sglebius } 3296310419Sdelphij#line 3297 "ntp_parser.c" /* yacc.c:1646 */ 3297290001Sglebius break; 3298290001Sglebius 3299310419Sdelphij case 299: 3300310419Sdelphij#line 1544 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3301290001Sglebius { 3302290001Sglebius (yyval.Attr_val_fifo) = NULL; 3303301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); 3304290001Sglebius } 3305310419Sdelphij#line 3306 "ntp_parser.c" /* yacc.c:1646 */ 3306290001Sglebius break; 3307290001Sglebius 3308310419Sdelphij case 300: 3309310419Sdelphij#line 1552 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3310301301Sdelphij { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); } 3311310419Sdelphij#line 3312 "ntp_parser.c" /* yacc.c:1646 */ 3312290001Sglebius break; 3313290001Sglebius 3314310419Sdelphij case 303: 3315310419Sdelphij#line 1562 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3316290001Sglebius { 3317301301Sdelphij (yyval.Sim_server_fifo) = (yyvsp[-1].Sim_server_fifo); 3318301301Sdelphij APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server)); 3319290001Sglebius } 3320310419Sdelphij#line 3321 "ntp_parser.c" /* yacc.c:1646 */ 3321290001Sglebius break; 3322290001Sglebius 3323310419Sdelphij case 304: 3324310419Sdelphij#line 1567 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3325290001Sglebius { 3326290001Sglebius (yyval.Sim_server_fifo) = NULL; 3327301301Sdelphij APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server)); 3328290001Sglebius } 3329310419Sdelphij#line 3330 "ntp_parser.c" /* yacc.c:1646 */ 3330290001Sglebius break; 3331290001Sglebius 3332310419Sdelphij case 305: 3333310419Sdelphij#line 1575 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3334301301Sdelphij { (yyval.Sim_server) = ONLY_SIM(create_sim_server((yyvsp[-4].Address_node), (yyvsp[-2].Double), (yyvsp[-1].Sim_script_fifo))); } 3335310419Sdelphij#line 3336 "ntp_parser.c" /* yacc.c:1646 */ 3336290001Sglebius break; 3337290001Sglebius 3338310419Sdelphij case 306: 3339310419Sdelphij#line 1580 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3340301301Sdelphij { (yyval.Double) = (yyvsp[-1].Double); } 3341310419Sdelphij#line 3342 "ntp_parser.c" /* yacc.c:1646 */ 3342290001Sglebius break; 3343290001Sglebius 3344310419Sdelphij case 307: 3345310419Sdelphij#line 1585 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3346301301Sdelphij { (yyval.Address_node) = (yyvsp[0].Address_node); } 3347310419Sdelphij#line 3348 "ntp_parser.c" /* yacc.c:1646 */ 3348301301Sdelphij break; 3349301301Sdelphij 3350310419Sdelphij case 308: 3351310419Sdelphij#line 1590 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3352290001Sglebius { 3353301301Sdelphij (yyval.Sim_script_fifo) = (yyvsp[-1].Sim_script_fifo); 3354301301Sdelphij APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script)); 3355290001Sglebius } 3356310419Sdelphij#line 3357 "ntp_parser.c" /* yacc.c:1646 */ 3357290001Sglebius break; 3358290001Sglebius 3359310419Sdelphij case 309: 3360310419Sdelphij#line 1595 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3361290001Sglebius { 3362290001Sglebius (yyval.Sim_script_fifo) = NULL; 3363301301Sdelphij APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script)); 3364290001Sglebius } 3365310419Sdelphij#line 3366 "ntp_parser.c" /* yacc.c:1646 */ 3366290001Sglebius break; 3367290001Sglebius 3368310419Sdelphij case 310: 3369310419Sdelphij#line 1603 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3370301301Sdelphij { (yyval.Sim_script) = ONLY_SIM(create_sim_script_info((yyvsp[-3].Double), (yyvsp[-1].Attr_val_fifo))); } 3371310419Sdelphij#line 3372 "ntp_parser.c" /* yacc.c:1646 */ 3372290001Sglebius break; 3373290001Sglebius 3374310419Sdelphij case 311: 3375310419Sdelphij#line 1608 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3376290001Sglebius { 3377301301Sdelphij (yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo); 3378301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); 3379290001Sglebius } 3380310419Sdelphij#line 3381 "ntp_parser.c" /* yacc.c:1646 */ 3381290001Sglebius break; 3382290001Sglebius 3383310419Sdelphij case 312: 3384310419Sdelphij#line 1613 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3385290001Sglebius { 3386290001Sglebius (yyval.Attr_val_fifo) = NULL; 3387301301Sdelphij APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); 3388290001Sglebius } 3389310419Sdelphij#line 3390 "ntp_parser.c" /* yacc.c:1646 */ 3390290001Sglebius break; 3391290001Sglebius 3392310419Sdelphij case 313: 3393310419Sdelphij#line 1621 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ 3394301301Sdelphij { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); } 3395310419Sdelphij#line 3396 "ntp_parser.c" /* yacc.c:1646 */ 3396290001Sglebius break; 3397290001Sglebius 3398290001Sglebius 3399310419Sdelphij#line 3400 "ntp_parser.c" /* yacc.c:1646 */ 3400290001Sglebius default: break; 3401290001Sglebius } 3402290001Sglebius /* User semantic actions sometimes alter yychar, and that requires 3403290001Sglebius that yytoken be updated with the new translation. We take the 3404290001Sglebius approach of translating immediately before every use of yytoken. 3405290001Sglebius One alternative is translating here after every semantic action, 3406290001Sglebius but that translation would be missed if the semantic action invokes 3407290001Sglebius YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or 3408290001Sglebius if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an 3409290001Sglebius incorrect destructor might then be invoked immediately. In the 3410290001Sglebius case of YYERROR or YYBACKUP, subsequent parser actions might lead 3411290001Sglebius to an incorrect destructor call or verbose syntax error message 3412290001Sglebius before the lookahead is translated. */ 3413290001Sglebius YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); 3414290001Sglebius 3415290001Sglebius YYPOPSTACK (yylen); 3416290001Sglebius yylen = 0; 3417290001Sglebius YY_STACK_PRINT (yyss, yyssp); 3418290001Sglebius 3419290001Sglebius *++yyvsp = yyval; 3420290001Sglebius 3421301301Sdelphij /* Now 'shift' the result of the reduction. Determine what state 3422290001Sglebius that goes to, based on the state we popped back to and the rule 3423290001Sglebius number reduced by. */ 3424290001Sglebius 3425290001Sglebius yyn = yyr1[yyn]; 3426290001Sglebius 3427290001Sglebius yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; 3428290001Sglebius if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) 3429290001Sglebius yystate = yytable[yystate]; 3430290001Sglebius else 3431290001Sglebius yystate = yydefgoto[yyn - YYNTOKENS]; 3432290001Sglebius 3433290001Sglebius goto yynewstate; 3434290001Sglebius 3435290001Sglebius 3436301301Sdelphij/*--------------------------------------. 3437301301Sdelphij| yyerrlab -- here on detecting error. | 3438301301Sdelphij`--------------------------------------*/ 3439290001Sglebiusyyerrlab: 3440290001Sglebius /* Make sure we have latest lookahead translation. See comments at 3441290001Sglebius user semantic actions for why this is necessary. */ 3442290001Sglebius yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); 3443290001Sglebius 3444290001Sglebius /* If not already recovering from an error, report this error. */ 3445290001Sglebius if (!yyerrstatus) 3446290001Sglebius { 3447290001Sglebius ++yynerrs; 3448290001Sglebius#if ! YYERROR_VERBOSE 3449290001Sglebius yyerror (YY_("syntax error")); 3450290001Sglebius#else 3451290001Sglebius# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ 3452290001Sglebius yyssp, yytoken) 3453290001Sglebius { 3454290001Sglebius char const *yymsgp = YY_("syntax error"); 3455290001Sglebius int yysyntax_error_status; 3456290001Sglebius yysyntax_error_status = YYSYNTAX_ERROR; 3457290001Sglebius if (yysyntax_error_status == 0) 3458290001Sglebius yymsgp = yymsg; 3459290001Sglebius else if (yysyntax_error_status == 1) 3460290001Sglebius { 3461290001Sglebius if (yymsg != yymsgbuf) 3462290001Sglebius YYSTACK_FREE (yymsg); 3463290001Sglebius yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); 3464290001Sglebius if (!yymsg) 3465290001Sglebius { 3466290001Sglebius yymsg = yymsgbuf; 3467290001Sglebius yymsg_alloc = sizeof yymsgbuf; 3468290001Sglebius yysyntax_error_status = 2; 3469290001Sglebius } 3470290001Sglebius else 3471290001Sglebius { 3472290001Sglebius yysyntax_error_status = YYSYNTAX_ERROR; 3473290001Sglebius yymsgp = yymsg; 3474290001Sglebius } 3475290001Sglebius } 3476290001Sglebius yyerror (yymsgp); 3477290001Sglebius if (yysyntax_error_status == 2) 3478290001Sglebius goto yyexhaustedlab; 3479290001Sglebius } 3480290001Sglebius# undef YYSYNTAX_ERROR 3481290001Sglebius#endif 3482290001Sglebius } 3483290001Sglebius 3484290001Sglebius 3485290001Sglebius 3486290001Sglebius if (yyerrstatus == 3) 3487290001Sglebius { 3488290001Sglebius /* If just tried and failed to reuse lookahead token after an 3489301301Sdelphij error, discard it. */ 3490290001Sglebius 3491290001Sglebius if (yychar <= YYEOF) 3492301301Sdelphij { 3493301301Sdelphij /* Return failure if at end of input. */ 3494301301Sdelphij if (yychar == YYEOF) 3495301301Sdelphij YYABORT; 3496301301Sdelphij } 3497290001Sglebius else 3498301301Sdelphij { 3499301301Sdelphij yydestruct ("Error: discarding", 3500301301Sdelphij yytoken, &yylval); 3501301301Sdelphij yychar = YYEMPTY; 3502301301Sdelphij } 3503290001Sglebius } 3504290001Sglebius 3505290001Sglebius /* Else will try to reuse lookahead token after shifting the error 3506290001Sglebius token. */ 3507290001Sglebius goto yyerrlab1; 3508290001Sglebius 3509290001Sglebius 3510290001Sglebius/*---------------------------------------------------. 3511290001Sglebius| yyerrorlab -- error raised explicitly by YYERROR. | 3512290001Sglebius`---------------------------------------------------*/ 3513290001Sglebiusyyerrorlab: 3514290001Sglebius 3515290001Sglebius /* Pacify compilers like GCC when the user code never invokes 3516290001Sglebius YYERROR and the label yyerrorlab therefore never appears in user 3517290001Sglebius code. */ 3518290001Sglebius if (/*CONSTCOND*/ 0) 3519290001Sglebius goto yyerrorlab; 3520290001Sglebius 3521301301Sdelphij /* Do not reclaim the symbols of the rule whose action triggered 3522290001Sglebius this YYERROR. */ 3523290001Sglebius YYPOPSTACK (yylen); 3524290001Sglebius yylen = 0; 3525290001Sglebius YY_STACK_PRINT (yyss, yyssp); 3526290001Sglebius yystate = *yyssp; 3527290001Sglebius goto yyerrlab1; 3528290001Sglebius 3529290001Sglebius 3530290001Sglebius/*-------------------------------------------------------------. 3531290001Sglebius| yyerrlab1 -- common code for both syntax error and YYERROR. | 3532290001Sglebius`-------------------------------------------------------------*/ 3533290001Sglebiusyyerrlab1: 3534301301Sdelphij yyerrstatus = 3; /* Each real token shifted decrements this. */ 3535290001Sglebius 3536290001Sglebius for (;;) 3537290001Sglebius { 3538290001Sglebius yyn = yypact[yystate]; 3539290001Sglebius if (!yypact_value_is_default (yyn)) 3540301301Sdelphij { 3541301301Sdelphij yyn += YYTERROR; 3542301301Sdelphij if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) 3543301301Sdelphij { 3544301301Sdelphij yyn = yytable[yyn]; 3545301301Sdelphij if (0 < yyn) 3546301301Sdelphij break; 3547301301Sdelphij } 3548301301Sdelphij } 3549290001Sglebius 3550290001Sglebius /* Pop the current state because it cannot handle the error token. */ 3551290001Sglebius if (yyssp == yyss) 3552301301Sdelphij YYABORT; 3553290001Sglebius 3554290001Sglebius 3555290001Sglebius yydestruct ("Error: popping", 3556301301Sdelphij yystos[yystate], yyvsp); 3557290001Sglebius YYPOPSTACK (1); 3558290001Sglebius yystate = *yyssp; 3559290001Sglebius YY_STACK_PRINT (yyss, yyssp); 3560290001Sglebius } 3561290001Sglebius 3562290001Sglebius YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 3563290001Sglebius *++yyvsp = yylval; 3564290001Sglebius YY_IGNORE_MAYBE_UNINITIALIZED_END 3565290001Sglebius 3566290001Sglebius 3567290001Sglebius /* Shift the error token. */ 3568290001Sglebius YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); 3569290001Sglebius 3570290001Sglebius yystate = yyn; 3571290001Sglebius goto yynewstate; 3572290001Sglebius 3573290001Sglebius 3574290001Sglebius/*-------------------------------------. 3575290001Sglebius| yyacceptlab -- YYACCEPT comes here. | 3576290001Sglebius`-------------------------------------*/ 3577290001Sglebiusyyacceptlab: 3578290001Sglebius yyresult = 0; 3579290001Sglebius goto yyreturn; 3580290001Sglebius 3581290001Sglebius/*-----------------------------------. 3582290001Sglebius| yyabortlab -- YYABORT comes here. | 3583290001Sglebius`-----------------------------------*/ 3584290001Sglebiusyyabortlab: 3585290001Sglebius yyresult = 1; 3586290001Sglebius goto yyreturn; 3587290001Sglebius 3588290001Sglebius#if !defined yyoverflow || YYERROR_VERBOSE 3589290001Sglebius/*-------------------------------------------------. 3590290001Sglebius| yyexhaustedlab -- memory exhaustion comes here. | 3591290001Sglebius`-------------------------------------------------*/ 3592290001Sglebiusyyexhaustedlab: 3593290001Sglebius yyerror (YY_("memory exhausted")); 3594290001Sglebius yyresult = 2; 3595290001Sglebius /* Fall through. */ 3596290001Sglebius#endif 3597290001Sglebius 3598290001Sglebiusyyreturn: 3599290001Sglebius if (yychar != YYEMPTY) 3600290001Sglebius { 3601290001Sglebius /* Make sure we have latest lookahead translation. See comments at 3602290001Sglebius user semantic actions for why this is necessary. */ 3603290001Sglebius yytoken = YYTRANSLATE (yychar); 3604290001Sglebius yydestruct ("Cleanup: discarding lookahead", 3605290001Sglebius yytoken, &yylval); 3606290001Sglebius } 3607301301Sdelphij /* Do not reclaim the symbols of the rule whose action triggered 3608290001Sglebius this YYABORT or YYACCEPT. */ 3609290001Sglebius YYPOPSTACK (yylen); 3610290001Sglebius YY_STACK_PRINT (yyss, yyssp); 3611290001Sglebius while (yyssp != yyss) 3612290001Sglebius { 3613290001Sglebius yydestruct ("Cleanup: popping", 3614301301Sdelphij yystos[*yyssp], yyvsp); 3615290001Sglebius YYPOPSTACK (1); 3616290001Sglebius } 3617290001Sglebius#ifndef yyoverflow 3618290001Sglebius if (yyss != yyssa) 3619290001Sglebius YYSTACK_FREE (yyss); 3620290001Sglebius#endif 3621290001Sglebius#if YYERROR_VERBOSE 3622290001Sglebius if (yymsg != yymsgbuf) 3623290001Sglebius YYSTACK_FREE (yymsg); 3624290001Sglebius#endif 3625301301Sdelphij return yyresult; 3626290001Sglebius} 3627310419Sdelphij#line 1632 "../../ntpd/ntp_parser.y" /* yacc.c:1906 */ 3628290001Sglebius 3629290001Sglebius 3630290001Sglebiusvoid 3631290001Sglebiusyyerror( 3632290001Sglebius const char *msg 3633290001Sglebius ) 3634290001Sglebius{ 3635290001Sglebius int retval; 3636290001Sglebius struct FILE_INFO * ip_ctx; 3637290001Sglebius 3638290001Sglebius ip_ctx = lex_current(); 3639290001Sglebius ip_ctx->errpos = ip_ctx->tokpos; 3640290001Sglebius 3641290001Sglebius msyslog(LOG_ERR, "line %d column %d %s", 3642290001Sglebius ip_ctx->errpos.nline, ip_ctx->errpos.ncol, msg); 3643290001Sglebius if (!lex_from_file()) { 3644290001Sglebius /* Save the error message in the correct buffer */ 3645290001Sglebius retval = snprintf(remote_config.err_msg + remote_config.err_pos, 3646290001Sglebius MAXLINE - remote_config.err_pos, 3647290001Sglebius "column %d %s", 3648290001Sglebius ip_ctx->errpos.ncol, msg); 3649290001Sglebius 3650290001Sglebius /* Increment the value of err_pos */ 3651290001Sglebius if (retval > 0) 3652290001Sglebius remote_config.err_pos += retval; 3653290001Sglebius 3654290001Sglebius /* Increment the number of errors */ 3655290001Sglebius ++remote_config.no_errors; 3656290001Sglebius } 3657290001Sglebius} 3658290001Sglebius 3659290001Sglebius 3660290001Sglebius/* 3661290001Sglebius * token_name - convert T_ token integers to text 3662290001Sglebius * example: token_name(T_Server) returns "T_Server" 3663290001Sglebius */ 3664290001Sglebiusconst char * 3665290001Sglebiustoken_name( 3666290001Sglebius int token 3667290001Sglebius ) 3668290001Sglebius{ 3669290001Sglebius return yytname[YYTRANSLATE(token)]; 3670290001Sglebius} 3671290001Sglebius 3672290001Sglebius 3673290001Sglebius/* Initial Testing function -- ignore */ 3674290001Sglebius#if 0 3675290001Sglebiusint main(int argc, char *argv[]) 3676290001Sglebius{ 3677290001Sglebius ip_file = FOPEN(argv[1], "r"); 3678290001Sglebius if (!ip_file) 3679290001Sglebius fprintf(stderr, "ERROR!! Could not open file: %s\n", argv[1]); 3680290001Sglebius yyparse(); 3681290001Sglebius return 0; 3682290001Sglebius} 3683290001Sglebius#endif 3684290001Sglebius 3685