hitch  1.5.2
About: Hitch is a libev-based high performance SSL/TLS proxy that terminates TLS/SSL connections and forwards the unencrypted traffic to some backend.
  Fossies Dox: hitch-1.5.2.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

cfg_parser.c File Reference
#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include "configuration.h"
#include "foreign/vas.h"
#include "foreign/miniobj.h"
#include "foreign/uthash.h"
#include <stddef.h>
Include dependency graph for cfg_parser.c:

Go to the source code of this file.

Data Structures

union  YYSTYPE
 
union  yyalloc
 

Macros

#define YYBISON   1
 
#define YYBISON_VERSION   "3.3.2"
 
#define YYSKELETON_NAME   "yacc.c"
 
#define YYPURE   0
 
#define YYPUSH   0
 
#define YYPULL   1
 
#define YY_NULLPTR   ((void*)0)
 
#define YYERROR_VERBOSE   0
 
#define YY_YY_CFG_PARSER_H_INCLUDED
 
#define YYDEBUG   1
 
#define YYTOKENTYPE
 
#define INT   258
 
#define UINT   259
 
#define BOOL   260
 
#define STRING   261
 
#define TOK_CIPHERS   262
 
#define TOK_SSL_ENGINE   263
 
#define TOK_PREFER_SERVER_CIPHERS   264
 
#define TOK_BACKEND   265
 
#define TOK_FRONTEND   266
 
#define TOK_WORKERS   267
 
#define TOK_BACKLOG   268
 
#define TOK_KEEPALIVE   269
 
#define TOK_CHROOT   270
 
#define TOK_USER   271
 
#define TOK_GROUP   272
 
#define TOK_QUIET   273
 
#define TOK_SYSLOG   274
 
#define TOK_SYSLOG_FACILITY   275
 
#define TOK_PARAM_SYSLOG_FACILITY   276
 
#define TOK_DAEMON   277
 
#define TOK_WRITE_IP   278
 
#define TOK_WRITE_PROXY   279
 
#define TOK_WRITE_PROXY_V1   280
 
#define TOK_WRITE_PROXY_V2   281
 
#define TOK_PEM_FILE   282
 
#define TOK_PROXY_PROXY   283
 
#define TOK_BACKEND_CONNECT_TIMEOUT   284
 
#define TOK_SSL_HANDSHAKE_TIMEOUT   285
 
#define TOK_RECV_BUFSIZE   286
 
#define TOK_SEND_BUFSIZE   287
 
#define TOK_LOG_FILENAME   288
 
#define TOK_RING_SLOTS   289
 
#define TOK_RING_DATA_LEN   290
 
#define TOK_PIDFILE   291
 
#define TOK_SNI_NOMATCH_ABORT   292
 
#define TOK_SSL   293
 
#define TOK_TLS   294
 
#define TOK_HOST   295
 
#define TOK_PORT   296
 
#define TOK_MATCH_GLOBAL   297
 
#define TOK_PB_CERT   298
 
#define TOK_PB_OCSP_FILE   299
 
#define TOK_OCSP_VERIFY   300
 
#define TOK_OCSP_DIR   301
 
#define TOK_OCSP_RESP_TMO   302
 
#define TOK_OCSP_CONN_TMO   303
 
#define TOK_ALPN_PROTOS   304
 
#define TOK_TLS_PROTOS   305
 
#define TOK_SSLv3   306
 
#define TOK_TLSv1_0   307
 
#define TOK_TLSv1_1   308
 
#define TOK_TLSv1_2   309
 
#define TOK_TLSv1_3   310
 
#define TOK_SESSION_CACHE   311
 
#define TOK_SHARED_CACHE_LISTEN   312
 
#define TOK_SHARED_CACHE_PEER   313
 
#define TOK_SHARED_CACHE_IF   314
 
#define TOK_PRIVATE_KEY   315
 
#define TOK_BACKEND_REFRESH   316
 
#define TOK_OCSP_REFRESH_INTERVAL   317
 
#define TOK_PEM_DIR   318
 
#define TOK_PEM_DIR_GLOB   319
 
#define TOK_LOG_LEVEL   320
 
#define TOK_PROXY_TLV   321
 
#define TOK_PROXY_AUTHORITY   322
 
#define TOK_TFO   323
 
#define YYSTYPE_IS_TRIVIAL   1
 
#define YYSTYPE_IS_DECLARED   1
 
#define YYSIZE_T   size_t
 
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
 
#define YY_(Msgid)   Msgid
 
#define YY_ATTRIBUTE(Spec)   /* empty */
 
#define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
 
#define YY_ATTRIBUTE_UNUSED   YY_ATTRIBUTE ((__unused__))
 
#define YYUSE(E)   ((void) (E))
 
#define YY_INITIAL_VALUE(Value)   Value
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
 
#define YYSTACK_ALLOC   YYMALLOC
 
#define YYSTACK_FREE   YYFREE
 
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
 
#define YYMALLOC   malloc
 
#define YYFREE   free
 
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
 
#define YYSTACK_BYTES(N)
 
#define YYCOPY_NEEDED   1
 
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
 
#define YYCOPY(Dst, Src, Count)
 
#define YYFINAL   138
 
#define YYLAST   200
 
#define YYNTOKENS   72
 
#define YYNNTS   76
 
#define YYNRULES   148
 
#define YYNSTATES   272
 
#define YYUNDEFTOK   2
 
#define YYMAXUTOK   323
 
#define YYTRANSLATE(YYX)   ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
 
#define YYPACT_NINF   -73
 
#define yypact_value_is_default(Yystate)   (!!((Yystate) == (-73)))
 
#define YYTABLE_NINF   -1
 
#define yytable_value_is_error(Yytable_value)   0
 
#define yyerrok   (yyerrstatus = 0)
 
#define yyclearin   (yychar = YYEMPTY)
 
#define YYEMPTY   (-2)
 
#define YYEOF   0
 
#define YYACCEPT   goto yyacceptlab
 
#define YYABORT   goto yyabortlab
 
#define YYERROR   goto yyerrorlab
 
#define YYRECOVERING()   (!!yyerrstatus)
 
#define YYBACKUP(Token, Value)
 
#define YYTERROR   1
 
#define YYERRCODE   256
 
#define YYFPRINTF   fprintf
 
#define YYDPRINTF(Args)
 
#define YY_LOCATION_PRINT(File, Loc)   ((void) 0)
 
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 
#define YY_STACK_PRINT(Bottom, Top)
 
#define YY_REDUCE_PRINT(Rule)
 
#define YYINITDEPTH   200
 
#define YYMAXDEPTH   10000
 
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
 

Typedefs

typedef union YYSTYPE YYSTYPE
 
typedef unsigned char yytype_uint8
 
typedef signed char yytype_int8
 
typedef unsigned short yytype_uint16
 
typedef short yytype_int16
 

Enumerations

enum  yytokentype {
  INT = 258, UINT = 259, BOOL = 260, STRING = 261,
  TOK_CIPHERS = 262, TOK_SSL_ENGINE = 263, TOK_PREFER_SERVER_CIPHERS = 264, TOK_BACKEND = 265,
  TOK_FRONTEND = 266, TOK_WORKERS = 267, TOK_BACKLOG = 268, TOK_KEEPALIVE = 269,
  TOK_CHROOT = 270, TOK_USER = 271, TOK_GROUP = 272, TOK_QUIET = 273,
  TOK_SYSLOG = 274, TOK_SYSLOG_FACILITY = 275, TOK_PARAM_SYSLOG_FACILITY = 276, TOK_DAEMON = 277,
  TOK_WRITE_IP = 278, TOK_WRITE_PROXY = 279, TOK_WRITE_PROXY_V1 = 280, TOK_WRITE_PROXY_V2 = 281,
  TOK_PEM_FILE = 282, TOK_PROXY_PROXY = 283, TOK_BACKEND_CONNECT_TIMEOUT = 284, TOK_SSL_HANDSHAKE_TIMEOUT = 285,
  TOK_RECV_BUFSIZE = 286, TOK_SEND_BUFSIZE = 287, TOK_LOG_FILENAME = 288, TOK_RING_SLOTS = 289,
  TOK_RING_DATA_LEN = 290, TOK_PIDFILE = 291, TOK_SNI_NOMATCH_ABORT = 292, TOK_SSL = 293,
  TOK_TLS = 294, TOK_HOST = 295, TOK_PORT = 296, TOK_MATCH_GLOBAL = 297,
  TOK_PB_CERT = 298, TOK_PB_OCSP_FILE = 299, TOK_OCSP_VERIFY = 300, TOK_OCSP_DIR = 301,
  TOK_OCSP_RESP_TMO = 302, TOK_OCSP_CONN_TMO = 303, TOK_ALPN_PROTOS = 304, TOK_TLS_PROTOS = 305,
  TOK_SSLv3 = 306, TOK_TLSv1_0 = 307, TOK_TLSv1_1 = 308, TOK_TLSv1_2 = 309,
  TOK_TLSv1_3 = 310, TOK_SESSION_CACHE = 311, TOK_SHARED_CACHE_LISTEN = 312, TOK_SHARED_CACHE_PEER = 313,
  TOK_SHARED_CACHE_IF = 314, TOK_PRIVATE_KEY = 315, TOK_BACKEND_REFRESH = 316, TOK_OCSP_REFRESH_INTERVAL = 317,
  TOK_PEM_DIR = 318, TOK_PEM_DIR_GLOB = 319, TOK_LOG_LEVEL = 320, TOK_PROXY_TLV = 321,
  TOK_PROXY_AUTHORITY = 322, TOK_TFO = 323, INT = 258, UINT = 259,
  BOOL = 260, STRING = 261, TOK_CIPHERS = 262, TOK_SSL_ENGINE = 263,
  TOK_PREFER_SERVER_CIPHERS = 264, TOK_BACKEND = 265, TOK_FRONTEND = 266, TOK_WORKERS = 267,
  TOK_BACKLOG = 268, TOK_KEEPALIVE = 269, TOK_CHROOT = 270, TOK_USER = 271,
  TOK_GROUP = 272, TOK_QUIET = 273, TOK_SYSLOG = 274, TOK_SYSLOG_FACILITY = 275,
  TOK_PARAM_SYSLOG_FACILITY = 276, TOK_DAEMON = 277, TOK_WRITE_IP = 278, TOK_WRITE_PROXY = 279,
  TOK_WRITE_PROXY_V1 = 280, TOK_WRITE_PROXY_V2 = 281, TOK_PEM_FILE = 282, TOK_PROXY_PROXY = 283,
  TOK_BACKEND_CONNECT_TIMEOUT = 284, TOK_SSL_HANDSHAKE_TIMEOUT = 285, TOK_RECV_BUFSIZE = 286, TOK_SEND_BUFSIZE = 287,
  TOK_LOG_FILENAME = 288, TOK_RING_SLOTS = 289, TOK_RING_DATA_LEN = 290, TOK_PIDFILE = 291,
  TOK_SNI_NOMATCH_ABORT = 292, TOK_SSL = 293, TOK_TLS = 294, TOK_HOST = 295,
  TOK_PORT = 296, TOK_MATCH_GLOBAL = 297, TOK_PB_CERT = 298, TOK_PB_OCSP_FILE = 299,
  TOK_OCSP_VERIFY = 300, TOK_OCSP_DIR = 301, TOK_OCSP_RESP_TMO = 302, TOK_OCSP_CONN_TMO = 303,
  TOK_ALPN_PROTOS = 304, TOK_TLS_PROTOS = 305, TOK_SSLv3 = 306, TOK_TLSv1_0 = 307,
  TOK_TLSv1_1 = 308, TOK_TLSv1_2 = 309, TOK_TLSv1_3 = 310, TOK_SESSION_CACHE = 311,
  TOK_SHARED_CACHE_LISTEN = 312, TOK_SHARED_CACHE_PEER = 313, TOK_SHARED_CACHE_IF = 314, TOK_PRIVATE_KEY = 315,
  TOK_BACKEND_REFRESH = 316, TOK_OCSP_REFRESH_INTERVAL = 317, TOK_PEM_DIR = 318, TOK_PEM_DIR_GLOB = 319,
  TOK_LOG_LEVEL = 320, TOK_PROXY_TLV = 321, TOK_PROXY_AUTHORITY = 322, TOK_TFO = 323
}
 

Functions

int yylex (void)
 
int yyparse (hitch_config *)
 
int yyget_lineno (void)
 
void config_error_set (char *,...)
 
int config_param_validate (char *k, char *v, hitch_config *cfg, char *file, int line)
 
int front_arg_add (hitch_config *cfg, struct front_arg *fa)
 
struct front_argfront_arg_new (void)
 
void front_arg_destroy (struct front_arg *fa)
 
struct cfg_cert_filecfg_cert_file_new (void)
 
void cfg_cert_file_free (struct cfg_cert_file **cfptr)
 
int cfg_cert_vfy (struct cfg_cert_file *cf)
 
void yyerror (hitch_config *, const char *)
 
void cfg_cert_add (struct cfg_cert_file *cf, struct cfg_cert_file **dst)
 
void * malloc (size_t)
 
void free (void *)
 
static void yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const *const yyvaluep, hitch_config *cfg)
 
static void yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const *const yyvaluep, hitch_config *cfg)
 
static void yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
 
static void yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule, hitch_config *cfg)
 
static void yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, hitch_config *cfg)
 

Variables

FILE * yyin
 
static struct front_argcur_fa
 
static struct cfg_cert_filecur_pem
 
char input_line [512]
 
int yydebug
 
YYSTYPE yylval
 
static const yytype_uint8 yytranslate []
 
static const yytype_uint16 yyrline []
 
static const char *const yytname []
 
static const yytype_int16 yypact []
 
static const yytype_uint8 yydefact []
 
static const yytype_int16 yypgoto []
 
static const yytype_int16 yydefgoto []
 
static const yytype_uint16 yytable []
 
static const yytype_int16 yycheck []
 
static const yytype_uint8 yystos []
 
static const yytype_uint8 yyr1 []
 
static const yytype_uint8 yyr2 []
 
int yychar
 
int yynerrs
 

Macro Definition Documentation

◆ BOOL

#define BOOL   260

Definition at line 213 of file cfg_parser.c.

◆ INT

#define INT   258

Definition at line 211 of file cfg_parser.c.

◆ STRING

#define STRING   261

Definition at line 214 of file cfg_parser.c.

◆ TOK_ALPN_PROTOS

#define TOK_ALPN_PROTOS   304

Definition at line 257 of file cfg_parser.c.

◆ TOK_BACKEND

#define TOK_BACKEND   265

Definition at line 218 of file cfg_parser.c.

◆ TOK_BACKEND_CONNECT_TIMEOUT

#define TOK_BACKEND_CONNECT_TIMEOUT   284

Definition at line 237 of file cfg_parser.c.

◆ TOK_BACKEND_REFRESH

#define TOK_BACKEND_REFRESH   316

Definition at line 269 of file cfg_parser.c.

◆ TOK_BACKLOG

#define TOK_BACKLOG   268

Definition at line 221 of file cfg_parser.c.

◆ TOK_CHROOT

#define TOK_CHROOT   270

Definition at line 223 of file cfg_parser.c.

◆ TOK_CIPHERS

#define TOK_CIPHERS   262

Definition at line 215 of file cfg_parser.c.

◆ TOK_DAEMON

#define TOK_DAEMON   277

Definition at line 230 of file cfg_parser.c.

◆ TOK_FRONTEND

#define TOK_FRONTEND   266

Definition at line 219 of file cfg_parser.c.

◆ TOK_GROUP

#define TOK_GROUP   272

Definition at line 225 of file cfg_parser.c.

◆ TOK_HOST

#define TOK_HOST   295

Definition at line 248 of file cfg_parser.c.

◆ TOK_KEEPALIVE

#define TOK_KEEPALIVE   269

Definition at line 222 of file cfg_parser.c.

◆ TOK_LOG_FILENAME

#define TOK_LOG_FILENAME   288

Definition at line 241 of file cfg_parser.c.

◆ TOK_LOG_LEVEL

#define TOK_LOG_LEVEL   320

Definition at line 273 of file cfg_parser.c.

◆ TOK_MATCH_GLOBAL

#define TOK_MATCH_GLOBAL   297

Definition at line 250 of file cfg_parser.c.

◆ TOK_OCSP_CONN_TMO

#define TOK_OCSP_CONN_TMO   303

Definition at line 256 of file cfg_parser.c.

◆ TOK_OCSP_DIR

#define TOK_OCSP_DIR   301

Definition at line 254 of file cfg_parser.c.

◆ TOK_OCSP_REFRESH_INTERVAL

#define TOK_OCSP_REFRESH_INTERVAL   317

Definition at line 270 of file cfg_parser.c.

◆ TOK_OCSP_RESP_TMO

#define TOK_OCSP_RESP_TMO   302

Definition at line 255 of file cfg_parser.c.

◆ TOK_OCSP_VERIFY

#define TOK_OCSP_VERIFY   300

Definition at line 253 of file cfg_parser.c.

◆ TOK_PARAM_SYSLOG_FACILITY

#define TOK_PARAM_SYSLOG_FACILITY   276

Definition at line 229 of file cfg_parser.c.

◆ TOK_PB_CERT

#define TOK_PB_CERT   298

Definition at line 251 of file cfg_parser.c.

◆ TOK_PB_OCSP_FILE

#define TOK_PB_OCSP_FILE   299

Definition at line 252 of file cfg_parser.c.

◆ TOK_PEM_DIR

#define TOK_PEM_DIR   318

Definition at line 271 of file cfg_parser.c.

◆ TOK_PEM_DIR_GLOB

#define TOK_PEM_DIR_GLOB   319

Definition at line 272 of file cfg_parser.c.

◆ TOK_PEM_FILE

#define TOK_PEM_FILE   282

Definition at line 235 of file cfg_parser.c.

◆ TOK_PIDFILE

#define TOK_PIDFILE   291

Definition at line 244 of file cfg_parser.c.

◆ TOK_PORT

#define TOK_PORT   296

Definition at line 249 of file cfg_parser.c.

◆ TOK_PREFER_SERVER_CIPHERS

#define TOK_PREFER_SERVER_CIPHERS   264

Definition at line 217 of file cfg_parser.c.

◆ TOK_PRIVATE_KEY

#define TOK_PRIVATE_KEY   315

Definition at line 268 of file cfg_parser.c.

◆ TOK_PROXY_AUTHORITY

#define TOK_PROXY_AUTHORITY   322

Definition at line 275 of file cfg_parser.c.

◆ TOK_PROXY_PROXY

#define TOK_PROXY_PROXY   283

Definition at line 236 of file cfg_parser.c.

◆ TOK_PROXY_TLV

#define TOK_PROXY_TLV   321

Definition at line 274 of file cfg_parser.c.

◆ TOK_QUIET

#define TOK_QUIET   273

Definition at line 226 of file cfg_parser.c.

◆ TOK_RECV_BUFSIZE

#define TOK_RECV_BUFSIZE   286

Definition at line 239 of file cfg_parser.c.

◆ TOK_RING_DATA_LEN

#define TOK_RING_DATA_LEN   290

Definition at line 243 of file cfg_parser.c.

◆ TOK_RING_SLOTS

#define TOK_RING_SLOTS   289

Definition at line 242 of file cfg_parser.c.

◆ TOK_SEND_BUFSIZE

#define TOK_SEND_BUFSIZE   287

Definition at line 240 of file cfg_parser.c.

◆ TOK_SESSION_CACHE

#define TOK_SESSION_CACHE   311

Definition at line 264 of file cfg_parser.c.

◆ TOK_SHARED_CACHE_IF

#define TOK_SHARED_CACHE_IF   314

Definition at line 267 of file cfg_parser.c.

◆ TOK_SHARED_CACHE_LISTEN

#define TOK_SHARED_CACHE_LISTEN   312

Definition at line 265 of file cfg_parser.c.

◆ TOK_SHARED_CACHE_PEER

#define TOK_SHARED_CACHE_PEER   313

Definition at line 266 of file cfg_parser.c.

◆ TOK_SNI_NOMATCH_ABORT

#define TOK_SNI_NOMATCH_ABORT   292

Definition at line 245 of file cfg_parser.c.

◆ TOK_SSL

#define TOK_SSL   293

Definition at line 246 of file cfg_parser.c.

◆ TOK_SSL_ENGINE

#define TOK_SSL_ENGINE   263

Definition at line 216 of file cfg_parser.c.

◆ TOK_SSL_HANDSHAKE_TIMEOUT

#define TOK_SSL_HANDSHAKE_TIMEOUT   285

Definition at line 238 of file cfg_parser.c.

◆ TOK_SSLv3

#define TOK_SSLv3   306

Definition at line 259 of file cfg_parser.c.

◆ TOK_SYSLOG

#define TOK_SYSLOG   274

Definition at line 227 of file cfg_parser.c.

◆ TOK_SYSLOG_FACILITY

#define TOK_SYSLOG_FACILITY   275

Definition at line 228 of file cfg_parser.c.

◆ TOK_TFO

#define TOK_TFO   323

Definition at line 276 of file cfg_parser.c.

◆ TOK_TLS

#define TOK_TLS   294

Definition at line 247 of file cfg_parser.c.

◆ TOK_TLS_PROTOS

#define TOK_TLS_PROTOS   305

Definition at line 258 of file cfg_parser.c.

◆ TOK_TLSv1_0

#define TOK_TLSv1_0   307

Definition at line 260 of file cfg_parser.c.

◆ TOK_TLSv1_1

#define TOK_TLSv1_1   308

Definition at line 261 of file cfg_parser.c.

◆ TOK_TLSv1_2

#define TOK_TLSv1_2   309

Definition at line 262 of file cfg_parser.c.

◆ TOK_TLSv1_3

#define TOK_TLSv1_3   310

Definition at line 263 of file cfg_parser.c.

◆ TOK_USER

#define TOK_USER   271

Definition at line 224 of file cfg_parser.c.

◆ TOK_WORKERS

#define TOK_WORKERS   267

Definition at line 220 of file cfg_parser.c.

◆ TOK_WRITE_IP

#define TOK_WRITE_IP   278

Definition at line 231 of file cfg_parser.c.

◆ TOK_WRITE_PROXY

#define TOK_WRITE_PROXY   279

Definition at line 232 of file cfg_parser.c.

◆ TOK_WRITE_PROXY_V1

#define TOK_WRITE_PROXY_V1   280

Definition at line 233 of file cfg_parser.c.

◆ TOK_WRITE_PROXY_V2

#define TOK_WRITE_PROXY_V2   281

Definition at line 234 of file cfg_parser.c.

◆ UINT

#define UINT   259

Definition at line 212 of file cfg_parser.c.

◆ YY_

#define YY_ (   Msgid)    Msgid

Definition at line 356 of file cfg_parser.c.

◆ YY_ATTRIBUTE

#define YY_ATTRIBUTE (   Spec)    /* empty */

Definition at line 366 of file cfg_parser.c.

◆ YY_ATTRIBUTE_PURE

#define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))

Definition at line 371 of file cfg_parser.c.

◆ YY_ATTRIBUTE_UNUSED

#define YY_ATTRIBUTE_UNUSED   YY_ATTRIBUTE ((__unused__))

Definition at line 375 of file cfg_parser.c.

◆ YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN

#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN

Definition at line 397 of file cfg_parser.c.

◆ YY_IGNORE_MAYBE_UNINITIALIZED_END

#define YY_IGNORE_MAYBE_UNINITIALIZED_END

Definition at line 398 of file cfg_parser.c.

◆ YY_INITIAL_VALUE

#define YY_INITIAL_VALUE (   Value)    Value

Definition at line 394 of file cfg_parser.c.

◆ YY_LOCATION_PRINT

#define YY_LOCATION_PRINT (   File,
  Loc 
)    ((void) 0)

Definition at line 962 of file cfg_parser.c.

◆ YY_NULLPTR

#define YY_NULLPTR   ((void*)0)

Definition at line 113 of file cfg_parser.c.

◆ YY_REDUCE_PRINT

#define YY_REDUCE_PRINT (   Rule)
Value:
do { \
if (yydebug) \
yy_reduce_print (yyssp, yyvsp, Rule, cfg); \
} while (0)

Definition at line 1060 of file cfg_parser.c.

◆ YY_STACK_PRINT

#define YY_STACK_PRINT (   Bottom,
  Top 
)
Value:
do { \
if (yydebug) \
yy_stack_print ((Bottom), (Top)); \
} while (0)

Definition at line 1029 of file cfg_parser.c.

◆ YY_SYMBOL_PRINT

#define YY_SYMBOL_PRINT (   Title,
  Type,
  Value,
  Location 
)
Value:
do { \
if (yydebug) \
{ \
YYFPRINTF (stderr, "%s ", Title); \
yy_symbol_print (stderr, \
Type, Value, cfg); \
YYFPRINTF (stderr, "\n"); \
} \
} while (0)

Definition at line 966 of file cfg_parser.c.

◆ YY_YY_CFG_PARSER_H_INCLUDED

#define YY_YY_CFG_PARSER_H_INCLUDED

Definition at line 128 of file cfg_parser.c.

◆ YYABORT

#define YYABORT   goto yyabortlab

Definition at line 917 of file cfg_parser.c.

◆ YYACCEPT

#define YYACCEPT   goto yyacceptlab

Definition at line 916 of file cfg_parser.c.

◆ YYBACKUP

#define YYBACKUP (   Token,
  Value 
)
Value:
do \
if (yychar == YYEMPTY) \
{ \
yychar = (Token); \
yylval = (Value); \
YYPOPSTACK (yylen); \
yystate = *yyssp; \
goto yybackup; \
} \
else \
{ \
yyerror (cfg, YY_("syntax error: cannot back up")); \
YYERROR; \
} \
while (0)

Definition at line 923 of file cfg_parser.c.

◆ YYBISON

#define YYBISON   1

Definition at line 48 of file cfg_parser.c.

◆ YYBISON_VERSION

#define YYBISON_VERSION   "3.3.2"

Definition at line 51 of file cfg_parser.c.

◆ yyclearin

#define yyclearin   (yychar = YYEMPTY)

Definition at line 912 of file cfg_parser.c.

◆ YYCOPY

#define YYCOPY (   Dst,
  Src,
  Count 
)
Value:
do \
{ \
YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(Dst)[yyi] = (Src)[yyi]; \
} \
while (0)

Definition at line 521 of file cfg_parser.c.

◆ YYCOPY_NEEDED

#define YYCOPY_NEEDED   1

Definition at line 493 of file cfg_parser.c.

◆ YYDEBUG

#define YYDEBUG   1

Definition at line 131 of file cfg_parser.c.

◆ YYDPRINTF

#define YYDPRINTF (   Args)
Value:
do { \
if (yydebug) \
YYFPRINTF Args; \
} while (0)

Definition at line 954 of file cfg_parser.c.

◆ YYEMPTY

#define YYEMPTY   (-2)

Definition at line 913 of file cfg_parser.c.

◆ YYEOF

#define YYEOF   0

Definition at line 914 of file cfg_parser.c.

◆ YYERRCODE

#define YYERRCODE   256

Definition at line 942 of file cfg_parser.c.

◆ yyerrok

#define yyerrok   (yyerrstatus = 0)

Definition at line 911 of file cfg_parser.c.

◆ YYERROR

#define YYERROR   goto yyerrorlab

Definition at line 918 of file cfg_parser.c.

◆ YYERROR_VERBOSE

#define YYERROR_VERBOSE   0

Definition at line 122 of file cfg_parser.c.

◆ YYFINAL

#define YYFINAL   138

Definition at line 534 of file cfg_parser.c.

◆ YYFPRINTF

#define YYFPRINTF   fprintf

Definition at line 951 of file cfg_parser.c.

◆ YYFREE

#define YYFREE   free

Definition at line 464 of file cfg_parser.c.

◆ YYINITDEPTH

#define YYINITDEPTH   200

Definition at line 1079 of file cfg_parser.c.

◆ YYLAST

#define YYLAST   200

Definition at line 536 of file cfg_parser.c.

◆ YYMALLOC

#define YYMALLOC   malloc

Definition at line 458 of file cfg_parser.c.

◆ YYMAXDEPTH

#define YYMAXDEPTH   10000

Definition at line 1090 of file cfg_parser.c.

◆ YYMAXUTOK

#define YYMAXUTOK   323

Definition at line 548 of file cfg_parser.c.

◆ YYNNTS

#define YYNNTS   76

Definition at line 541 of file cfg_parser.c.

◆ YYNRULES

#define YYNRULES   148

Definition at line 543 of file cfg_parser.c.

◆ YYNSTATES

#define YYNSTATES   272

Definition at line 545 of file cfg_parser.c.

◆ YYNTOKENS

#define YYNTOKENS   72

Definition at line 539 of file cfg_parser.c.

◆ YYPACT_NINF

#define YYPACT_NINF   -73

Definition at line 678 of file cfg_parser.c.

◆ yypact_value_is_default

#define yypact_value_is_default (   Yystate)    (!!((Yystate) == (-73)))

Definition at line 680 of file cfg_parser.c.

◆ YYPOPSTACK

#define YYPOPSTACK (   N)    (yyvsp -= (N), yyssp -= (N))

◆ YYPULL

#define YYPULL   1

Definition at line 63 of file cfg_parser.c.

◆ YYPURE

#define YYPURE   0

Definition at line 57 of file cfg_parser.c.

◆ YYPUSH

#define YYPUSH   0

Definition at line 60 of file cfg_parser.c.

◆ YYRECOVERING

#define YYRECOVERING ( )    (!!yyerrstatus)

Definition at line 921 of file cfg_parser.c.

◆ YYSIZE_MAXIMUM

#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)

Definition at line 346 of file cfg_parser.c.

◆ YYSIZE_T

#define YYSIZE_T   size_t

Definition at line 340 of file cfg_parser.c.

◆ YYSKELETON_NAME

#define YYSKELETON_NAME   "yacc.c"

Definition at line 54 of file cfg_parser.c.

◆ YYSTACK_ALLOC

#define YYSTACK_ALLOC   YYMALLOC

Definition at line 444 of file cfg_parser.c.

◆ YYSTACK_ALLOC_MAXIMUM

#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM

Definition at line 447 of file cfg_parser.c.

◆ YYSTACK_BYTES

#define YYSTACK_BYTES (   N)
Value:
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \

Definition at line 489 of file cfg_parser.c.

◆ YYSTACK_FREE

#define YYSTACK_FREE   YYFREE

Definition at line 445 of file cfg_parser.c.

◆ YYSTACK_GAP_MAXIMUM

#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)

Definition at line 485 of file cfg_parser.c.

◆ YYSTACK_RELOCATE

#define YYSTACK_RELOCATE (   Stack_alloc,
  Stack 
)
Value:
do \
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
while (0)

Definition at line 500 of file cfg_parser.c.

◆ YYSTYPE_IS_DECLARED

#define YYSTYPE_IS_DECLARED   1

Definition at line 293 of file cfg_parser.c.

◆ YYSTYPE_IS_TRIVIAL

#define YYSTYPE_IS_TRIVIAL   1

Definition at line 292 of file cfg_parser.c.

◆ YYTABLE_NINF

#define YYTABLE_NINF   -1

Definition at line 683 of file cfg_parser.c.

◆ yytable_value_is_error

#define yytable_value_is_error (   Yytable_value)    0

Definition at line 685 of file cfg_parser.c.

◆ YYTERROR

#define YYTERROR   1

Definition at line 941 of file cfg_parser.c.

◆ YYTOKENTYPE

#define YYTOKENTYPE

Definition at line 139 of file cfg_parser.c.

◆ YYTRANSLATE

#define YYTRANSLATE (   YYX)    ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)

Definition at line 552 of file cfg_parser.c.

◆ YYUNDEFTOK

#define YYUNDEFTOK   2

Definition at line 547 of file cfg_parser.c.

◆ YYUSE

#define YYUSE (   E)    ((void) (E))

Definition at line 380 of file cfg_parser.c.

Typedef Documentation

◆ YYSTYPE

typedef union YYSTYPE YYSTYPE

Definition at line 291 of file cfg_parser.c.

◆ yytype_int16

typedef short yytype_int16

Definition at line 330 of file cfg_parser.c.

◆ yytype_int8

typedef signed char yytype_int8

Definition at line 318 of file cfg_parser.c.

◆ yytype_uint16

typedef unsigned short yytype_uint16

Definition at line 324 of file cfg_parser.c.

◆ yytype_uint8

typedef unsigned char yytype_uint8

Definition at line 312 of file cfg_parser.c.

Enumeration Type Documentation

◆ yytokentype

Enumerator
INT 
UINT 
BOOL 
STRING 
TOK_CIPHERS 
TOK_SSL_ENGINE 
TOK_PREFER_SERVER_CIPHERS 
TOK_BACKEND 
TOK_FRONTEND 
TOK_WORKERS 
TOK_BACKLOG 
TOK_KEEPALIVE 
TOK_CHROOT 
TOK_USER 
TOK_GROUP 
TOK_QUIET 
TOK_SYSLOG 
TOK_SYSLOG_FACILITY 
TOK_PARAM_SYSLOG_FACILITY 
TOK_DAEMON 
TOK_WRITE_IP 
TOK_WRITE_PROXY 
TOK_WRITE_PROXY_V1 
TOK_WRITE_PROXY_V2 
TOK_PEM_FILE 
TOK_PROXY_PROXY 
TOK_BACKEND_CONNECT_TIMEOUT 
TOK_SSL_HANDSHAKE_TIMEOUT 
TOK_RECV_BUFSIZE 
TOK_SEND_BUFSIZE 
TOK_LOG_FILENAME 
TOK_RING_SLOTS 
TOK_RING_DATA_LEN 
TOK_PIDFILE 
TOK_SNI_NOMATCH_ABORT 
TOK_SSL 
TOK_TLS 
TOK_HOST 
TOK_PORT 
TOK_MATCH_GLOBAL 
TOK_PB_CERT 
TOK_PB_OCSP_FILE 
TOK_OCSP_VERIFY 
TOK_OCSP_DIR 
TOK_OCSP_RESP_TMO 
TOK_OCSP_CONN_TMO 
TOK_ALPN_PROTOS 
TOK_TLS_PROTOS 
TOK_SSLv3 
TOK_TLSv1_0 
TOK_TLSv1_1 
TOK_TLSv1_2 
TOK_TLSv1_3 
TOK_SESSION_CACHE 
TOK_SHARED_CACHE_LISTEN 
TOK_SHARED_CACHE_PEER 
TOK_SHARED_CACHE_IF 
TOK_PRIVATE_KEY 
TOK_BACKEND_REFRESH 
TOK_OCSP_REFRESH_INTERVAL 
TOK_PEM_DIR 
TOK_PEM_DIR_GLOB 
TOK_LOG_LEVEL 
TOK_PROXY_TLV 
TOK_PROXY_AUTHORITY 
TOK_TFO 
INT 
UINT 
BOOL 
STRING 
TOK_CIPHERS 
TOK_SSL_ENGINE 
TOK_PREFER_SERVER_CIPHERS 
TOK_BACKEND 
TOK_FRONTEND 
TOK_WORKERS 
TOK_BACKLOG 
TOK_KEEPALIVE 
TOK_CHROOT 
TOK_USER 
TOK_GROUP 
TOK_QUIET 
TOK_SYSLOG 
TOK_SYSLOG_FACILITY 
TOK_PARAM_SYSLOG_FACILITY 
TOK_DAEMON 
TOK_WRITE_IP 
TOK_WRITE_PROXY 
TOK_WRITE_PROXY_V1 
TOK_WRITE_PROXY_V2 
TOK_PEM_FILE 
TOK_PROXY_PROXY 
TOK_BACKEND_CONNECT_TIMEOUT 
TOK_SSL_HANDSHAKE_TIMEOUT 
TOK_RECV_BUFSIZE 
TOK_SEND_BUFSIZE 
TOK_LOG_FILENAME 
TOK_RING_SLOTS 
TOK_RING_DATA_LEN 
TOK_PIDFILE 
TOK_SNI_NOMATCH_ABORT 
TOK_SSL 
TOK_TLS 
TOK_HOST 
TOK_PORT 
TOK_MATCH_GLOBAL 
TOK_PB_CERT 
TOK_PB_OCSP_FILE 
TOK_OCSP_VERIFY 
TOK_OCSP_DIR 
TOK_OCSP_RESP_TMO 
TOK_OCSP_CONN_TMO 
TOK_ALPN_PROTOS 
TOK_TLS_PROTOS 
TOK_SSLv3 
TOK_TLSv1_0 
TOK_TLSv1_1 
TOK_TLSv1_2 
TOK_TLSv1_3 
TOK_SESSION_CACHE 
TOK_SHARED_CACHE_LISTEN 
TOK_SHARED_CACHE_PEER 
TOK_SHARED_CACHE_IF 
TOK_PRIVATE_KEY 
TOK_BACKEND_REFRESH 
TOK_OCSP_REFRESH_INTERVAL 
TOK_PEM_DIR 
TOK_PEM_DIR_GLOB 
TOK_LOG_LEVEL 
TOK_PROXY_TLV 
TOK_PROXY_AUTHORITY 
TOK_TFO 

Definition at line 140 of file cfg_parser.c.

Function Documentation

◆ cfg_cert_add()

void cfg_cert_add ( struct cfg_cert_file cf,
struct cfg_cert_file **  dst 
)

◆ cfg_cert_file_free()

◆ cfg_cert_file_new()

struct cfg_cert_file* cfg_cert_file_new ( void  )

◆ cfg_cert_vfy()

◆ config_error_set()

◆ config_param_validate()

int config_param_validate ( char *  k,
char *  v,
hitch_config cfg,
char *  file,
int  line 
)

Definition at line 828 of file configuration.c.

References __hitch_config::ALPN_PROTOS, assert, __hitch_config::BACK_IP, __hitch_config::BACK_PATH, __hitch_config::BACK_PORT, __hitch_config::BACKEND_CONNECT_TIMEOUT, __hitch_config::BACKEND_REFRESH_TIME, __hitch_config::BACKLOG, __hitch_config::CERT_DEFAULT, __hitch_config::CERT_FILES, front_arg::certs, CFG_ALPN_PROTOS, CFG_BACKEND, CFG_BACKEND_CONNECT_TIMEOUT, CFG_BACKEND_REFRESH, CFG_BACKLOG, cfg_cert_add(), cfg_cert_file_free(), cfg_cert_file_new(), cfg_cert_vfy(), CFG_CHROOT, CFG_CIPHERS, CFG_DAEMON, CFG_FRONTEND, CFG_GROUP, CFG_KEEPALIVE, CFG_LOG_FILENAME, CFG_LOG_LEVEL, CFG_OCSP_DIR, CFG_PEM_FILE, CFG_PIDFILE, CFG_PREFER_SERVER_CIPHERS, CFG_PROXY_PROXY, CFG_QUIET, CFG_RECV_BUFSIZE, CFG_RING_DATA_LEN, CFG_RING_SLOTS, CFG_SEND_BUFSIZE, CFG_SNI_NOMATCH_ABORT, CFG_SSL_ENGINE, CFG_SSL_HANDSHAKE_TIMEOUT, CFG_SYSLOG, CFG_SYSLOG_FACILITY, CFG_USER, CFG_WORKERS, CFG_WRITE_IP, CFG_WRITE_PROXY, CFG_WRITE_PROXY_V1, CFG_WRITE_PROXY_V2, __hitch_config::CHROOT, __hitch_config::CIPHER_SUITE, config_assign_str(), config_error_get(), config_error_set(), config_param_host_port(), config_param_host_port_wildcard(), config_param_val_bool(), config_param_val_int(), config_param_val_long(), __hitch_config::DAEMONIZE, __hitch_config::ENGINE, cfg_cert_file::filename, free(), FREE_OBJ, front_arg_add(), front_arg_new(), __hitch_config::GID, front_arg::ip, __hitch_config::LOG_FILENAME, __hitch_config::LOG_LEVEL, __hitch_config::NCORES, __hitch_config::OCSP_DIR, __hitch_config::PIDFILE, front_arg::port, __hitch_config::PREFER_SERVER_CIPHERS, __hitch_config::PROXY_PROXY_LINE, __hitch_config::RECV_BUFSIZE, __hitch_config::RING_DATA_LEN, __hitch_config::RING_SLOTS, __hitch_config::SELECTED_TLS_PROTOS, __hitch_config::SEND_BUFSIZE, __hitch_config::SNI_NOMATCH_ABORT, __hitch_config::SSL_HANDSHAKE_TIMEOUT, SSL_OPTION_PROTOS, __hitch_config::SYSLOG, __hitch_config::SYSLOG_FACILITY, __hitch_config::TCP_KEEPALIVE_TIME, TLS_OPTION_PROTOS, __hitch_config::UID, __hitch_config::WRITE_IP_OCTET, __hitch_config::WRITE_PROXY_LINE_V1, and __hitch_config::WRITE_PROXY_LINE_V2.

Referenced by config_parse_cli(), and yyparse().

◆ free()

◆ front_arg_add()

◆ front_arg_destroy()

◆ front_arg_new()

◆ malloc()

◆ yy_reduce_print()

static void yy_reduce_print ( yytype_int16 yyssp,
YYSTYPE yyvsp,
int  yyrule,
hitch_config cfg 
)
static

Definition at line 1041 of file cfg_parser.c.

References yy_symbol_print(), YYFPRINTF, yyr2, yyrline, and yystos.

◆ yy_stack_print()

static void yy_stack_print ( yytype_int16 yybottom,
yytype_int16 yytop 
)
static

Definition at line 1018 of file cfg_parser.c.

References YYFPRINTF.

◆ yy_symbol_print()

static void yy_symbol_print ( FILE *  yyo,
int  yytype,
YYSTYPE const *const  yyvaluep,
hitch_config cfg 
)
static

Definition at line 1003 of file cfg_parser.c.

References yy_symbol_value_print(), YYFPRINTF, YYNTOKENS, and yytname.

Referenced by yy_reduce_print().

◆ yy_symbol_value_print()

static void yy_symbol_value_print ( FILE *  yyo,
int  yytype,
YYSTYPE const *const  yyvaluep,
hitch_config cfg 
)
static

Definition at line 983 of file cfg_parser.c.

References YYNTOKENS, and YYUSE.

Referenced by yy_symbol_print().

◆ yydestruct()

static void yydestruct ( const char *  yymsg,
int  yytype,
YYSTYPE yyvaluep,
hitch_config cfg 
)
static

◆ yyerror()

void yyerror ( hitch_config cfg,
const char *  s 
)

Definition at line 2559 of file cfg_parser.c.

References config_error_set(), cur_fa, FREE_OBJ, input_line, and yyget_lineno().

Referenced by yyparse().

◆ yyget_lineno()

int yyget_lineno ( void  )

Get the current line number.

Definition at line 2296 of file cfg_lex.c.

References yylineno.

Referenced by yyerror(), and yyparse().

◆ yylex()

int yylex ( void  )

The main scanner function which does all the work.

Definition at line 986 of file cfg_lex.c.

References BOOL, ECHO, EOB_ACT_CONTINUE_SCAN, EOB_ACT_END_OF_FILE, EOB_ACT_LAST_MATCH, YYSTYPE::i, INITIAL, input_line, INT, YYSTYPE::s, STRING, TOK_ALPN_PROTOS, TOK_BACKEND, TOK_BACKEND_CONNECT_TIMEOUT, TOK_BACKEND_REFRESH, TOK_BACKLOG, TOK_CHROOT, TOK_CIPHERS, TOK_DAEMON, TOK_FRONTEND, TOK_GROUP, TOK_HOST, TOK_KEEPALIVE, TOK_LOG_FILENAME, TOK_LOG_LEVEL, TOK_MATCH_GLOBAL, TOK_OCSP_CONN_TMO, TOK_OCSP_DIR, TOK_OCSP_REFRESH_INTERVAL, TOK_OCSP_RESP_TMO, TOK_OCSP_VERIFY, TOK_PB_CERT, TOK_PB_OCSP_FILE, TOK_PEM_DIR, TOK_PEM_DIR_GLOB, TOK_PEM_FILE, TOK_PIDFILE, TOK_PORT, TOK_PREFER_SERVER_CIPHERS, TOK_PRIVATE_KEY, TOK_PROXY_AUTHORITY, TOK_PROXY_PROXY, TOK_PROXY_TLV, TOK_QUIET, TOK_RECV_BUFSIZE, TOK_RING_DATA_LEN, TOK_RING_SLOTS, TOK_SEND_BUFSIZE, TOK_SESSION_CACHE, TOK_SHARED_CACHE_IF, TOK_SHARED_CACHE_LISTEN, TOK_SHARED_CACHE_PEER, TOK_SNI_NOMATCH_ABORT, TOK_SSL, TOK_SSL_ENGINE, TOK_SSL_HANDSHAKE_TIMEOUT, TOK_SSLv3, TOK_SYSLOG, TOK_SYSLOG_FACILITY, TOK_TFO, TOK_TLS, TOK_TLS_PROTOS, TOK_TLSv1_0, TOK_TLSv1_1, TOK_TLSv1_2, TOK_TLSv1_3, TOK_USER, TOK_WORKERS, TOK_WRITE_IP, TOK_WRITE_PROXY, TOK_WRITE_PROXY_V1, TOK_WRITE_PROXY_V2, UINT, yy_accept, yy_base, YY_BREAK, YY_BUF_SIZE, YY_BUFFER_NEW, YY_BUFFER_NORMAL, yy_c_buf_p, yy_chk, yy_create_buffer(), YY_CURRENT_BUFFER, YY_CURRENT_BUFFER_LVALUE, yy_def, yy_did_buffer_switch_on_eof, YY_DO_BEFORE_ACTION, yy_ec, YY_END_OF_BUFFER, YY_FATAL_ERROR, yy_get_next_buffer(), yy_get_previous_state(), yy_hold_char, yy_init, yy_last_accepting_cpos, yy_last_accepting_state, yy_load_buffer_state(), yy_meta, YY_MORE_ADJ, yy_n_chars, YY_NEW_FILE, yy_nxt, YY_RESTORE_YY_MORE_OFFSET, yy_rule_can_match_eol, YY_RULE_SETUP, YY_SC_TO_UI, YY_START, yy_start, YY_STATE_EOF, yy_try_NUL_trans(), yyensure_buffer_stack(), yyin, yyleng, yyless, yylineno, yylval, yyout, yyterminate, yytext, yytext_ptr, and yywrap.

Referenced by yyparse().

◆ yyparse()

int yyparse ( hitch_config cfg)

Definition at line 1356 of file cfg_parser.c.

References AZ, __hitch_config::BACKEND_REFRESH_TIME, __hitch_config::BACKLOG, __hitch_config::CERT_DEFAULT, __hitch_config::CERT_FILES, front_arg::certs, cfg_cert_add(), cfg_cert_file_free(), cfg_cert_file_new(), cfg_cert_vfy(), __hitch_config::CIPHER_SUITE, front_arg::ciphers, config_param_validate(), cur_fa, cur_pem, __hitch_config::DAEMONIZE, __hitch_config::ENGINE, cfg_cert_file::filename, front_arg_add(), front_arg_destroy(), front_arg_new(), input_line, front_arg::ip, __hitch_config::LOG_LEVEL, malloc(), front_arg::match_global_certs, __hitch_config::NCORES, __hitch_config::OCSP_CONN_TMO, __hitch_config::OCSP_DIR, __hitch_config::OCSP_REFRESH_INTERVAL, __hitch_config::OCSP_RESP_TMO, cfg_cert_file::ocsp_vfy, __hitch_config::OCSP_VFY, cfg_cert_file::ocspfn, __hitch_config::PEM_DIR, __hitch_config::PEM_DIR_GLOB, front_arg::port, front_arg::prefer_server_ciphers, __hitch_config::PREFER_SERVER_CIPHERS, cfg_cert_file::priv_key_filename, __hitch_config::PROXY_AUTHORITY, __hitch_config::PROXY_PROXY_LINE, __hitch_config::PROXY_TLV, __hitch_config::RECV_BUFSIZE, front_arg::selected_protos, __hitch_config::SELECTED_TLS_PROTOS, __hitch_config::SEND_BUFSIZE, front_arg::sni_nomatch_abort, __hitch_config::SNI_NOMATCH_ABORT, SSL_OPTION_PROTOS, SSLv3_PROTO, __hitch_config::SYSLOG, __hitch_config::TCP_KEEPALIVE_TIME, TLS_OPTION_PROTOS, TLSv1_0_PROTO, TLSv1_1_PROTO, TLSv1_2_PROTO, TLSv1_3_PROTO, __hitch_config::WRITE_IP_OCTET, __hitch_config::WRITE_PROXY_LINE_V1, __hitch_config::WRITE_PROXY_LINE_V2, YY_, YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN, YY_IGNORE_MAYBE_UNINITIALIZED_END, YY_REDUCE_PRINT, YY_STACK_PRINT, YY_SYMBOL_PRINT, YYABORT, YYACCEPT, yychar, yycheck, yydefact, yydefgoto, yydestruct(), YYDPRINTF, YYEMPTY, YYEOF, YYERROR, yyerror(), YYFINAL, yyget_lineno(), YYINITDEPTH, YYLAST, yylex(), yylval, YYMAXDEPTH, yynerrs, YYNTOKENS, yypact, yypact_value_is_default, yypgoto, YYPOPSTACK, yyr1, yyr2, YYSIZE_T, yyalloc::yyss_alloc, YYSTACK_ALLOC, YYSTACK_BYTES, YYSTACK_FREE, YYSTACK_RELOCATE, yystos, yytable, yytable_value_is_error, YYTERROR, YYTRANSLATE, and yyalloc::yyvs_alloc.

Referenced by config_file_parse().

Variable Documentation

◆ cur_fa

struct front_arg* cur_fa
static

Definition at line 99 of file cfg_parser.c.

Referenced by check_frontend_uniqueness(), yyerror(), and yyparse().

◆ cur_pem

struct cfg_cert_file* cur_pem
static

Definition at line 100 of file cfg_parser.c.

Referenced by yyparse().

◆ input_line

char input_line[512]

Definition at line 800 of file cfg_lex.c.

Referenced by yyerror(), yylex(), and yyparse().

◆ yychar

int yychar

Definition at line 1343 of file cfg_parser.c.

Referenced by yyparse().

◆ yycheck

const yytype_int16 yycheck[]
static
Initial value:
=
{
6, 6, 6, 69, 0, 51, 52, 53, 54, 55,
51, 52, 53, 54, 55, 43, 44, 45, 7, 8,
9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
19, 20, 60, 22, 23, 24, 25, 26, 27, 28,
69, 0, 31, 32, 33, 69, 69, 69, 37, 38,
39, 47, 69, 69, 69, 69, 45, 46, 47, 48,
49, 50, 69, 6, 70, 70, 70, 56, 57, 58,
59, 69, 61, 62, 63, 64, 65, 66, 67, 68,
7, 69, 9, 69, 69, 69, 69, 69, 69, 69,
69, 69, 69, 69, 69, 69, 69, 69, 69, 69,
27, 69, 69, 69, 69, 69, 69, 69, 69, 69,
37, 38, 39, 40, 41, 42, 69, 69, 69, 69,
69, 69, 6, 50, 5, 4, 6, 4, 4, 69,
69, 6, 6, 6, 5, 5, 4, 6, 5, 5,
5, 5, 5, 5, 4, 6, 5, 5, 5, 5,
4, 6, 4, 6, 4, 6, 69, 6, 6, 4,
4, 69, 69, 6, 6, 4, 69, 5, 5, 5,
69, 69, 69, 69, 6, 69, 71, 69, 69, 5,
5, 71, 5, 5, 69, 6, 6, 5, 71, 6,
6, 6, 261, 223, 207, 267, -1, 194, -1, -1,
47
}

Definition at line 811 of file cfg_parser.c.

Referenced by yyparse().

◆ yydebug

int yydebug

Definition at line 1068 of file cfg_parser.c.

◆ yydefact

const yytype_uint8 yydefact[]
static

Definition at line 725 of file cfg_parser.c.

Referenced by yyparse().

◆ yydefgoto

const yytype_int16 yydefgoto[]
static
Initial value:
=
{
-1, 46, 47, 48, 49, 187, 206, 207, 208, 209,
210, 222, 223, 224, 225, 226, 227, 228, 51, 52,
53, 54, 55, 56, 211, 261, 212, 213, 214, 215,
216, 239, 267, 268, 217, 218, 57, 58, 59, 60,
61, 62, 63, 125, 194, 195, 64, 65, 66, 67,
68, 188, 69, 70, 71, 72, 73, 74, 75, 76,
77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
87, 88, 89, 90, 91, 92
}

Definition at line 771 of file cfg_parser.c.

Referenced by yyparse().

◆ yyin

FILE* yyin

Definition at line 349 of file cfg_lex.c.

◆ yylval

YYSTYPE yylval

Definition at line 1346 of file cfg_parser.c.

Referenced by yylex(), and yyparse().

◆ yynerrs

int yynerrs

Definition at line 1348 of file cfg_parser.c.

Referenced by yyparse().

◆ yypact

const yytype_int16 yypact[]
static

Definition at line 690 of file cfg_parser.c.

Referenced by yyparse().

◆ yypgoto

const yytype_int16 yypgoto[]
static
Initial value:
=
{
-73, -73, -73, 153, -73, -73, -73, -73, -13, -73,
-73, -69, -73, -30, -73, -73, 4, -73, -73, -73,
-73, -73, -73, -73, -73, -73, -73, -73, -73, -73,
-73, -73, -73, -72, -73, -73, -73, -73, -73, -73,
-73, -73, -73, -73, -73, 3, -73, -73, -73, -73,
-73, -73, -73, -73, -73, -73, -73, -73, -73, -73,
-73, -73, -73, -73, -73, -73, -73, -73, -73, -73,
-73, -73, -73, -73, -73, -73
}

Definition at line 758 of file cfg_parser.c.

Referenced by yyparse().

◆ yyr1

const yytype_uint8 yyr1[]
static
Initial value:
=
{
0, 72, 73, 74, 74, 75, 75, 75, 75, 75,
75, 75, 75, 75, 75, 75, 75, 75, 75, 75,
75, 75, 75, 75, 75, 75, 75, 75, 75, 75,
75, 75, 75, 75, 75, 75, 75, 75, 75, 75,
75, 75, 75, 75, 75, 75, 75, 75, 75, 76,
77, 76, 78, 79, 79, 80, 80, 80, 80, 80,
80, 80, 80, 80, 80, 81, 82, 83, 84, 84,
85, 85, 85, 85, 86, 87, 88, 89, 90, 91,
92, 93, 94, 95, 96, 97, 96, 98, 99, 100,
101, 103, 102, 104, 104, 105, 105, 105, 105, 105,
106, 107, 108, 109, 110, 111, 112, 113, 115, 114,
116, 116, 117, 117, 117, 117, 117, 118, 119, 120,
121, 122, 123, 122, 124, 125, 126, 127, 128, 129,
130, 131, 132, 133, 134, 134, 135, 136, 137, 138,
139, 140, 141, 142, 143, 144, 145, 146, 147
}

Definition at line 871 of file cfg_parser.c.

Referenced by yyparse().

◆ yyr2

const yytype_uint8 yyr2[]
static
Initial value:
=
{
0, 2, 1, 1, 2, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 3,
0, 6, 1, 1, 2, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 3, 3, 1, 1, 2,
1, 1, 1, 1, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 0, 6, 3, 3, 3,
3, 0, 4, 1, 2, 1, 1, 1, 1, 1,
3, 3, 3, 3, 3, 3, 3, 3, 0, 4,
1, 2, 1, 1, 1, 1, 1, 3, 3, 3,
3, 3, 0, 6, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3
}

Definition at line 891 of file cfg_parser.c.

Referenced by yy_reduce_print(), and yyparse().

◆ yyrline

const yytype_uint16 yyrline[]
static
Initial value:
=
{
0, 67, 67, 71, 72, 76, 77, 78, 79, 80,
81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
111, 112, 113, 114, 115, 116, 117, 118, 119, 123,
129, 129, 140, 142, 143, 147, 148, 149, 150, 151,
152, 153, 154, 155, 156, 159, 168, 170, 173, 174,
178, 179, 180, 181, 184, 186, 191, 198, 202, 215,
223, 230, 234, 238, 243, 257, 257, 272, 274, 279,
296, 313, 313, 325, 325, 327, 328, 329, 330, 331,
333, 337, 341, 348, 350, 352, 354, 369, 384, 384,
394, 394, 396, 397, 398, 399, 400, 402, 404, 408,
415, 423, 429, 429, 448, 449, 450, 454, 456, 463,
470, 472, 474, 478, 482, 484, 486, 488, 495, 503,
505, 507, 515, 517, 527, 540, 553, 566, 576
}

Definition at line 596 of file cfg_parser.c.

Referenced by yy_reduce_print().

◆ yystos

const yytype_uint8 yystos[]
static

Definition at line 838 of file cfg_parser.c.

Referenced by yy_reduce_print(), and yyparse().

◆ yytable

const yytype_uint16 yytable[]
static
Initial value:
=
{
144, 160, 249, 93, 50, 189, 190, 191, 192, 193,
262, 263, 264, 265, 266, 219, 220, 28, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
13, 14, 221, 15, 16, 17, 18, 19, 20, 21,
94, 138, 22, 23, 24, 95, 96, 97, 25, 26,
27, 50, 98, 99, 100, 101, 28, 29, 30, 31,
32, 33, 102, 140, 145, 161, 250, 34, 35, 36,
37, 103, 38, 39, 40, 41, 42, 43, 44, 45,
196, 104, 197, 105, 106, 107, 108, 109, 110, 111,
112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
198, 122, 123, 124, 126, 127, 128, 129, 130, 131,
199, 200, 201, 202, 203, 204, 132, 133, 134, 135,
136, 137, 141, 205, 142, 146, 143, 147, 148, 174,
230, 149, 150, 151, 152, 153, 163, 154, 155, 156,
157, 158, 159, 162, 164, 165, 166, 167, 168, 169,
171, 170, 172, 173, 175, 176, 231, 177, 178, 179,
180, 232, 233, 181, 182, 183, 234, 184, 185, 186,
235, 236, 237, 238, 247, 242, 240, 243, 244, 248,
251, 245, 252, 253, 257, 254, 255, 256, 271, 258,
259, 260, 269, 246, 241, 270, 0, 229, 0, 0,
139
}

Definition at line 786 of file cfg_parser.c.

Referenced by yyparse().

◆ yytname

const char* const yytname[]
static

Definition at line 619 of file cfg_parser.c.

Referenced by yy_symbol_print().

◆ yytranslate

const yytype_uint8 yytranslate[]
static

Definition at line 557 of file cfg_parser.c.

yytype_int16
short yytype_int16
Definition: cfg_parser.c:330
YY_
#define YY_(Msgid)
Definition: cfg_parser.c:356
YYSTACK_GAP_MAXIMUM
#define YYSTACK_GAP_MAXIMUM
Definition: cfg_parser.c:485
YYEMPTY
#define YYEMPTY
Definition: cfg_parser.c:913
YYSTYPE
union YYSTYPE YYSTYPE
Definition: cfg_parser.c:291
yychar
int yychar
Definition: cfg_parser.c:1343
yydebug
int yydebug
Definition: cfg_parser.c:1068