xref: /freebsd/crypto/heimdal/lib/asn1/asn1parse.h (revision 1b7487592987c91020063a311a14dc15b6e58075)
1ae771770SStanislav Sedov /* A Bison parser, made by GNU Bison 2.3.  */
2ae771770SStanislav Sedov 
3ae771770SStanislav Sedov /* Skeleton interface for Bison's Yacc-like parsers in C
4ae771770SStanislav Sedov 
5ae771770SStanislav Sedov    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6ae771770SStanislav Sedov    Free Software Foundation, Inc.
7ae771770SStanislav Sedov 
8ae771770SStanislav Sedov    This program is free software; you can redistribute it and/or modify
9ae771770SStanislav Sedov    it under the terms of the GNU General Public License as published by
10ae771770SStanislav Sedov    the Free Software Foundation; either version 2, or (at your option)
11ae771770SStanislav Sedov    any later version.
12ae771770SStanislav Sedov 
13ae771770SStanislav Sedov    This program is distributed in the hope that it will be useful,
14ae771770SStanislav Sedov    but WITHOUT ANY WARRANTY; without even the implied warranty of
15ae771770SStanislav Sedov    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16ae771770SStanislav Sedov    GNU General Public License for more details.
17ae771770SStanislav Sedov 
18ae771770SStanislav Sedov    You should have received a copy of the GNU General Public License
19ae771770SStanislav Sedov    along with this program; if not, write to the Free Software
20ae771770SStanislav Sedov    Foundation, Inc., 51 Franklin Street, Fifth Floor,
21ae771770SStanislav Sedov    Boston, MA 02110-1301, USA.  */
22ae771770SStanislav Sedov 
23ae771770SStanislav Sedov /* As a special exception, you may create a larger work that contains
24ae771770SStanislav Sedov    part or all of the Bison parser skeleton and distribute that work
25ae771770SStanislav Sedov    under terms of your choice, so long as that work isn't itself a
26ae771770SStanislav Sedov    parser generator using the skeleton or a modified version thereof
27ae771770SStanislav Sedov    as a parser skeleton.  Alternatively, if you modify or redistribute
28ae771770SStanislav Sedov    the parser skeleton itself, you may (at your option) remove this
29ae771770SStanislav Sedov    special exception, which will cause the skeleton and the resulting
30ae771770SStanislav Sedov    Bison output files to be licensed under the GNU General Public
31ae771770SStanislav Sedov    License without this special exception.
32ae771770SStanislav Sedov 
33ae771770SStanislav Sedov    This special exception was added by the Free Software Foundation in
34ae771770SStanislav Sedov    version 2.2 of Bison.  */
35ae771770SStanislav Sedov 
36ae771770SStanislav Sedov /* Tokens.  */
37ae771770SStanislav Sedov #ifndef YYTOKENTYPE
38ae771770SStanislav Sedov # define YYTOKENTYPE
39ae771770SStanislav Sedov    /* Put the tokens into the symbol table, so that GDB and other debuggers
40ae771770SStanislav Sedov       know about them.  */
41ae771770SStanislav Sedov    enum yytokentype {
42ae771770SStanislav Sedov      kw_ABSENT = 258,
43ae771770SStanislav Sedov      kw_ABSTRACT_SYNTAX = 259,
44ae771770SStanislav Sedov      kw_ALL = 260,
45ae771770SStanislav Sedov      kw_APPLICATION = 261,
46ae771770SStanislav Sedov      kw_AUTOMATIC = 262,
47ae771770SStanislav Sedov      kw_BEGIN = 263,
48ae771770SStanislav Sedov      kw_BIT = 264,
49ae771770SStanislav Sedov      kw_BMPString = 265,
50ae771770SStanislav Sedov      kw_BOOLEAN = 266,
51ae771770SStanislav Sedov      kw_BY = 267,
52ae771770SStanislav Sedov      kw_CHARACTER = 268,
53ae771770SStanislav Sedov      kw_CHOICE = 269,
54ae771770SStanislav Sedov      kw_CLASS = 270,
55ae771770SStanislav Sedov      kw_COMPONENT = 271,
56ae771770SStanislav Sedov      kw_COMPONENTS = 272,
57ae771770SStanislav Sedov      kw_CONSTRAINED = 273,
58ae771770SStanislav Sedov      kw_CONTAINING = 274,
59ae771770SStanislav Sedov      kw_DEFAULT = 275,
60ae771770SStanislav Sedov      kw_DEFINITIONS = 276,
61ae771770SStanislav Sedov      kw_EMBEDDED = 277,
62ae771770SStanislav Sedov      kw_ENCODED = 278,
63ae771770SStanislav Sedov      kw_END = 279,
64ae771770SStanislav Sedov      kw_ENUMERATED = 280,
65ae771770SStanislav Sedov      kw_EXCEPT = 281,
66ae771770SStanislav Sedov      kw_EXPLICIT = 282,
67ae771770SStanislav Sedov      kw_EXPORTS = 283,
68ae771770SStanislav Sedov      kw_EXTENSIBILITY = 284,
69ae771770SStanislav Sedov      kw_EXTERNAL = 285,
70ae771770SStanislav Sedov      kw_FALSE = 286,
71ae771770SStanislav Sedov      kw_FROM = 287,
72ae771770SStanislav Sedov      kw_GeneralString = 288,
73ae771770SStanislav Sedov      kw_GeneralizedTime = 289,
74ae771770SStanislav Sedov      kw_GraphicString = 290,
75ae771770SStanislav Sedov      kw_IA5String = 291,
76ae771770SStanislav Sedov      kw_IDENTIFIER = 292,
77ae771770SStanislav Sedov      kw_IMPLICIT = 293,
78ae771770SStanislav Sedov      kw_IMPLIED = 294,
79ae771770SStanislav Sedov      kw_IMPORTS = 295,
80ae771770SStanislav Sedov      kw_INCLUDES = 296,
81ae771770SStanislav Sedov      kw_INSTANCE = 297,
82ae771770SStanislav Sedov      kw_INTEGER = 298,
83ae771770SStanislav Sedov      kw_INTERSECTION = 299,
84ae771770SStanislav Sedov      kw_ISO646String = 300,
85ae771770SStanislav Sedov      kw_MAX = 301,
86ae771770SStanislav Sedov      kw_MIN = 302,
87ae771770SStanislav Sedov      kw_MINUS_INFINITY = 303,
88ae771770SStanislav Sedov      kw_NULL = 304,
89ae771770SStanislav Sedov      kw_NumericString = 305,
90ae771770SStanislav Sedov      kw_OBJECT = 306,
91ae771770SStanislav Sedov      kw_OCTET = 307,
92ae771770SStanislav Sedov      kw_OF = 308,
93ae771770SStanislav Sedov      kw_OPTIONAL = 309,
94ae771770SStanislav Sedov      kw_ObjectDescriptor = 310,
95ae771770SStanislav Sedov      kw_PATTERN = 311,
96ae771770SStanislav Sedov      kw_PDV = 312,
97ae771770SStanislav Sedov      kw_PLUS_INFINITY = 313,
98ae771770SStanislav Sedov      kw_PRESENT = 314,
99ae771770SStanislav Sedov      kw_PRIVATE = 315,
100ae771770SStanislav Sedov      kw_PrintableString = 316,
101ae771770SStanislav Sedov      kw_REAL = 317,
102ae771770SStanislav Sedov      kw_RELATIVE_OID = 318,
103ae771770SStanislav Sedov      kw_SEQUENCE = 319,
104ae771770SStanislav Sedov      kw_SET = 320,
105ae771770SStanislav Sedov      kw_SIZE = 321,
106ae771770SStanislav Sedov      kw_STRING = 322,
107ae771770SStanislav Sedov      kw_SYNTAX = 323,
108ae771770SStanislav Sedov      kw_T61String = 324,
109ae771770SStanislav Sedov      kw_TAGS = 325,
110ae771770SStanislav Sedov      kw_TRUE = 326,
111ae771770SStanislav Sedov      kw_TYPE_IDENTIFIER = 327,
112ae771770SStanislav Sedov      kw_TeletexString = 328,
113ae771770SStanislav Sedov      kw_UNION = 329,
114ae771770SStanislav Sedov      kw_UNIQUE = 330,
115ae771770SStanislav Sedov      kw_UNIVERSAL = 331,
116ae771770SStanislav Sedov      kw_UTCTime = 332,
117ae771770SStanislav Sedov      kw_UTF8String = 333,
118ae771770SStanislav Sedov      kw_UniversalString = 334,
119ae771770SStanislav Sedov      kw_VideotexString = 335,
120ae771770SStanislav Sedov      kw_VisibleString = 336,
121ae771770SStanislav Sedov      kw_WITH = 337,
122ae771770SStanislav Sedov      RANGE = 338,
123ae771770SStanislav Sedov      EEQUAL = 339,
124ae771770SStanislav Sedov      ELLIPSIS = 340,
125ae771770SStanislav Sedov      IDENTIFIER = 341,
126ae771770SStanislav Sedov      referencename = 342,
127ae771770SStanislav Sedov      STRING = 343,
128ae771770SStanislav Sedov      NUMBER = 344
129ae771770SStanislav Sedov    };
130ae771770SStanislav Sedov #endif
131ae771770SStanislav Sedov /* Tokens.  */
132ae771770SStanislav Sedov #define kw_ABSENT 258
133ae771770SStanislav Sedov #define kw_ABSTRACT_SYNTAX 259
134ae771770SStanislav Sedov #define kw_ALL 260
135ae771770SStanislav Sedov #define kw_APPLICATION 261
136ae771770SStanislav Sedov #define kw_AUTOMATIC 262
137ae771770SStanislav Sedov #define kw_BEGIN 263
138ae771770SStanislav Sedov #define kw_BIT 264
139ae771770SStanislav Sedov #define kw_BMPString 265
140ae771770SStanislav Sedov #define kw_BOOLEAN 266
141ae771770SStanislav Sedov #define kw_BY 267
142ae771770SStanislav Sedov #define kw_CHARACTER 268
143ae771770SStanislav Sedov #define kw_CHOICE 269
144ae771770SStanislav Sedov #define kw_CLASS 270
145ae771770SStanislav Sedov #define kw_COMPONENT 271
146ae771770SStanislav Sedov #define kw_COMPONENTS 272
147ae771770SStanislav Sedov #define kw_CONSTRAINED 273
148ae771770SStanislav Sedov #define kw_CONTAINING 274
149ae771770SStanislav Sedov #define kw_DEFAULT 275
150ae771770SStanislav Sedov #define kw_DEFINITIONS 276
151ae771770SStanislav Sedov #define kw_EMBEDDED 277
152ae771770SStanislav Sedov #define kw_ENCODED 278
153ae771770SStanislav Sedov #define kw_END 279
154ae771770SStanislav Sedov #define kw_ENUMERATED 280
155ae771770SStanislav Sedov #define kw_EXCEPT 281
156ae771770SStanislav Sedov #define kw_EXPLICIT 282
157ae771770SStanislav Sedov #define kw_EXPORTS 283
158ae771770SStanislav Sedov #define kw_EXTENSIBILITY 284
159ae771770SStanislav Sedov #define kw_EXTERNAL 285
160ae771770SStanislav Sedov #define kw_FALSE 286
161ae771770SStanislav Sedov #define kw_FROM 287
162ae771770SStanislav Sedov #define kw_GeneralString 288
163ae771770SStanislav Sedov #define kw_GeneralizedTime 289
164ae771770SStanislav Sedov #define kw_GraphicString 290
165ae771770SStanislav Sedov #define kw_IA5String 291
166ae771770SStanislav Sedov #define kw_IDENTIFIER 292
167ae771770SStanislav Sedov #define kw_IMPLICIT 293
168ae771770SStanislav Sedov #define kw_IMPLIED 294
169ae771770SStanislav Sedov #define kw_IMPORTS 295
170ae771770SStanislav Sedov #define kw_INCLUDES 296
171ae771770SStanislav Sedov #define kw_INSTANCE 297
172ae771770SStanislav Sedov #define kw_INTEGER 298
173ae771770SStanislav Sedov #define kw_INTERSECTION 299
174ae771770SStanislav Sedov #define kw_ISO646String 300
175ae771770SStanislav Sedov #define kw_MAX 301
176ae771770SStanislav Sedov #define kw_MIN 302
177ae771770SStanislav Sedov #define kw_MINUS_INFINITY 303
178ae771770SStanislav Sedov #define kw_NULL 304
179ae771770SStanislav Sedov #define kw_NumericString 305
180ae771770SStanislav Sedov #define kw_OBJECT 306
181ae771770SStanislav Sedov #define kw_OCTET 307
182ae771770SStanislav Sedov #define kw_OF 308
183ae771770SStanislav Sedov #define kw_OPTIONAL 309
184ae771770SStanislav Sedov #define kw_ObjectDescriptor 310
185ae771770SStanislav Sedov #define kw_PATTERN 311
186ae771770SStanislav Sedov #define kw_PDV 312
187ae771770SStanislav Sedov #define kw_PLUS_INFINITY 313
188ae771770SStanislav Sedov #define kw_PRESENT 314
189ae771770SStanislav Sedov #define kw_PRIVATE 315
190ae771770SStanislav Sedov #define kw_PrintableString 316
191ae771770SStanislav Sedov #define kw_REAL 317
192ae771770SStanislav Sedov #define kw_RELATIVE_OID 318
193ae771770SStanislav Sedov #define kw_SEQUENCE 319
194ae771770SStanislav Sedov #define kw_SET 320
195ae771770SStanislav Sedov #define kw_SIZE 321
196ae771770SStanislav Sedov #define kw_STRING 322
197ae771770SStanislav Sedov #define kw_SYNTAX 323
198ae771770SStanislav Sedov #define kw_T61String 324
199ae771770SStanislav Sedov #define kw_TAGS 325
200ae771770SStanislav Sedov #define kw_TRUE 326
201ae771770SStanislav Sedov #define kw_TYPE_IDENTIFIER 327
202ae771770SStanislav Sedov #define kw_TeletexString 328
203ae771770SStanislav Sedov #define kw_UNION 329
204ae771770SStanislav Sedov #define kw_UNIQUE 330
205ae771770SStanislav Sedov #define kw_UNIVERSAL 331
206ae771770SStanislav Sedov #define kw_UTCTime 332
207ae771770SStanislav Sedov #define kw_UTF8String 333
208ae771770SStanislav Sedov #define kw_UniversalString 334
209ae771770SStanislav Sedov #define kw_VideotexString 335
210ae771770SStanislav Sedov #define kw_VisibleString 336
211ae771770SStanislav Sedov #define kw_WITH 337
212ae771770SStanislav Sedov #define RANGE 338
213ae771770SStanislav Sedov #define EEQUAL 339
214ae771770SStanislav Sedov #define ELLIPSIS 340
215ae771770SStanislav Sedov #define IDENTIFIER 341
216ae771770SStanislav Sedov #define referencename 342
217ae771770SStanislav Sedov #define STRING 343
218ae771770SStanislav Sedov #define NUMBER 344
219ae771770SStanislav Sedov 
220ae771770SStanislav Sedov 
221ae771770SStanislav Sedov 
222ae771770SStanislav Sedov 
223ae771770SStanislav Sedov #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
224ae771770SStanislav Sedov typedef union YYSTYPE
225ae771770SStanislav Sedov #line 71 "asn1parse.y"
226ae771770SStanislav Sedov {
227*1b748759SDimitry Andric     int64_t constant;
228ae771770SStanislav Sedov     struct value *value;
229ae771770SStanislav Sedov     struct range *range;
230ae771770SStanislav Sedov     char *name;
231ae771770SStanislav Sedov     Type *type;
232ae771770SStanislav Sedov     Member *member;
233ae771770SStanislav Sedov     struct objid *objid;
234ae771770SStanislav Sedov     char *defval;
235ae771770SStanislav Sedov     struct string_list *sl;
236ae771770SStanislav Sedov     struct tagtype tag;
237ae771770SStanislav Sedov     struct memhead *members;
238ae771770SStanislav Sedov     struct constraint_spec *constraint_spec;
239ae771770SStanislav Sedov }
240ae771770SStanislav Sedov /* Line 1529 of yacc.c.  */
241ae771770SStanislav Sedov #line 242 "asn1parse.h"
242ae771770SStanislav Sedov 	YYSTYPE;
243ae771770SStanislav Sedov # define yystype YYSTYPE /* obsolescent; will be withdrawn */
244ae771770SStanislav Sedov # define YYSTYPE_IS_DECLARED 1
245ae771770SStanislav Sedov # define YYSTYPE_IS_TRIVIAL 1
246ae771770SStanislav Sedov #endif
247ae771770SStanislav Sedov 
248ae771770SStanislav Sedov extern YYSTYPE yylval;
249ae771770SStanislav Sedov 
250