/* A Bison parser, made by GNU Bison 3.3.2. */ /* Bison interface for Yacc-like parsers in C Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ /* As a special exception, you may create a larger work that contains part or all of the Bison parser skeleton and distribute that work under terms of your choice, so long as that work isn't itself a parser generator using the skeleton or a modified version thereof as a parser skeleton. Alternatively, if you modify or redistribute the parser skeleton itself, you may (at your option) remove this special exception, which will cause the skeleton and the resulting Bison output files to be licensed under the GNU General Public License without this special exception. This special exception was added by the Free Software Foundation in version 2.2 of Bison. */ /* Undocumented macros, especially those whose name start with YY_, are private implementation details. Do not rely on them. */ #ifndef YY_SOCKS_YY_CONFIG_PARSE_H_INCLUDED # define YY_SOCKS_YY_CONFIG_PARSE_H_INCLUDED /* Debug traces. */ #ifndef YYDEBUG # define YYDEBUG 0 #endif #if YYDEBUG extern int socks_yydebug; #endif /* Token type. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE enum yytokentype { ALARM = 258, ALARMTYPE_DATA = 259, ALARMTYPE_DISCONNECT = 260, ALARMIF_INTERNAL = 261, ALARMIF_EXTERNAL = 262, TCPOPTION_DISABLED = 263, ECN = 264, SACK = 265, TIMESTAMPS = 266, WSCALE = 267, MTU_ERROR = 268, CLIENTCOMPATIBILITY = 269, NECGSSAPI = 270, CLIENTRULE = 271, HOSTIDRULE = 272, SOCKSRULE = 273, COMPATIBILITY = 274, SAMEPORT = 275, DRAFT_5_05 = 276, CONNECTTIMEOUT = 277, TCP_FIN_WAIT = 278, CPU = 279, MASK = 280, SCHEDULE = 281, CPUMASK_ANYCPU = 282, DEBUGGING = 283, DEPRECATED = 284, ERRORLOG = 285, LOGOUTPUT = 286, LOGFILE = 287, LOGTYPE_ERROR = 288, LOGTYPE_TCP_DISABLED = 289, LOGTYPE_TCP_ENABLED = 290, LOGIF_INTERNAL = 291, LOGIF_EXTERNAL = 292, ERRORVALUE = 293, EXTENSION = 294, BIND = 295, PRIVILEGED = 296, EXTERNAL_PROTOCOL = 297, INTERNAL_PROTOCOL = 298, EXTERNAL_ROTATION = 299, SAMESAME = 300, GROUPNAME = 301, HOSTID = 302, HOSTINDEX = 303, INTERFACE = 304, SOCKETOPTION_SYMBOLICVALUE = 305, INTERNAL = 306, EXTERNAL = 307, INTERNALSOCKET = 308, EXTERNALSOCKET = 309, IOTIMEOUT = 310, IOTIMEOUT_TCP = 311, IOTIMEOUT_UDP = 312, NEGOTIATETIMEOUT = 313, LIBWRAP_FILE = 314, LOGLEVEL = 315, SOCKSMETHOD = 316, CLIENTMETHOD = 317, METHOD = 318, METHODNAME = 319, NONE = 320, BSDAUTH = 321, GSSAPI = 322, PAM_ADDRESS = 323, PAM_ANY = 324, PAM_USERNAME = 325, RFC931 = 326, UNAME = 327, MONITOR = 328, PROCESSTYPE = 329, PROC_MAXREQUESTS = 330, PROC_MAXLIFETIME = 331, REALM = 332, REALNAME = 333, RESOLVEPROTOCOL = 334, REQUIRED = 335, SCHEDULEPOLICY = 336, SERVERCONFIG = 337, CLIENTCONFIG = 338, SOCKET = 339, CLIENTSIDE_SOCKET = 340, SNDBUF = 341, RCVBUF = 342, SOCKETPROTOCOL = 343, SOCKETOPTION_OPTID = 344, SRCHOST = 345, NODNSMISMATCH = 346, NODNSUNKNOWN = 347, CHECKREPLYAUTH = 348, USERNAME = 349, USER_PRIVILEGED = 350, USER_UNPRIVILEGED = 351, USER_LIBWRAP = 352, WORD__IN = 353, ROUTE = 354, VIA = 355, GLOBALROUTEOPTION = 356, BADROUTE_EXPIRE = 357, MAXFAIL = 358, PORT = 359, NUMBER = 360, BANDWIDTH = 361, BOUNCE = 362, BSDAUTHSTYLE = 363, BSDAUTHSTYLENAME = 364, COMMAND = 365, COMMAND_BIND = 366, COMMAND_CONNECT = 367, COMMAND_UDPASSOCIATE = 368, COMMAND_BINDREPLY = 369, COMMAND_UDPREPLY = 370, ACTION = 371, FROM = 372, TO = 373, GSSAPIENCTYPE = 374, GSSAPIENC_ANY = 375, GSSAPIENC_CLEAR = 376, GSSAPIENC_INTEGRITY = 377, GSSAPIENC_CONFIDENTIALITY = 378, GSSAPIENC_PERMESSAGE = 379, GSSAPIKEYTAB = 380, GSSAPISERVICE = 381, GSSAPISERVICENAME = 382, GSSAPIKEYTABNAME = 383, IPV4 = 384, IPV6 = 385, IPVANY = 386, DOMAINNAME = 387, IFNAME = 388, URL = 389, LDAPATTRIBUTE = 390, LDAPATTRIBUTE_AD = 391, LDAPATTRIBUTE_HEX = 392, LDAPATTRIBUTE_AD_HEX = 393, LDAPBASEDN = 394, LDAP_BASEDN = 395, LDAPBASEDN_HEX = 396, LDAPBASEDN_HEX_ALL = 397, LDAPCERTFILE = 398, LDAPCERTPATH = 399, LDAPPORT = 400, LDAPPORTSSL = 401, LDAPDEBUG = 402, LDAPDEPTH = 403, LDAPAUTO = 404, LDAPSEARCHTIME = 405, LDAPDOMAIN = 406, LDAP_DOMAIN = 407, LDAPFILTER = 408, LDAPFILTER_AD = 409, LDAPFILTER_HEX = 410, LDAPFILTER_AD_HEX = 411, LDAPGROUP = 412, LDAPGROUP_NAME = 413, LDAPGROUP_HEX = 414, LDAPGROUP_HEX_ALL = 415, LDAPKEYTAB = 416, LDAPKEYTABNAME = 417, LDAPDEADTIME = 418, LDAPSERVER = 419, LDAPSERVER_NAME = 420, LDAPAUTHSERVER = 421, LDAPAUTHKEYTAB = 422, LDAPSSL = 423, LDAPCERTCHECK = 424, LDAPKEEPREALM = 425, LDAPTIMEOUT = 426, LDAPCACHE = 427, LDAPCACHEPOS = 428, LDAPCACHENEG = 429, LDAPURL = 430, LDAP_URL = 431, LDAPAUTHBASEDN = 432, LDAPAUTHBASEDN_HEX = 433, LDAPAUTHBASEDN_HEX_ALL = 434, LDAPAUTHURL = 435, LDAPAUTHPORT = 436, LDAPAUTHPORTSSL = 437, LDAPAUTHDEBUG = 438, LDAPAUTHSSL = 439, LDAPAUTHAUTO = 440, LDAPAUTHCERTCHECK = 441, LDAPAUTHFILTER = 442, LDAPAUTHDOMAIN = 443, LDAPAUTHCERTFILE = 444, LDAPAUTHCERTPATH = 445, LDAP_FILTER = 446, LDAP_ATTRIBUTE = 447, LDAP_CERTFILE = 448, LDAP_CERTPATH = 449, LIBWRAPSTART = 450, LIBWRAP_ALLOW = 451, LIBWRAP_DENY = 452, LIBWRAP_HOSTS_ACCESS = 453, LINE = 454, OPERATOR = 455, PACSID = 456, PACSID_B64 = 457, PACSID_FLAG = 458, PACSID_NAME = 459, PAMSERVICENAME = 460, PROTOCOL = 461, PROTOCOL_TCP = 462, PROTOCOL_UDP = 463, PROTOCOL_FAKE = 464, PROXYPROTOCOL = 465, PROXYPROTOCOL_SOCKS_V4 = 466, PROXYPROTOCOL_SOCKS_V5 = 467, PROXYPROTOCOL_HTTP = 468, PROXYPROTOCOL_UPNP = 469, REDIRECT = 470, SENDSIDE = 471, RECVSIDE = 472, SERVICENAME = 473, SESSION_INHERITABLE = 474, SESSIONMAX = 475, SESSIONTHROTTLE = 476, SESSIONSTATE_KEY = 477, SESSIONSTATE_MAX = 478, SESSIONSTATE_THROTTLE = 479, RULE_LOG = 480, RULE_LOG_CONNECT = 481, RULE_LOG_DATA = 482, RULE_LOG_DISCONNECT = 483, RULE_LOG_ERROR = 484, RULE_LOG_IOOPERATION = 485, RULE_LOG_TCPINFO = 486, STATEKEY = 487, UDPPORTRANGE = 488, UDPCONNECTDST = 489, USER = 490, GROUP = 491, VERDICT_BLOCK = 492, VERDICT_PASS = 493, YES = 494, NO = 495 }; #endif /* Tokens. */ #define ALARM 258 #define ALARMTYPE_DATA 259 #define ALARMTYPE_DISCONNECT 260 #define ALARMIF_INTERNAL 261 #define ALARMIF_EXTERNAL 262 #define TCPOPTION_DISABLED 263 #define ECN 264 #define SACK 265 #define TIMESTAMPS 266 #define WSCALE 267 #define MTU_ERROR 268 #define CLIENTCOMPATIBILITY 269 #define NECGSSAPI 270 #define CLIENTRULE 271 #define HOSTIDRULE 272 #define SOCKSRULE 273 #define COMPATIBILITY 274 #define SAMEPORT 275 #define DRAFT_5_05 276 #define CONNECTTIMEOUT 277 #define TCP_FIN_WAIT 278 #define CPU 279 #define MASK 280 #define SCHEDULE 281 #define CPUMASK_ANYCPU 282 #define DEBUGGING 283 #define DEPRECATED 284 #define ERRORLOG 285 #define LOGOUTPUT 286 #define LOGFILE 287 #define LOGTYPE_ERROR 288 #define LOGTYPE_TCP_DISABLED 289 #define LOGTYPE_TCP_ENABLED 290 #define LOGIF_INTERNAL 291 #define LOGIF_EXTERNAL 292 #define ERRORVALUE 293 #define EXTENSION 294 #define BIND 295 #define PRIVILEGED 296 #define EXTERNAL_PROTOCOL 297 #define INTERNAL_PROTOCOL 298 #define EXTERNAL_ROTATION 299 #define SAMESAME 300 #define GROUPNAME 301 #define HOSTID 302 #define HOSTINDEX 303 #define INTERFACE 304 #define SOCKETOPTION_SYMBOLICVALUE 305 #define INTERNAL 306 #define EXTERNAL 307 #define INTERNALSOCKET 308 #define EXTERNALSOCKET 309 #define IOTIMEOUT 310 #define IOTIMEOUT_TCP 311 #define IOTIMEOUT_UDP 312 #define NEGOTIATETIMEOUT 313 #define LIBWRAP_FILE 314 #define LOGLEVEL 315 #define SOCKSMETHOD 316 #define CLIENTMETHOD 317 #define METHOD 318 #define METHODNAME 319 #define NONE 320 #define BSDAUTH 321 #define GSSAPI 322 #define PAM_ADDRESS 323 #define PAM_ANY 324 #define PAM_USERNAME 325 #define RFC931 326 #define UNAME 327 #define MONITOR 328 #define PROCESSTYPE 329 #define PROC_MAXREQUESTS 330 #define PROC_MAXLIFETIME 331 #define REALM 332 #define REALNAME 333 #define RESOLVEPROTOCOL 334 #define REQUIRED 335 #define SCHEDULEPOLICY 336 #define SERVERCONFIG 337 #define CLIENTCONFIG 338 #define SOCKET 339 #define CLIENTSIDE_SOCKET 340 #define SNDBUF 341 #define RCVBUF 342 #define SOCKETPROTOCOL 343 #define SOCKETOPTION_OPTID 344 #define SRCHOST 345 #define NODNSMISMATCH 346 #define NODNSUNKNOWN 347 #define CHECKREPLYAUTH 348 #define USERNAME 349 #define USER_PRIVILEGED 350 #define USER_UNPRIVILEGED 351 #define USER_LIBWRAP 352 #define WORD__IN 353 #define ROUTE 354 #define VIA 355 #define GLOBALROUTEOPTION 356 #define BADROUTE_EXPIRE 357 #define MAXFAIL 358 #define PORT 359 #define NUMBER 360 #define BANDWIDTH 361 #define BOUNCE 362 #define BSDAUTHSTYLE 363 #define BSDAUTHSTYLENAME 364 #define COMMAND 365 #define COMMAND_BIND 366 #define COMMAND_CONNECT 367 #define COMMAND_UDPASSOCIATE 368 #define COMMAND_BINDREPLY 369 #define COMMAND_UDPREPLY 370 #define ACTION 371 #define FROM 372 #define TO 373 #define GSSAPIENCTYPE 374 #define GSSAPIENC_ANY 375 #define GSSAPIENC_CLEAR 376 #define GSSAPIENC_INTEGRITY 377 #define GSSAPIENC_CONFIDENTIALITY 378 #define GSSAPIENC_PERMESSAGE 379 #define GSSAPIKEYTAB 380 #define GSSAPISERVICE 381 #define GSSAPISERVICENAME 382 #define GSSAPIKEYTABNAME 383 #define IPV4 384 #define IPV6 385 #define IPVANY 386 #define DOMAINNAME 387 #define IFNAME 388 #define URL 389 #define LDAPATTRIBUTE 390 #define LDAPATTRIBUTE_AD 391 #define LDAPATTRIBUTE_HEX 392 #define LDAPATTRIBUTE_AD_HEX 393 #define LDAPBASEDN 394 #define LDAP_BASEDN 395 #define LDAPBASEDN_HEX 396 #define LDAPBASEDN_HEX_ALL 397 #define LDAPCERTFILE 398 #define LDAPCERTPATH 399 #define LDAPPORT 400 #define LDAPPORTSSL 401 #define LDAPDEBUG 402 #define LDAPDEPTH 403 #define LDAPAUTO 404 #define LDAPSEARCHTIME 405 #define LDAPDOMAIN 406 #define LDAP_DOMAIN 407 #define LDAPFILTER 408 #define LDAPFILTER_AD 409 #define LDAPFILTER_HEX 410 #define LDAPFILTER_AD_HEX 411 #define LDAPGROUP 412 #define LDAPGROUP_NAME 413 #define LDAPGROUP_HEX 414 #define LDAPGROUP_HEX_ALL 415 #define LDAPKEYTAB 416 #define LDAPKEYTABNAME 417 #define LDAPDEADTIME 418 #define LDAPSERVER 419 #define LDAPSERVER_NAME 420 #define LDAPAUTHSERVER 421 #define LDAPAUTHKEYTAB 422 #define LDAPSSL 423 #define LDAPCERTCHECK 424 #define LDAPKEEPREALM 425 #define LDAPTIMEOUT 426 #define LDAPCACHE 427 #define LDAPCACHEPOS 428 #define LDAPCACHENEG 429 #define LDAPURL 430 #define LDAP_URL 431 #define LDAPAUTHBASEDN 432 #define LDAPAUTHBASEDN_HEX 433 #define LDAPAUTHBASEDN_HEX_ALL 434 #define LDAPAUTHURL 435 #define LDAPAUTHPORT 436 #define LDAPAUTHPORTSSL 437 #define LDAPAUTHDEBUG 438 #define LDAPAUTHSSL 439 #define LDAPAUTHAUTO 440 #define LDAPAUTHCERTCHECK 441 #define LDAPAUTHFILTER 442 #define LDAPAUTHDOMAIN 443 #define LDAPAUTHCERTFILE 444 #define LDAPAUTHCERTPATH 445 #define LDAP_FILTER 446 #define LDAP_ATTRIBUTE 447 #define LDAP_CERTFILE 448 #define LDAP_CERTPATH 449 #define LIBWRAPSTART 450 #define LIBWRAP_ALLOW 451 #define LIBWRAP_DENY 452 #define LIBWRAP_HOSTS_ACCESS 453 #define LINE 454 #define OPERATOR 455 #define PACSID 456 #define PACSID_B64 457 #define PACSID_FLAG 458 #define PACSID_NAME 459 #define PAMSERVICENAME 460 #define PROTOCOL 461 #define PROTOCOL_TCP 462 #define PROTOCOL_UDP 463 #define PROTOCOL_FAKE 464 #define PROXYPROTOCOL 465 #define PROXYPROTOCOL_SOCKS_V4 466 #define PROXYPROTOCOL_SOCKS_V5 467 #define PROXYPROTOCOL_HTTP 468 #define PROXYPROTOCOL_UPNP 469 #define REDIRECT 470 #define SENDSIDE 471 #define RECVSIDE 472 #define SERVICENAME 473 #define SESSION_INHERITABLE 474 #define SESSIONMAX 475 #define SESSIONTHROTTLE 476 #define SESSIONSTATE_KEY 477 #define SESSIONSTATE_MAX 478 #define SESSIONSTATE_THROTTLE 479 #define RULE_LOG 480 #define RULE_LOG_CONNECT 481 #define RULE_LOG_DATA 482 #define RULE_LOG_DISCONNECT 483 #define RULE_LOG_ERROR 484 #define RULE_LOG_IOOPERATION 485 #define RULE_LOG_TCPINFO 486 #define STATEKEY 487 #define UDPPORTRANGE 488 #define UDPCONNECTDST 489 #define USER 490 #define GROUP 491 #define VERDICT_BLOCK 492 #define VERDICT_PASS 493 #define YES 494 #define NO 495 /* Value type. */ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED union YYSTYPE { #line 417 "config_parse.y" /* yacc.c:1921 */ struct { uid_t uid; gid_t gid; } uid; struct { valuetype_t valuetype; const int *valuev; } error; struct { const char *oldname; const char *newname; } deprecated; char *string; int method; long long number; #line 559 "config_parse.h" /* yacc.c:1921 */ }; typedef union YYSTYPE YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_DECLARED 1 #endif extern YYSTYPE socks_yylval; int socks_yyparse (void); #endif /* !YY_SOCKS_YY_CONFIG_PARSE_H_INCLUDED */