1 /* A Bison parser, made by GNU Bison 3.0.2.  */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5    Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc.
6 
7    This program is free software: you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation, either version 3 of the License, or
10    (at your option) any later version.
11 
12    This program is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16 
17    You should have received a copy of the GNU General Public License
18    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19 
20 /* As a special exception, you may create a larger work that contains
21    part or all of the Bison parser skeleton and distribute that work
22    under terms of your choice, so long as that work isn't itself a
23    parser generator using the skeleton or a modified version thereof
24    as a parser skeleton.  Alternatively, if you modify or redistribute
25    the parser skeleton itself, you may (at your option) remove this
26    special exception, which will cause the skeleton and the resulting
27    Bison output files to be licensed under the GNU General Public
28    License without this special exception.
29 
30    This special exception was added by the Free Software Foundation in
31    version 2.2 of Bison.  */
32 
33 #ifndef YY_SFBPF_Y_TAB_H_INCLUDED
34 # define YY_SFBPF_Y_TAB_H_INCLUDED
35 /* Debug traces.  */
36 #ifndef YYDEBUG
37 # define YYDEBUG 0
38 #endif
39 #if YYDEBUG
40 extern int sfbpf_debug;
41 #endif
42 
43 /* Token type.  */
44 #ifndef YYTOKENTYPE
45 # define YYTOKENTYPE
46   enum yytokentype
47   {
48     DST = 258,
49     SRC = 259,
50     HOST = 260,
51     GATEWAY = 261,
52     NET = 262,
53     NETMASK = 263,
54     PORT = 264,
55     PORTRANGE = 265,
56     LESS = 266,
57     GREATER = 267,
58     PROTO = 268,
59     PROTOCHAIN = 269,
60     CBYTE = 270,
61     ARP = 271,
62     RARP = 272,
63     IP = 273,
64     SCTP = 274,
65     TCP = 275,
66     UDP = 276,
67     ICMP = 277,
68     IGMP = 278,
69     IGRP = 279,
70     PIM = 280,
71     VRRP = 281,
72     ATALK = 282,
73     AARP = 283,
74     DECNET = 284,
75     LAT = 285,
76     SCA = 286,
77     MOPRC = 287,
78     MOPDL = 288,
79     TK_BROADCAST = 289,
80     TK_MULTICAST = 290,
81     NUM = 291,
82     INBOUND = 292,
83     OUTBOUND = 293,
84     PF_IFNAME = 294,
85     PF_RSET = 295,
86     PF_RNR = 296,
87     PF_SRNR = 297,
88     PF_REASON = 298,
89     PF_ACTION = 299,
90     TYPE = 300,
91     SUBTYPE = 301,
92     DIR = 302,
93     ADDR1 = 303,
94     ADDR2 = 304,
95     ADDR3 = 305,
96     ADDR4 = 306,
97     LINK = 307,
98     GEQ = 308,
99     LEQ = 309,
100     NEQ = 310,
101     ID = 311,
102     EID = 312,
103     HID = 313,
104     HID6 = 314,
105     AID = 315,
106     LSH = 316,
107     RSH = 317,
108     LEN = 318,
109     IPV6 = 319,
110     ICMPV6 = 320,
111     AH = 321,
112     ESP = 322,
113     VLAN = 323,
114     MPLS = 324,
115     PPPOED = 325,
116     PPPOES = 326,
117     ISO = 327,
118     ESIS = 328,
119     CLNP = 329,
120     ISIS = 330,
121     L1 = 331,
122     L2 = 332,
123     IIH = 333,
124     LSP = 334,
125     SNP = 335,
126     CSNP = 336,
127     PSNP = 337,
128     STP = 338,
129     IPX = 339,
130     NETBEUI = 340,
131     LANE = 341,
132     LLC = 342,
133     METAC = 343,
134     BCC = 344,
135     SC = 345,
136     ILMIC = 346,
137     OAMF4EC = 347,
138     OAMF4SC = 348,
139     OAM = 349,
140     OAMF4 = 350,
141     CONNECTMSG = 351,
142     METACONNECT = 352,
143     VPI = 353,
144     VCI = 354,
145     RADIO = 355,
146     FISU = 356,
147     LSSU = 357,
148     MSU = 358,
149     SIO = 359,
150     OPC = 360,
151     DPC = 361,
152     SLS = 362,
153     OR = 363,
154     AND = 364,
155     UMINUS = 365
156   };
157 #endif
158 /* Tokens.  */
159 #define DST 258
160 #define SRC 259
161 #define HOST 260
162 #define GATEWAY 261
163 #define NET 262
164 #define NETMASK 263
165 #define PORT 264
166 #define PORTRANGE 265
167 #define LESS 266
168 #define GREATER 267
169 #define PROTO 268
170 #define PROTOCHAIN 269
171 #define CBYTE 270
172 #define ARP 271
173 #define RARP 272
174 #define IP 273
175 #define SCTP 274
176 #define TCP 275
177 #define UDP 276
178 #define ICMP 277
179 #define IGMP 278
180 #define IGRP 279
181 #define PIM 280
182 #define VRRP 281
183 #define ATALK 282
184 #define AARP 283
185 #define DECNET 284
186 #define LAT 285
187 #define SCA 286
188 #define MOPRC 287
189 #define MOPDL 288
190 #define TK_BROADCAST 289
191 #define TK_MULTICAST 290
192 #define NUM 291
193 #define INBOUND 292
194 #define OUTBOUND 293
195 #define PF_IFNAME 294
196 #define PF_RSET 295
197 #define PF_RNR 296
198 #define PF_SRNR 297
199 #define PF_REASON 298
200 #define PF_ACTION 299
201 #define TYPE 300
202 #define SUBTYPE 301
203 #define DIR 302
204 #define ADDR1 303
205 #define ADDR2 304
206 #define ADDR3 305
207 #define ADDR4 306
208 #define LINK 307
209 #define GEQ 308
210 #define LEQ 309
211 #define NEQ 310
212 #define ID 311
213 #define EID 312
214 #define HID 313
215 #define HID6 314
216 #define AID 315
217 #define LSH 316
218 #define RSH 317
219 #define LEN 318
220 #define IPV6 319
221 #define ICMPV6 320
222 #define AH 321
223 #define ESP 322
224 #define VLAN 323
225 #define MPLS 324
226 #define PPPOED 325
227 #define PPPOES 326
228 #define ISO 327
229 #define ESIS 328
230 #define CLNP 329
231 #define ISIS 330
232 #define L1 331
233 #define L2 332
234 #define IIH 333
235 #define LSP 334
236 #define SNP 335
237 #define CSNP 336
238 #define PSNP 337
239 #define STP 338
240 #define IPX 339
241 #define NETBEUI 340
242 #define LANE 341
243 #define LLC 342
244 #define METAC 343
245 #define BCC 344
246 #define SC 345
247 #define ILMIC 346
248 #define OAMF4EC 347
249 #define OAMF4SC 348
250 #define OAM 349
251 #define OAMF4 350
252 #define CONNECTMSG 351
253 #define METACONNECT 352
254 #define VPI 353
255 #define VCI 354
256 #define RADIO 355
257 #define FISU 356
258 #define LSSU 357
259 #define MSU 358
260 #define SIO 359
261 #define OPC 360
262 #define DPC 361
263 #define SLS 362
264 #define OR 363
265 #define AND 364
266 #define UMINUS 365
267 
268 /* Value type.  */
269 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
270 typedef union YYSTYPE YYSTYPE;
271 union YYSTYPE
272 {
273 #line 231 "./grammar.y" /* yacc.c:1909  */
274 
275 	int i;
276 	sfbpf_u_int32 h;
277 	u_char *e;
278 	char *s;
279 	struct stmt *stmt;
280 	struct arth *a;
281 	struct {
282 		struct qual q;
283 		int atmfieldtype;
284 		int mtp3fieldtype;
285 		struct block *b;
286 	} blk;
287 	struct block *rblk;
288 
289 #line 290 "y.tab.h" /* yacc.c:1909  */
290 };
291 # define YYSTYPE_IS_TRIVIAL 1
292 # define YYSTYPE_IS_DECLARED 1
293 #endif
294 
295 
296 extern __thread YYSTYPE sfbpf_lval;
297 
298 int sfbpf_parse (void);
299 
300 #endif /* !YY_SFBPF_Y_TAB_H_INCLUDED  */
301