1 /* A Bison parser, made by GNU Bison 3.0.5. */ 2 3 /* Bison interface for Yacc-like parsers in C 4 5 Copyright (C) 1984, 1989-1990, 2000-2015, 2018 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_YY_CONFIGPARSER_H_INCLUDED 34 # define YY_YY_CONFIGPARSER_H_INCLUDED 35 /* Debug traces. */ 36 #ifndef YYDEBUG 37 # define YYDEBUG 0 38 #endif 39 #if YYDEBUG 40 extern int yydebug; 41 #endif 42 43 /* Token type. */ 44 #ifndef YYTOKENTYPE 45 # define YYTOKENTYPE 46 enum yytokentype 47 { 48 SPACE = 258, 49 LETTER = 259, 50 NEWLINE = 260, 51 COMMENT = 261, 52 COLON = 262, 53 ANY = 263, 54 ZONESTR = 264, 55 STRING = 265, 56 VAR_SERVER = 266, 57 VAR_NAME = 267, 58 VAR_IP_ADDRESS = 268, 59 VAR_IP_TRANSPARENT = 269, 60 VAR_DEBUG_MODE = 270, 61 VAR_IP4_ONLY = 271, 62 VAR_IP6_ONLY = 272, 63 VAR_DATABASE = 273, 64 VAR_IDENTITY = 274, 65 VAR_NSID = 275, 66 VAR_LOGFILE = 276, 67 VAR_SERVER_COUNT = 277, 68 VAR_TCP_COUNT = 278, 69 VAR_PIDFILE = 279, 70 VAR_PORT = 280, 71 VAR_STATISTICS = 281, 72 VAR_CHROOT = 282, 73 VAR_USERNAME = 283, 74 VAR_ZONESDIR = 284, 75 VAR_XFRDFILE = 285, 76 VAR_DIFFFILE = 286, 77 VAR_XFRD_RELOAD_TIMEOUT = 287, 78 VAR_TCP_QUERY_COUNT = 288, 79 VAR_TCP_TIMEOUT = 289, 80 VAR_IPV4_EDNS_SIZE = 290, 81 VAR_IPV6_EDNS_SIZE = 291, 82 VAR_DO_IP4 = 292, 83 VAR_DO_IP6 = 293, 84 VAR_TCP_MSS = 294, 85 VAR_OUTGOING_TCP_MSS = 295, 86 VAR_IP_FREEBIND = 296, 87 VAR_ZONEFILE = 297, 88 VAR_ZONE = 298, 89 VAR_ALLOW_NOTIFY = 299, 90 VAR_REQUEST_XFR = 300, 91 VAR_NOTIFY = 301, 92 VAR_PROVIDE_XFR = 302, 93 VAR_SIZE_LIMIT_XFR = 303, 94 VAR_NOTIFY_RETRY = 304, 95 VAR_OUTGOING_INTERFACE = 305, 96 VAR_ALLOW_AXFR_FALLBACK = 306, 97 VAR_KEY = 307, 98 VAR_ALGORITHM = 308, 99 VAR_SECRET = 309, 100 VAR_AXFR = 310, 101 VAR_UDP = 311, 102 VAR_VERBOSITY = 312, 103 VAR_HIDE_VERSION = 313, 104 VAR_PATTERN = 314, 105 VAR_INCLUDEPATTERN = 315, 106 VAR_ZONELISTFILE = 316, 107 VAR_REMOTE_CONTROL = 317, 108 VAR_CONTROL_ENABLE = 318, 109 VAR_CONTROL_INTERFACE = 319, 110 VAR_CONTROL_PORT = 320, 111 VAR_SERVER_KEY_FILE = 321, 112 VAR_SERVER_CERT_FILE = 322, 113 VAR_CONTROL_KEY_FILE = 323, 114 VAR_CONTROL_CERT_FILE = 324, 115 VAR_XFRDIR = 325, 116 VAR_RRL_SIZE = 326, 117 VAR_RRL_RATELIMIT = 327, 118 VAR_RRL_SLIP = 328, 119 VAR_RRL_IPV4_PREFIX_LENGTH = 329, 120 VAR_RRL_IPV6_PREFIX_LENGTH = 330, 121 VAR_RRL_WHITELIST_RATELIMIT = 331, 122 VAR_RRL_WHITELIST = 332, 123 VAR_ZONEFILES_CHECK = 333, 124 VAR_ZONEFILES_WRITE = 334, 125 VAR_LOG_TIME_ASCII = 335, 126 VAR_ROUND_ROBIN = 336, 127 VAR_ZONESTATS = 337, 128 VAR_REUSEPORT = 338, 129 VAR_VERSION = 339, 130 VAR_MAX_REFRESH_TIME = 340, 131 VAR_MIN_REFRESH_TIME = 341, 132 VAR_MAX_RETRY_TIME = 342, 133 VAR_MIN_RETRY_TIME = 343, 134 VAR_MULTI_MASTER_CHECK = 344, 135 VAR_MINIMAL_RESPONSES = 345, 136 VAR_REFUSE_ANY = 346, 137 VAR_USE_SYSTEMD = 347, 138 VAR_DNSTAP = 348, 139 VAR_DNSTAP_ENABLE = 349, 140 VAR_DNSTAP_SOCKET_PATH = 350, 141 VAR_DNSTAP_SEND_IDENTITY = 351, 142 VAR_DNSTAP_SEND_VERSION = 352, 143 VAR_DNSTAP_IDENTITY = 353, 144 VAR_DNSTAP_VERSION = 354, 145 VAR_DNSTAP_LOG_AUTH_QUERY_MESSAGES = 355, 146 VAR_DNSTAP_LOG_AUTH_RESPONSE_MESSAGES = 356 147 }; 148 #endif 149 /* Tokens. */ 150 #define SPACE 258 151 #define LETTER 259 152 #define NEWLINE 260 153 #define COMMENT 261 154 #define COLON 262 155 #define ANY 263 156 #define ZONESTR 264 157 #define STRING 265 158 #define VAR_SERVER 266 159 #define VAR_NAME 267 160 #define VAR_IP_ADDRESS 268 161 #define VAR_IP_TRANSPARENT 269 162 #define VAR_DEBUG_MODE 270 163 #define VAR_IP4_ONLY 271 164 #define VAR_IP6_ONLY 272 165 #define VAR_DATABASE 273 166 #define VAR_IDENTITY 274 167 #define VAR_NSID 275 168 #define VAR_LOGFILE 276 169 #define VAR_SERVER_COUNT 277 170 #define VAR_TCP_COUNT 278 171 #define VAR_PIDFILE 279 172 #define VAR_PORT 280 173 #define VAR_STATISTICS 281 174 #define VAR_CHROOT 282 175 #define VAR_USERNAME 283 176 #define VAR_ZONESDIR 284 177 #define VAR_XFRDFILE 285 178 #define VAR_DIFFFILE 286 179 #define VAR_XFRD_RELOAD_TIMEOUT 287 180 #define VAR_TCP_QUERY_COUNT 288 181 #define VAR_TCP_TIMEOUT 289 182 #define VAR_IPV4_EDNS_SIZE 290 183 #define VAR_IPV6_EDNS_SIZE 291 184 #define VAR_DO_IP4 292 185 #define VAR_DO_IP6 293 186 #define VAR_TCP_MSS 294 187 #define VAR_OUTGOING_TCP_MSS 295 188 #define VAR_IP_FREEBIND 296 189 #define VAR_ZONEFILE 297 190 #define VAR_ZONE 298 191 #define VAR_ALLOW_NOTIFY 299 192 #define VAR_REQUEST_XFR 300 193 #define VAR_NOTIFY 301 194 #define VAR_PROVIDE_XFR 302 195 #define VAR_SIZE_LIMIT_XFR 303 196 #define VAR_NOTIFY_RETRY 304 197 #define VAR_OUTGOING_INTERFACE 305 198 #define VAR_ALLOW_AXFR_FALLBACK 306 199 #define VAR_KEY 307 200 #define VAR_ALGORITHM 308 201 #define VAR_SECRET 309 202 #define VAR_AXFR 310 203 #define VAR_UDP 311 204 #define VAR_VERBOSITY 312 205 #define VAR_HIDE_VERSION 313 206 #define VAR_PATTERN 314 207 #define VAR_INCLUDEPATTERN 315 208 #define VAR_ZONELISTFILE 316 209 #define VAR_REMOTE_CONTROL 317 210 #define VAR_CONTROL_ENABLE 318 211 #define VAR_CONTROL_INTERFACE 319 212 #define VAR_CONTROL_PORT 320 213 #define VAR_SERVER_KEY_FILE 321 214 #define VAR_SERVER_CERT_FILE 322 215 #define VAR_CONTROL_KEY_FILE 323 216 #define VAR_CONTROL_CERT_FILE 324 217 #define VAR_XFRDIR 325 218 #define VAR_RRL_SIZE 326 219 #define VAR_RRL_RATELIMIT 327 220 #define VAR_RRL_SLIP 328 221 #define VAR_RRL_IPV4_PREFIX_LENGTH 329 222 #define VAR_RRL_IPV6_PREFIX_LENGTH 330 223 #define VAR_RRL_WHITELIST_RATELIMIT 331 224 #define VAR_RRL_WHITELIST 332 225 #define VAR_ZONEFILES_CHECK 333 226 #define VAR_ZONEFILES_WRITE 334 227 #define VAR_LOG_TIME_ASCII 335 228 #define VAR_ROUND_ROBIN 336 229 #define VAR_ZONESTATS 337 230 #define VAR_REUSEPORT 338 231 #define VAR_VERSION 339 232 #define VAR_MAX_REFRESH_TIME 340 233 #define VAR_MIN_REFRESH_TIME 341 234 #define VAR_MAX_RETRY_TIME 342 235 #define VAR_MIN_RETRY_TIME 343 236 #define VAR_MULTI_MASTER_CHECK 344 237 #define VAR_MINIMAL_RESPONSES 345 238 #define VAR_REFUSE_ANY 346 239 #define VAR_USE_SYSTEMD 347 240 #define VAR_DNSTAP 348 241 #define VAR_DNSTAP_ENABLE 349 242 #define VAR_DNSTAP_SOCKET_PATH 350 243 #define VAR_DNSTAP_SEND_IDENTITY 351 244 #define VAR_DNSTAP_SEND_VERSION 352 245 #define VAR_DNSTAP_IDENTITY 353 246 #define VAR_DNSTAP_VERSION 354 247 #define VAR_DNSTAP_LOG_AUTH_QUERY_MESSAGES 355 248 #define VAR_DNSTAP_LOG_AUTH_RESPONSE_MESSAGES 356 249 250 /* Value type. */ 251 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 252 253 union YYSTYPE 254 { 255 #line 42 "configparser.y" /* yacc.c:1910 */ 256 257 char* str; 258 259 #line 260 "configparser.h" /* yacc.c:1910 */ 260 }; 261 262 typedef union YYSTYPE YYSTYPE; 263 # define YYSTYPE_IS_TRIVIAL 1 264 # define YYSTYPE_IS_DECLARED 1 265 #endif 266 267 268 extern YYSTYPE yylval; 269 270 int yyparse (void); 271 272 #endif /* !YY_YY_CONFIGPARSER_H_INCLUDED */ 273