1*e2d5644aSchristos /* A Bison parser, made by GNU Bison 3.7.6. */ 2a0034603Schristos 3a0034603Schristos /* Bison interface for Yacc-like parsers in C 4a0034603Schristos 5*e2d5644aSchristos Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation, 6b4110b48Schristos Inc. 7a0034603Schristos 8a0034603Schristos This program is free software: you can redistribute it and/or modify 9a0034603Schristos it under the terms of the GNU General Public License as published by 10a0034603Schristos the Free Software Foundation, either version 3 of the License, or 11a0034603Schristos (at your option) any later version. 12a0034603Schristos 13a0034603Schristos This program is distributed in the hope that it will be useful, 14a0034603Schristos but WITHOUT ANY WARRANTY; without even the implied warranty of 15a0034603Schristos MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16a0034603Schristos GNU General Public License for more details. 17a0034603Schristos 18a0034603Schristos You should have received a copy of the GNU General Public License 19*e2d5644aSchristos along with this program. If not, see <https://www.gnu.org/licenses/>. */ 20a0034603Schristos 21a0034603Schristos /* As a special exception, you may create a larger work that contains 22a0034603Schristos part or all of the Bison parser skeleton and distribute that work 23a0034603Schristos under terms of your choice, so long as that work isn't itself a 24a0034603Schristos parser generator using the skeleton or a modified version thereof 25a0034603Schristos as a parser skeleton. Alternatively, if you modify or redistribute 26a0034603Schristos the parser skeleton itself, you may (at your option) remove this 27a0034603Schristos special exception, which will cause the skeleton and the resulting 28a0034603Schristos Bison output files to be licensed under the GNU General Public 29a0034603Schristos License without this special exception. 30a0034603Schristos 31a0034603Schristos This special exception was added by the Free Software Foundation in 32a0034603Schristos version 2.2 of Bison. */ 33a0034603Schristos 34*e2d5644aSchristos /* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual, 35*e2d5644aSchristos especially those whose name start with YY_ or yy_. They are 36*e2d5644aSchristos private implementation details that can be changed or removed. */ 37b4110b48Schristos 38a0034603Schristos #ifndef YY_YY_ZPARSER_H_INCLUDED 39a0034603Schristos # define YY_YY_ZPARSER_H_INCLUDED 40a0034603Schristos /* Debug traces. */ 41a0034603Schristos #ifndef YYDEBUG 42a0034603Schristos # define YYDEBUG 0 43a0034603Schristos #endif 44a0034603Schristos #if YYDEBUG 45a0034603Schristos extern int yydebug; 46a0034603Schristos #endif 47a0034603Schristos 48*e2d5644aSchristos /* Token kinds. */ 49a0034603Schristos #ifndef YYTOKENTYPE 50a0034603Schristos # define YYTOKENTYPE 51a0034603Schristos enum yytokentype 52a0034603Schristos { 53*e2d5644aSchristos YYEMPTY = -2, 54*e2d5644aSchristos YYEOF = 0, /* "end of file" */ 55*e2d5644aSchristos YYerror = 256, /* error */ 56*e2d5644aSchristos YYUNDEF = 257, /* "invalid token" */ 57*e2d5644aSchristos T_A = 258, /* T_A */ 58*e2d5644aSchristos T_NS = 259, /* T_NS */ 59*e2d5644aSchristos T_MX = 260, /* T_MX */ 60*e2d5644aSchristos T_TXT = 261, /* T_TXT */ 61*e2d5644aSchristos T_CNAME = 262, /* T_CNAME */ 62*e2d5644aSchristos T_AAAA = 263, /* T_AAAA */ 63*e2d5644aSchristos T_PTR = 264, /* T_PTR */ 64*e2d5644aSchristos T_NXT = 265, /* T_NXT */ 65*e2d5644aSchristos T_KEY = 266, /* T_KEY */ 66*e2d5644aSchristos T_SOA = 267, /* T_SOA */ 67*e2d5644aSchristos T_SIG = 268, /* T_SIG */ 68*e2d5644aSchristos T_SRV = 269, /* T_SRV */ 69*e2d5644aSchristos T_CERT = 270, /* T_CERT */ 70*e2d5644aSchristos T_LOC = 271, /* T_LOC */ 71*e2d5644aSchristos T_MD = 272, /* T_MD */ 72*e2d5644aSchristos T_MF = 273, /* T_MF */ 73*e2d5644aSchristos T_MB = 274, /* T_MB */ 74*e2d5644aSchristos T_MG = 275, /* T_MG */ 75*e2d5644aSchristos T_MR = 276, /* T_MR */ 76*e2d5644aSchristos T_NULL = 277, /* T_NULL */ 77*e2d5644aSchristos T_WKS = 278, /* T_WKS */ 78*e2d5644aSchristos T_HINFO = 279, /* T_HINFO */ 79*e2d5644aSchristos T_MINFO = 280, /* T_MINFO */ 80*e2d5644aSchristos T_RP = 281, /* T_RP */ 81*e2d5644aSchristos T_AFSDB = 282, /* T_AFSDB */ 82*e2d5644aSchristos T_X25 = 283, /* T_X25 */ 83*e2d5644aSchristos T_ISDN = 284, /* T_ISDN */ 84*e2d5644aSchristos T_RT = 285, /* T_RT */ 85*e2d5644aSchristos T_NSAP = 286, /* T_NSAP */ 86*e2d5644aSchristos T_NSAP_PTR = 287, /* T_NSAP_PTR */ 87*e2d5644aSchristos T_PX = 288, /* T_PX */ 88*e2d5644aSchristos T_GPOS = 289, /* T_GPOS */ 89*e2d5644aSchristos T_EID = 290, /* T_EID */ 90*e2d5644aSchristos T_NIMLOC = 291, /* T_NIMLOC */ 91*e2d5644aSchristos T_ATMA = 292, /* T_ATMA */ 92*e2d5644aSchristos T_NAPTR = 293, /* T_NAPTR */ 93*e2d5644aSchristos T_KX = 294, /* T_KX */ 94*e2d5644aSchristos T_A6 = 295, /* T_A6 */ 95*e2d5644aSchristos T_DNAME = 296, /* T_DNAME */ 96*e2d5644aSchristos T_SINK = 297, /* T_SINK */ 97*e2d5644aSchristos T_OPT = 298, /* T_OPT */ 98*e2d5644aSchristos T_APL = 299, /* T_APL */ 99*e2d5644aSchristos T_UINFO = 300, /* T_UINFO */ 100*e2d5644aSchristos T_UID = 301, /* T_UID */ 101*e2d5644aSchristos T_GID = 302, /* T_GID */ 102*e2d5644aSchristos T_UNSPEC = 303, /* T_UNSPEC */ 103*e2d5644aSchristos T_TKEY = 304, /* T_TKEY */ 104*e2d5644aSchristos T_TSIG = 305, /* T_TSIG */ 105*e2d5644aSchristos T_IXFR = 306, /* T_IXFR */ 106*e2d5644aSchristos T_AXFR = 307, /* T_AXFR */ 107*e2d5644aSchristos T_MAILB = 308, /* T_MAILB */ 108*e2d5644aSchristos T_MAILA = 309, /* T_MAILA */ 109*e2d5644aSchristos T_DS = 310, /* T_DS */ 110*e2d5644aSchristos T_DLV = 311, /* T_DLV */ 111*e2d5644aSchristos T_SSHFP = 312, /* T_SSHFP */ 112*e2d5644aSchristos T_RRSIG = 313, /* T_RRSIG */ 113*e2d5644aSchristos T_NSEC = 314, /* T_NSEC */ 114*e2d5644aSchristos T_DNSKEY = 315, /* T_DNSKEY */ 115*e2d5644aSchristos T_SPF = 316, /* T_SPF */ 116*e2d5644aSchristos T_NSEC3 = 317, /* T_NSEC3 */ 117*e2d5644aSchristos T_IPSECKEY = 318, /* T_IPSECKEY */ 118*e2d5644aSchristos T_DHCID = 319, /* T_DHCID */ 119*e2d5644aSchristos T_NSEC3PARAM = 320, /* T_NSEC3PARAM */ 120*e2d5644aSchristos T_TLSA = 321, /* T_TLSA */ 121*e2d5644aSchristos T_URI = 322, /* T_URI */ 122*e2d5644aSchristos T_NID = 323, /* T_NID */ 123*e2d5644aSchristos T_L32 = 324, /* T_L32 */ 124*e2d5644aSchristos T_L64 = 325, /* T_L64 */ 125*e2d5644aSchristos T_LP = 326, /* T_LP */ 126*e2d5644aSchristos T_EUI48 = 327, /* T_EUI48 */ 127*e2d5644aSchristos T_EUI64 = 328, /* T_EUI64 */ 128*e2d5644aSchristos T_CAA = 329, /* T_CAA */ 129*e2d5644aSchristos T_CDS = 330, /* T_CDS */ 130*e2d5644aSchristos T_CDNSKEY = 331, /* T_CDNSKEY */ 131*e2d5644aSchristos T_OPENPGPKEY = 332, /* T_OPENPGPKEY */ 132*e2d5644aSchristos T_CSYNC = 333, /* T_CSYNC */ 133*e2d5644aSchristos T_ZONEMD = 334, /* T_ZONEMD */ 134*e2d5644aSchristos T_AVC = 335, /* T_AVC */ 135*e2d5644aSchristos T_SMIMEA = 336, /* T_SMIMEA */ 136*e2d5644aSchristos T_SVCB = 337, /* T_SVCB */ 137*e2d5644aSchristos T_HTTPS = 338, /* T_HTTPS */ 138*e2d5644aSchristos DOLLAR_TTL = 339, /* DOLLAR_TTL */ 139*e2d5644aSchristos DOLLAR_ORIGIN = 340, /* DOLLAR_ORIGIN */ 140*e2d5644aSchristos NL = 341, /* NL */ 141*e2d5644aSchristos SP = 342, /* SP */ 142*e2d5644aSchristos QSTR = 343, /* QSTR */ 143*e2d5644aSchristos STR = 344, /* STR */ 144*e2d5644aSchristos PREV = 345, /* PREV */ 145*e2d5644aSchristos BITLAB = 346, /* BITLAB */ 146*e2d5644aSchristos T_TTL = 347, /* T_TTL */ 147*e2d5644aSchristos T_RRCLASS = 348, /* T_RRCLASS */ 148*e2d5644aSchristos URR = 349, /* URR */ 149*e2d5644aSchristos T_UTYPE = 350 /* T_UTYPE */ 150a0034603Schristos }; 151*e2d5644aSchristos typedef enum yytokentype yytoken_kind_t; 152a0034603Schristos #endif 153*e2d5644aSchristos /* Token kinds. */ 154*e2d5644aSchristos #define YYEMPTY -2 155*e2d5644aSchristos #define YYEOF 0 156*e2d5644aSchristos #define YYerror 256 157*e2d5644aSchristos #define YYUNDEF 257 158a0034603Schristos #define T_A 258 159a0034603Schristos #define T_NS 259 160a0034603Schristos #define T_MX 260 161a0034603Schristos #define T_TXT 261 162a0034603Schristos #define T_CNAME 262 163a0034603Schristos #define T_AAAA 263 164a0034603Schristos #define T_PTR 264 165a0034603Schristos #define T_NXT 265 166a0034603Schristos #define T_KEY 266 167a0034603Schristos #define T_SOA 267 168a0034603Schristos #define T_SIG 268 169a0034603Schristos #define T_SRV 269 170a0034603Schristos #define T_CERT 270 171a0034603Schristos #define T_LOC 271 172a0034603Schristos #define T_MD 272 173a0034603Schristos #define T_MF 273 174a0034603Schristos #define T_MB 274 175a0034603Schristos #define T_MG 275 176a0034603Schristos #define T_MR 276 177a0034603Schristos #define T_NULL 277 178a0034603Schristos #define T_WKS 278 179a0034603Schristos #define T_HINFO 279 180a0034603Schristos #define T_MINFO 280 181a0034603Schristos #define T_RP 281 182a0034603Schristos #define T_AFSDB 282 183a0034603Schristos #define T_X25 283 184a0034603Schristos #define T_ISDN 284 185a0034603Schristos #define T_RT 285 186a0034603Schristos #define T_NSAP 286 187a0034603Schristos #define T_NSAP_PTR 287 188a0034603Schristos #define T_PX 288 189a0034603Schristos #define T_GPOS 289 190a0034603Schristos #define T_EID 290 191a0034603Schristos #define T_NIMLOC 291 192a0034603Schristos #define T_ATMA 292 193a0034603Schristos #define T_NAPTR 293 194a0034603Schristos #define T_KX 294 195a0034603Schristos #define T_A6 295 196a0034603Schristos #define T_DNAME 296 197a0034603Schristos #define T_SINK 297 198a0034603Schristos #define T_OPT 298 199a0034603Schristos #define T_APL 299 200a0034603Schristos #define T_UINFO 300 201a0034603Schristos #define T_UID 301 202a0034603Schristos #define T_GID 302 203a0034603Schristos #define T_UNSPEC 303 204a0034603Schristos #define T_TKEY 304 205a0034603Schristos #define T_TSIG 305 206a0034603Schristos #define T_IXFR 306 207a0034603Schristos #define T_AXFR 307 208a0034603Schristos #define T_MAILB 308 209a0034603Schristos #define T_MAILA 309 210a0034603Schristos #define T_DS 310 211a0034603Schristos #define T_DLV 311 212a0034603Schristos #define T_SSHFP 312 213a0034603Schristos #define T_RRSIG 313 214a0034603Schristos #define T_NSEC 314 215a0034603Schristos #define T_DNSKEY 315 216a0034603Schristos #define T_SPF 316 217a0034603Schristos #define T_NSEC3 317 218a0034603Schristos #define T_IPSECKEY 318 219a0034603Schristos #define T_DHCID 319 220a0034603Schristos #define T_NSEC3PARAM 320 221a0034603Schristos #define T_TLSA 321 222a0034603Schristos #define T_URI 322 223a0034603Schristos #define T_NID 323 224a0034603Schristos #define T_L32 324 225a0034603Schristos #define T_L64 325 226a0034603Schristos #define T_LP 326 227a0034603Schristos #define T_EUI48 327 228a0034603Schristos #define T_EUI64 328 229a0034603Schristos #define T_CAA 329 230a0034603Schristos #define T_CDS 330 231a0034603Schristos #define T_CDNSKEY 331 232a0034603Schristos #define T_OPENPGPKEY 332 233a0034603Schristos #define T_CSYNC 333 234b4110b48Schristos #define T_ZONEMD 334 235b4110b48Schristos #define T_AVC 335 236b4110b48Schristos #define T_SMIMEA 336 237*e2d5644aSchristos #define T_SVCB 337 238*e2d5644aSchristos #define T_HTTPS 338 239*e2d5644aSchristos #define DOLLAR_TTL 339 240*e2d5644aSchristos #define DOLLAR_ORIGIN 340 241*e2d5644aSchristos #define NL 341 242*e2d5644aSchristos #define SP 342 243*e2d5644aSchristos #define QSTR 343 244*e2d5644aSchristos #define STR 344 245*e2d5644aSchristos #define PREV 345 246*e2d5644aSchristos #define BITLAB 346 247*e2d5644aSchristos #define T_TTL 347 248*e2d5644aSchristos #define T_RRCLASS 348 249*e2d5644aSchristos #define URR 349 250*e2d5644aSchristos #define T_UTYPE 350 251a0034603Schristos 252a0034603Schristos /* Value type. */ 253a0034603Schristos #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 254a0034603Schristos union YYSTYPE 255a0034603Schristos { 256b4110b48Schristos #line 50 "zparser.y" 257a0034603Schristos 258a0034603Schristos domain_type *domain; 259a0034603Schristos const dname_type *dname; 260a0034603Schristos struct lex_data data; 261a0034603Schristos uint32_t ttl; 262a0034603Schristos uint16_t klass; 263a0034603Schristos uint16_t type; 264a0034603Schristos uint16_t *unknown; 265a0034603Schristos 266*e2d5644aSchristos #line 267 "zparser.h" 267a0034603Schristos 268b4110b48Schristos }; 269a0034603Schristos typedef union YYSTYPE YYSTYPE; 270a0034603Schristos # define YYSTYPE_IS_TRIVIAL 1 271a0034603Schristos # define YYSTYPE_IS_DECLARED 1 272a0034603Schristos #endif 273a0034603Schristos 274a0034603Schristos 275a0034603Schristos extern YYSTYPE yylval; 276a0034603Schristos 277a0034603Schristos int yyparse (void); 278a0034603Schristos 279a0034603Schristos #endif /* !YY_YY_ZPARSER_H_INCLUDED */ 280