xref: /netbsd-src/external/bsd/nsd/dist/zparser.h (revision e2d5644acf1561cc97b6a8c8d51fddf773bb3a81)
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