#include <isc/lex.h>
#include <isc/netaddr.h>
#include <isc/sockaddr.h>
#include <isc/region.h>
#include <isc/types.h>
#include <isccfg/cfg.h>
Go to the source code of this file.
Data Structures | |
struct | cfg_printer |
A configuration printer object. This is an abstract interface to a destination to which text can be printed by calling the function 'f'. More... | |
struct | cfg_clausedef |
A clause definition. More... | |
struct | cfg_tuplefielddef |
A tuple field definition. More... | |
struct | cfg_type |
A configuration object type definition. More... | |
struct | keyword_type_t |
A keyword-type definition, for things like "port <integer>". More... | |
struct | cfg_map |
struct | cfg_netprefix |
struct | cfg_rep |
A configuration data representation. More... | |
struct | cfg_obj |
A configuration object. This is the main building block of the configuration parse tree. More... | |
struct | cfg_listelt |
A list element. More... | |
struct | cfg_parser |
The parser object. More... | |
Defines | |
#define | ISCCFG_GRAMMAR_H 1 |
#define | CFG_CLAUSEFLAG_MULTI 0x00000001 |
Clause may occur multiple times (e.g., "zone"). | |
#define | CFG_CLAUSEFLAG_OBSOLETE 0x00000002 |
Clause is obsolete. | |
#define | CFG_CLAUSEFLAG_NOTIMP 0x00000004 |
Clause is not implemented, and may never be. | |
#define | CFG_CLAUSEFLAG_NYI 0x00000008 |
Clause is not implemented yet. | |
#define | CFG_CLAUSEFLAG_NEWDEFAULT 0x00000010 |
Default value has changed since earlier release. | |
#define | CFG_CLAUSEFLAG_CALLBACK 0x00000020 |
Clause needs to be interpreted during parsing by calling a callback function, like the "directory" option. | |
#define | CFG_CLAUSEFLAG_TESTONLY 0x00000040 |
A option that is only used in testing. | |
#define | CFG_CLAUSEFLAG_NOTCONFIGURED 0x00000080 |
A configuration option that was not configured at compile time. | |
#define | CFG_PCTX_SKIP 0x1 |
#define | CFG_LEXOPT_QSTRING (ISC_LEXOPT_QSTRING | ISC_LEXOPT_QSTRINGMULTILINE) |
#define | CFG_LOG_NEAR 0x00000001 |
Say "near <token>". | |
#define | CFG_LOG_BEFORE 0x00000002 |
Say "before <token>". | |
#define | CFG_LOG_NOPREP 0x00000004 |
Say just "<token>". | |
#define | CFG_ADDR_V4OK 0x00000001 |
Flags defining whether to accept certain types of network addresses. | |
#define | CFG_ADDR_V4PREFIXOK 0x00000002 |
Flags defining whether to accept certain types of network addresses. | |
#define | CFG_ADDR_V6OK 0x00000004 |
Flags defining whether to accept certain types of network addresses. | |
#define | CFG_ADDR_WILDOK 0x00000008 |
Flags defining whether to accept certain types of network addresses. | |
#define | CFG_ADDR_DSCPOK 0x00000010 |
Flags defining whether to accept certain types of network addresses. | |
#define | CFG_ADDR_MASK (CFG_ADDR_V6OK|CFG_ADDR_V4OK) |
Flags defining whether to accept certain types of network addresses. | |
Typedefs | |
typedef struct cfg_clausedef | cfg_clausedef_t |
typedef struct cfg_tuplefielddef | cfg_tuplefielddef_t |
typedef struct cfg_printer | cfg_printer_t |
typedef struct cfg_map | cfg_map_t |
typedef struct cfg_rep | cfg_rep_t |
typedef isc_result_t(* | cfg_parsefunc_t )(cfg_parser_t *, const cfg_type_t *type, cfg_obj_t **) |
typedef void(* | cfg_printfunc_t )(cfg_printer_t *, const cfg_obj_t *) |
typedef void(* | cfg_docfunc_t )(cfg_printer_t *, const cfg_type_t *) |
typedef void(* | cfg_freefunc_t )(cfg_parser_t *, cfg_obj_t *) |
typedef struct cfg_netprefix | cfg_netprefix_t |
Functions | |
typedef | ISC_LIST (cfg_listelt_t) cfg_list_t |
isc_result_t | cfg_gettoken (cfg_parser_t *pctx, int options) |
isc_result_t | cfg_peektoken (cfg_parser_t *pctx, int options) |
void | cfg_ungettoken (cfg_parser_t *pctx) |
isc_result_t | cfg_create_obj (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **objp) |
void | cfg_print_rawuint (cfg_printer_t *pctx, unsigned int u) |
isc_result_t | cfg_parse_uint32 (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_uint32 (cfg_printer_t *pctx, const cfg_obj_t *obj) |
void | cfg_print_uint64 (cfg_printer_t *pctx, const cfg_obj_t *obj) |
isc_result_t | cfg_parse_qstring (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_ustring (cfg_printer_t *pctx, const cfg_obj_t *obj) |
isc_result_t | cfg_parse_astring (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
isc_result_t | cfg_parse_sstring (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
isc_result_t | cfg_parse_rawaddr (cfg_parser_t *pctx, unsigned int flags, isc_netaddr_t *na) |
void | cfg_print_rawaddr (cfg_printer_t *pctx, const isc_netaddr_t *na) |
isc_boolean_t | cfg_lookingat_netaddr (cfg_parser_t *pctx, unsigned int flags) |
isc_result_t | cfg_parse_rawport (cfg_parser_t *pctx, unsigned int flags, in_port_t *port) |
isc_result_t | cfg_parse_dscp (cfg_parser_t *pctx, isc_dscp_t *dscp) |
isc_result_t | cfg_parse_sockaddr (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
isc_result_t | cfg_parse_boolean (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_sockaddr (cfg_printer_t *pctx, const cfg_obj_t *obj) |
void | cfg_print_boolean (cfg_printer_t *pctx, const cfg_obj_t *obj) |
void | cfg_doc_sockaddr (cfg_printer_t *pctx, const cfg_type_t *type) |
isc_result_t | cfg_parse_netprefix (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
isc_result_t | cfg_parse_special (cfg_parser_t *pctx, int special) |
Parse a required special character 'special'. | |
isc_result_t | cfg_create_tuple (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **objp) |
isc_result_t | cfg_parse_tuple (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_tuple (cfg_printer_t *pctx, const cfg_obj_t *obj) |
void | cfg_doc_tuple (cfg_printer_t *pctx, const cfg_type_t *type) |
isc_result_t | cfg_create_list (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **objp) |
isc_result_t | cfg_parse_listelt (cfg_parser_t *pctx, const cfg_type_t *elttype, cfg_listelt_t **ret) |
isc_result_t | cfg_parse_bracketed_list (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_bracketed_list (cfg_printer_t *pctx, const cfg_obj_t *obj) |
void | cfg_doc_bracketed_list (cfg_printer_t *pctx, const cfg_type_t *type) |
isc_result_t | cfg_parse_spacelist (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_spacelist (cfg_printer_t *pctx, const cfg_obj_t *obj) |
isc_result_t | cfg_parse_enum (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_doc_enum (cfg_printer_t *pctx, const cfg_type_t *type) |
void | cfg_print_chars (cfg_printer_t *pctx, const char *text, int len) |
Print 'len' characters at 'text'. | |
void | cfg_print_cstr (cfg_printer_t *pctx, const char *s) |
Print the null-terminated string 's'. | |
isc_result_t | cfg_parse_map (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
isc_result_t | cfg_parse_named_map (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
isc_result_t | cfg_parse_addressed_map (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
isc_result_t | cfg_parse_netprefix_map (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_map (cfg_printer_t *pctx, const cfg_obj_t *obj) |
void | cfg_doc_map (cfg_printer_t *pctx, const cfg_type_t *type) |
isc_result_t | cfg_parse_mapbody (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_mapbody (cfg_printer_t *pctx, const cfg_obj_t *obj) |
void | cfg_doc_mapbody (cfg_printer_t *pctx, const cfg_type_t *type) |
isc_result_t | cfg_parse_void (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_void (cfg_printer_t *pctx, const cfg_obj_t *obj) |
void | cfg_doc_void (cfg_printer_t *pctx, const cfg_type_t *type) |
isc_result_t | cfg_parse_obj (cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) |
void | cfg_print_obj (cfg_printer_t *pctx, const cfg_obj_t *obj) |
void | cfg_doc_obj (cfg_printer_t *pctx, const cfg_type_t *type) |
Print a description of the grammar of an arbitrary configuration type 'type'. | |
void | cfg_doc_terminal (cfg_printer_t *pctx, const cfg_type_t *type) |
Document the type 'type' as a terminal by printing its name in angle brackets, e.g., <uint32>. | |
void | cfg_parser_error (cfg_parser_t *pctx, unsigned int flags, const char *fmt,...) ISC_FORMAT_PRINTF(3 |
void | cfg_parser_warning (cfg_parser_t *pctx, unsigned int flags, const char *fmt,...) ISC_FORMAT_PRINTF(3 |
void isc_boolean_t | cfg_is_enum (const char *s, const char *const *enums) |
Return true iff the string 's' is one of the strings in 'enums'. | |
Variables | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_uint32 |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_uint64 |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_string |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_boolean |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_map |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_list |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_tuple |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_sockaddr |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_netprefix |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t | cfg_rep_void |
Predefined data representation types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_boolean |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_uint32 |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_uint64 |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_qstring |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_astring |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_ustring |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_sstring |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_sockaddr |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_sockaddrdscp |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_netaddr |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_netaddr4 |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_netaddr4wild |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_netaddr6 |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_netaddr6wild |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_netprefix |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_void |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_token |
Predefined configuration object types. | |
LIBISCCFG_EXTERNAL_DATA cfg_type_t | cfg_type_unsupported |
Predefined configuration object types. |
Definition in file grammar.h.
#define CFG_CLAUSEFLAG_MULTI 0x00000001 |
Clause may occur multiple times (e.g., "zone").
Definition at line 39 of file grammar.h.
Referenced by cfg_parse_mapbody(), and cfg_parser_mapadd().
#define CFG_CLAUSEFLAG_OBSOLETE 0x00000002 |
#define CFG_CLAUSEFLAG_NOTIMP 0x00000004 |
Clause is not implemented, and may never be.
Definition at line 43 of file grammar.h.
Referenced by cfg_parse_mapbody().
#define CFG_CLAUSEFLAG_NYI 0x00000008 |
Clause is not implemented yet.
Definition at line 45 of file grammar.h.
Referenced by cfg_parse_mapbody().
#define CFG_CLAUSEFLAG_NEWDEFAULT 0x00000010 |
#define CFG_CLAUSEFLAG_CALLBACK 0x00000020 |
Clause needs to be interpreted during parsing by calling a callback function, like the "directory" option.
Definition at line 53 of file grammar.h.
Referenced by cfg_parse_mapbody().
#define CFG_CLAUSEFLAG_TESTONLY 0x00000040 |
#define CFG_CLAUSEFLAG_NOTCONFIGURED 0x00000080 |
A configuration option that was not configured at compile time.
Definition at line 57 of file grammar.h.
Referenced by cfg_parse_mapbody().
#define CFG_PCTX_SKIP 0x1 |
#define CFG_ADDR_V4OK 0x00000001 |
Flags defining whether to accept certain types of network addresses.
Definition at line 241 of file grammar.h.
Referenced by cfg_doc_netaddr(), cfg_doc_sockaddr(), cfg_parse_netprefix(), cfg_parse_rawaddr(), parse_addrmatchelt(), parse_masterselement(), parse_querysource(), parse_sockaddrnameport(), and token_addr().
#define CFG_ADDR_V4PREFIXOK 0x00000002 |
Flags defining whether to accept certain types of network addresses.
Definition at line 242 of file grammar.h.
Referenced by cfg_parse_netprefix(), cfg_parse_rawaddr(), parse_addrmatchelt(), and token_addr().
#define CFG_ADDR_V6OK 0x00000004 |
Flags defining whether to accept certain types of network addresses.
Definition at line 243 of file grammar.h.
Referenced by cfg_doc_netaddr(), cfg_doc_sockaddr(), cfg_parse_netprefix(), cfg_parse_rawaddr(), parse_addrmatchelt(), parse_masterselement(), parse_querysource(), parse_sockaddrnameport(), and token_addr().
#define CFG_ADDR_WILDOK 0x00000008 |
Flags defining whether to accept certain types of network addresses.
Definition at line 244 of file grammar.h.
Referenced by cfg_doc_netaddr(), cfg_doc_sockaddr(), cfg_parse_rawaddr(), cfg_parse_rawport(), parse_querysource(), and token_addr().
#define CFG_ADDR_DSCPOK 0x00000010 |
Flags defining whether to accept certain types of network addresses.
Definition at line 245 of file grammar.h.
Referenced by cfg_doc_sockaddr(), and parse_sockaddrsub().
#define CFG_ADDR_MASK (CFG_ADDR_V6OK|CFG_ADDR_V4OK) |
Flags defining whether to accept certain types of network addresses.
Definition at line 246 of file grammar.h.
Referenced by cfg_parse_rawaddr().
#define CFG_LEXOPT_QSTRING (ISC_LEXOPT_QSTRING | ISC_LEXOPT_QSTRINGMULTILINE) |
Definition at line 298 of file grammar.h.
Referenced by cfg_getstringtoken(), cfg_parse_kv_tuple(), cfg_parse_qstring(), parse_addrmatchelt(), parse_boolorauto(), parse_masterselement(), parse_optional_facility(), parse_qstringornone(), parse_serverid(), parse_sockaddrnameport(), and parse_token().
#define CFG_LOG_NEAR 0x00000001 |
Say "near <token>".
Pass one of these flags to cfg_parser_error() to include the token text in log message.
Definition at line 476 of file grammar.h.
Referenced by cfg_getstringtoken(), cfg_gettoken(), cfg_parse_boolean(), cfg_parse_dscp(), cfg_parse_mapbody(), cfg_parse_netprefix(), cfg_parse_qstring(), cfg_parse_rawaddr(), cfg_parse_rawport(), cfg_parse_special(), cfg_parse_uint32(), parse_addrmatchelt(), parse_eof(), parse_masterselement(), parse_maybe_optional_keyvalue(), parse_port(), parse_portrange(), parse_querysource(), parse_sizeval(), parse_sockaddrnameport(), parse_ttlval(), parse_unsupported(), parse_ustring(), and parser_complain().
#define CFG_LOG_BEFORE 0x00000002 |
Say "before <token>".
Definition at line 477 of file grammar.h.
Referenced by parse_semicolon(), and parser_complain().
#define CFG_LOG_NOPREP 0x00000004 |
Say just "<token>".
Definition at line 478 of file grammar.h.
Referenced by cfg_parse_mapbody(), cfg_parse_netprefix(), parse_portrange(), and parser_complain().
typedef struct cfg_clausedef cfg_clausedef_t |
typedef struct cfg_tuplefielddef cfg_tuplefielddef_t |
typedef struct cfg_printer cfg_printer_t |
typedef isc_result_t(* cfg_parsefunc_t)(cfg_parser_t *, const cfg_type_t *type, cfg_obj_t **) |
typedef void(* cfg_printfunc_t)(cfg_printer_t *, const cfg_obj_t *) |
typedef void(* cfg_docfunc_t)(cfg_printer_t *, const cfg_type_t *) |
typedef void(* cfg_freefunc_t)(cfg_parser_t *, cfg_obj_t *) |
typedef struct cfg_netprefix cfg_netprefix_t |
typedef ISC_LIST | ( | cfg_listelt_t | ) |
isc_result_t cfg_gettoken | ( | cfg_parser_t * | pctx, | |
int | options | |||
) |
Definition at line 2288 of file parser.c.
References CFG_LOG_NEAR, cfg_parser_error(), cfg_parser::closed_files, INSIST, ISC_FALSE, isc_lex_close(), isc_lex_getsourceline(), isc_lex_getsourcename(), isc_lex_gettoken(), ISC_LEXOPT_EOF, ISC_LEXOPT_NOMORE, ISC_LIST_APPEND, ISC_LIST_TAIL, ISC_LIST_UNLINK, ISC_R_IOERROR, ISC_R_NOMORE, ISC_R_NOSPACE, ISC_R_SUCCESS, isc_result_totext(), isc_tokentype_eof, isc_tokentype_unknown, ISC_TRUE, cfg_parser::lexer, cfg_parser::line, cfg_obj::list, cfg_parser::open_files, cfg_parser::seen_eof, cfg_parser::token, isc_token::type, and cfg_parser::ungotten.
Referenced by cfg_getstringtoken(), cfg_parse_boolean(), cfg_parse_dscp(), cfg_parse_kv_tuple(), cfg_parse_mapbody(), cfg_parse_netprefix(), cfg_parse_qstring(), cfg_parse_rawaddr(), cfg_parse_rawport(), cfg_parse_special(), cfg_parse_uint32(), cfg_peektoken(), parse_addrmatchelt(), parse_boolorauto(), parse_eof(), parse_logfile(), parse_logseverity(), parse_maybe_optional_keyvalue(), parse_portrange(), parse_qstringornone(), parse_querysource(), parse_semicolon(), parse_server_key_kludge(), parse_serverid(), parse_sizeval(), parse_sockaddrsub(), parse_token(), parse_ttlval(), parse_updatepolicy(), parse_ustring(), and parser_complain().
isc_result_t cfg_peektoken | ( | cfg_parser_t * | pctx, | |
int | options | |||
) |
Definition at line 2354 of file parser.c.
References cfg_gettoken(), cfg_ungettoken(), CHECK, and cleanup().
Referenced by cfg_parse_kv_tuple(), cfg_parse_netprefix(), cfg_parse_spacelist(), parse_addrmatchelt(), parse_enum_or_other(), parse_list(), parse_logfile(), parse_logseverity(), parse_masterselement(), parse_matchtype(), parse_maybe_optional_keyvalue(), parse_optional_class(), parse_optional_facility(), parse_optional_uint32(), parse_portrange(), parse_querysource(), parse_server_key_kludge(), parse_sockaddrnameport(), parse_sockaddrsub(), and parse_unsupported().
void cfg_ungettoken | ( | cfg_parser_t * | pctx | ) |
Definition at line 2346 of file parser.c.
References isc_lex_ungettoken(), ISC_TRUE, cfg_parser::lexer, cfg_parser::seen_eof, cfg_parser::token, and cfg_parser::ungotten.
Referenced by cfg_parse_mapbody(), cfg_peektoken(), parse_boolorauto(), parse_qstringornone(), parse_semicolon(), parse_serverid(), parse_token(), and parse_updatepolicy().
isc_result_t cfg_create_obj | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | objp | |||
) |
Definition at line 2524 of file parser.c.
References current_file(), cfg_obj::file, isc_mem_get, isc_mem_put, ISC_R_NOMEMORY, ISC_R_SUCCESS, isc_refcount_init(), cfg_parser::line, cfg_obj::line, cfg_parser::mctx, cfg_obj::references, and cfg_obj::type.
Referenced by cfg_create_list(), cfg_create_tuple(), cfg_parse_boolean(), cfg_parse_netprefix(), cfg_parse_uint32(), cfg_parse_void(), create_map(), create_string(), parse_boolorauto(), parse_logseverity(), parse_netaddr(), parse_qstringornone(), parse_querysource(), parse_serverid(), parse_sizeval(), parse_sockaddrsub(), parse_token(), parse_ttlval(), and parse_updatepolicy().
void cfg_print_rawuint | ( | cfg_printer_t * | pctx, | |
unsigned int | u | |||
) |
Definition at line 661 of file parser.c.
References cfg_print_cstr().
Referenced by cfg_print_sockaddr(), cfg_print_uint32(), print_netprefix(), and print_querysource().
isc_result_t cfg_parse_uint32 | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 636 of file parser.c.
References isc_tokenvalue_t::as_ulong, cfg_create_obj(), cfg_gettoken(), CFG_LOG_NEAR, cfg_parser_error(), cfg_type_uint32, CHECK, cleanup(), ISC_LEXOPT_CNUMBER, ISC_LEXOPT_NUMBER, ISC_R_UNEXPECTEDTOKEN, isc_tokentype_number, cfg_parser::token, isc_token::type, cfg_obj::uint32, UNUSED, isc_token::value, and cfg_obj::value.
Referenced by parse_logseverity(), and parse_port().
void cfg_print_uint32 | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 668 of file parser.c.
References cfg_print_rawuint(), cfg_obj::uint32, and cfg_obj::value.
void cfg_print_uint64 | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 706 of file parser.c.
References cfg_print_cstr(), ISC_PRINT_QUADFORMAT, cfg_obj::uint64, and cfg_obj::value.
isc_result_t cfg_parse_qstring | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 749 of file parser.c.
References cfg_gettoken(), CFG_LEXOPT_QSTRING, CFG_LOG_NEAR, cfg_parser_error(), cfg_type_qstring, CHECK, cleanup(), create_string(), ISC_R_UNEXPECTEDTOKEN, isc_tokentype_qstring, cfg_parser::token, TOKEN_STRING, isc_token::type, and UNUSED.
Referenced by parse_qstringornone(), and parse_serverid().
void cfg_print_ustring | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 861 of file parser.c.
References isc_textregion::base, cfg_print_chars(), isc_textregion::length, cfg_obj::string, and cfg_obj::value.
Referenced by print_qstring(), print_sstring(), and print_updatepolicy().
isc_result_t cfg_parse_astring | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 785 of file parser.c.
References cfg_getstringtoken(), cfg_type_qstring, CHECK, cleanup(), create_string(), TOKEN_STRING, and UNUSED.
Referenced by parse_addrmatchelt(), parse_masterselement(), and parse_matchname().
isc_result_t cfg_parse_sstring | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 801 of file parser.c.
References cfg_getstringtoken(), cfg_type_sstring, CHECK, cleanup(), create_string(), TOKEN_STRING, and UNUSED.
isc_result_t cfg_parse_rawaddr | ( | cfg_parser_t * | pctx, | |
unsigned int | flags, | |||
isc_netaddr_t * | na | |||
) |
Definition at line 1882 of file parser.c.
References CFG_ADDR_MASK, CFG_ADDR_V4OK, CFG_ADDR_V4PREFIXOK, CFG_ADDR_V6OK, CFG_ADDR_WILDOK, cfg_gettoken(), CFG_LOG_NEAR, cfg_parser_error(), CHECK, cleanup(), ISC_R_UNEXPECTEDTOKEN, token_addr(), and wild.
Referenced by cfg_parse_netprefix(), parse_netaddr(), parse_querysource(), and parse_sockaddrsub().
void cfg_print_rawaddr | ( | cfg_printer_t * | pctx, | |
const isc_netaddr_t * | na | |||
) |
Definition at line 1948 of file parser.c.
References cfg_print_chars(), isc_buffer_base, isc_buffer_init, isc_buffer_usedlength, isc_netaddr_totext(), ISC_R_SUCCESS, RUNTIME_CHECK, and text.
Referenced by print_netprefix(), and print_querysource().
isc_boolean_t cfg_lookingat_netaddr | ( | cfg_parser_t * | pctx, | |
unsigned int | flags | |||
) |
Definition at line 1912 of file parser.c.
References ISC_R_SUCCESS, ISC_TF, and token_addr().
Referenced by parse_addrmatchelt(), parse_masterselement(), and parse_sockaddrnameport().
isc_result_t cfg_parse_rawport | ( | cfg_parser_t * | pctx, | |
unsigned int | flags, | |||
in_port_t * | port | |||
) |
Definition at line 1920 of file parser.c.
References isc_tokenvalue_t::as_ulong, CFG_ADDR_WILDOK, cfg_gettoken(), CFG_LOG_NEAR, cfg_parser_error(), CHECK, cleanup(), ISC_LEXOPT_NUMBER, ISC_R_SUCCESS, ISC_R_UNEXPECTEDTOKEN, isc_tokentype_number, isc_tokentype_string, cfg_parser::token, TOKEN_STRING, isc_token::type, and isc_token::value.
Referenced by parse_querysource(), and parse_sockaddrsub().
isc_result_t cfg_parse_dscp | ( | cfg_parser_t * | pctx, | |
isc_dscp_t * | dscp | |||
) |
Definition at line 1961 of file parser.c.
References isc_tokenvalue_t::as_ulong, cfg_gettoken(), CFG_LOG_NEAR, cfg_parser_error(), CHECK, cleanup(), ISC_LEXOPT_CNUMBER, ISC_LEXOPT_NUMBER, ISC_R_RANGE, ISC_R_SUCCESS, ISC_R_UNEXPECTEDTOKEN, isc_tokentype_number, cfg_parser::token, isc_token::type, and isc_token::value.
Referenced by parse_querysource(), and parse_sockaddrsub().
isc_result_t cfg_parse_sockaddr | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 2211 of file parser.c.
References cfg_type::of, and parse_sockaddrsub().
Referenced by parse_masterselement(), parse_querysource(), and parse_sockaddrnameport().
isc_result_t cfg_parse_boolean | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 946 of file parser.c.
References cfg_obj::boolean, cfg_create_obj(), cfg_gettoken(), CFG_LOG_NEAR, cfg_parser_error(), cfg_type_boolean, CHECK, cleanup(), ISC_FALSE, ISC_R_SUCCESS, ISC_R_UNEXPECTEDTOKEN, isc_tokentype_string, ISC_TRUE, cfg_parser::token, TOKEN_STRING, isc_token::type, UNUSED, and cfg_obj::value.
Referenced by parse_boolorauto().
void cfg_print_sockaddr | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 2217 of file parser.c.
References cfg_print_cstr(), cfg_print_rawuint(), isc_netaddr_format(), ISC_NETADDR_FORMATSIZE, isc_netaddr_fromsockaddr(), isc_sockaddr_getport(), port, cfg_obj::sockaddr, cfg_obj::sockaddrdscp, and cfg_obj::value.
void cfg_print_boolean | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 986 of file parser.c.
References cfg_obj::boolean, cfg_print_cstr(), and cfg_obj::value.
void cfg_doc_sockaddr | ( | cfg_printer_t * | pctx, | |
const cfg_type_t * | type | |||
) |
Definition at line 2237 of file parser.c.
References CFG_ADDR_DSCPOK, CFG_ADDR_V4OK, CFG_ADDR_V6OK, CFG_ADDR_WILDOK, cfg_print_cstr(), cfg_type::of, and POST.
isc_result_t cfg_parse_netprefix | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 2062 of file parser.c.
References cfg_netprefix::address, AF_INET6, isc_tokenvalue_t::as_char, isc_tokenvalue_t::as_ulong, CFG_ADDR_V4OK, CFG_ADDR_V4PREFIXOK, CFG_ADDR_V6OK, cfg_create_obj(), cfg_gettoken(), CFG_LOG_NEAR, CFG_LOG_NOPREP, cfg_parse_rawaddr(), cfg_parser_error(), cfg_peektoken(), cfg_type_netprefix, CHECK, cleanup(), isc_netaddr::family, INSIST, ISC_LEXOPT_NUMBER, ISC_R_RANGE, ISC_R_SUCCESS, ISC_R_UNEXPECTEDTOKEN, isc_tokentype_number, isc_tokentype_special, cfg_obj::netprefix, cfg_netprefix::prefixlen, cfg_parser::token, isc_token::type, UNUSED, cfg_obj::value, and isc_token::value.
Referenced by parse_addrmatchelt().
isc_result_t cfg_parse_special | ( | cfg_parser_t * | pctx, | |
int | special | |||
) |
Parse a required special character 'special'.
Definition at line 337 of file parser.c.
References isc_tokenvalue_t::as_char, cfg_gettoken(), CFG_LOG_NEAR, cfg_parser_error(), CHECK, cleanup(), ISC_R_SUCCESS, ISC_R_UNEXPECTEDTOKEN, isc_tokentype_special, cfg_parser::token, isc_token::type, and isc_token::value.
Referenced by cfg_parse_bracketed_list(), cfg_parse_map(), and parse_server_key_kludge().
isc_result_t cfg_create_tuple | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | objp | |||
) |
Definition at line 215 of file parser.c.
References cfg_create_obj(), CHECK, cleanup(), isc_mem_get, isc_mem_put, ISC_R_NOMEMORY, ISC_R_SUCCESS, cfg_parser::mctx, cfg_tuplefielddef::name, cfg_type::of, return(), cfg_obj::tuple, and cfg_obj::value.
Referenced by cfg_parse_kv_tuple(), cfg_parse_rpz_policy(), cfg_parse_tuple(), parse_logfile(), parse_portrange(), and parse_sockaddrnameport().
isc_result_t cfg_parse_tuple | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 245 of file parser.c.
References cfg_create_tuple(), cfg_parse_obj(), CHECK, cleanup(), CLEANUP_OBJ, ISC_R_SUCCESS, cfg_tuplefielddef::name, cfg_type::of, cfg_obj::tuple, cfg_tuplefielddef::type, and cfg_obj::value.
void cfg_print_tuple | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 266 of file parser.c.
References cfg_print_cstr(), cfg_print_obj(), cfg_print_void(), ISC_FALSE, ISC_TF, cfg_tuplefielddef::name, cfg_type::of, cfg_type::print, cfg_obj::tuple, cfg_obj::type, and cfg_obj::value.
Referenced by print_lookaside(), and print_negated().
void cfg_doc_tuple | ( | cfg_printer_t * | pctx, | |
const cfg_type_t * | type | |||
) |
Definition at line 282 of file parser.c.
References cfg_doc_obj(), cfg_print_cstr(), cfg_print_void(), ISC_FALSE, ISC_TF, cfg_tuplefielddef::name, cfg_type::of, cfg_type::print, and cfg_tuplefielddef::type.
isc_result_t cfg_create_list | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | objp | |||
) |
Definition at line 1003 of file parser.c.
References cfg_create_obj(), CHECK, cleanup(), and ISC_LIST_INIT.
Referenced by cfg_parse_mapbody(), cfg_parse_spacelist(), cfg_parser_create(), cfg_parser_mapadd(), parse_list(), and parse_unsupported().
isc_result_t cfg_parse_listelt | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | elttype, | |||
cfg_listelt_t ** | ret | |||
) |
Definition at line 1043 of file parser.c.
References cfg_parse_obj(), CHECK, cleanup(), create_listelt(), isc_mem_put, ISC_R_SUCCESS, cfg_parser::mctx, and cfg_listelt::obj.
Referenced by cfg_parse_mapbody(), cfg_parse_spacelist(), parse_list(), and parse_unsupported().
isc_result_t cfg_parse_bracketed_list | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 1121 of file parser.c.
References cfg_parse_special(), CHECK, cleanup(), and parse_list().
Referenced by parse_updatepolicy().
void cfg_print_bracketed_list | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 1133 of file parser.c.
References print_close(), print_list(), and print_open().
Referenced by print_updatepolicy().
void cfg_doc_bracketed_list | ( | cfg_printer_t * | pctx, | |
const cfg_type_t * | type | |||
) |
Definition at line 1140 of file parser.c.
References cfg_doc_obj(), cfg_print_cstr(), and cfg_type::of.
isc_result_t cfg_parse_spacelist | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 1152 of file parser.c.
References isc_tokenvalue_t::as_char, cfg_create_list(), cfg_parse_listelt(), cfg_peektoken(), CHECK, cleanup(), CLEANUP_OBJ, ISC_LIST_APPEND, ISC_R_SUCCESS, isc_tokentype_special, cfg_obj::list, cfg_type::of, cfg_parser::token, isc_token::type, cfg_obj::value, and isc_token::value.
void cfg_print_spacelist | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 1180 of file parser.c.
References cfg_print_cstr(), cfg_print_obj(), ISC_LIST_HEAD, ISC_LIST_NEXT, cfg_obj::list, cfg_listelt::obj, and cfg_obj::value.
isc_result_t cfg_parse_enum | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 836 of file parser.c.
References CHECK, check_enum(), cleanup(), CLEANUP_OBJ, ISC_R_SUCCESS, cfg_type::of, and parse_ustring().
Referenced by parse_enum_or_other(), and parse_matchtype().
void cfg_doc_enum | ( | cfg_printer_t * | pctx, | |
const cfg_type_t * | type | |||
) |
void cfg_print_chars | ( | cfg_printer_t * | pctx, | |
const char * | text, | |||
int | len | |||
) |
Print 'len' characters at 'text'.
Definition at line 144 of file parser.c.
References cfg_printer::closure, and cfg_printer::f.
Referenced by cfg_print_cstr(), cfg_print_rawaddr(), cfg_print_ustring(), and doc_enum_or_other().
void cfg_print_cstr | ( | cfg_printer_t * | pctx, | |
const char * | s | |||
) |
Print the null-terminated string 's'.
Definition at line 656 of file parser.c.
References cfg_print_chars().
Referenced by cfg_doc_bracketed_list(), cfg_doc_enum(), cfg_doc_kv_tuple(), cfg_doc_map(), cfg_doc_mapbody(), cfg_doc_netaddr(), cfg_doc_sockaddr(), cfg_doc_terminal(), cfg_doc_tuple(), cfg_print_boolean(), cfg_print_kv_tuple(), cfg_print_map(), cfg_print_rawuint(), cfg_print_sockaddr(), cfg_print_spacelist(), cfg_print_tuple(), cfg_print_uint64(), doc_boolorauto(), doc_keyvalue(), doc_logfile(), doc_lookaside(), doc_masterselement(), doc_matchname(), doc_optional_bracketed_list(), doc_optional_keyvalue(), doc_optional_uint32(), doc_qstringornone(), doc_rpz_cname(), doc_rpz_policy(), doc_serverid(), doc_sockaddrnameport(), doc_updatepolicy(), print_auto(), print_boolorauto(), print_clause_flags(), print_close(), print_hostname(), print_indent(), print_keyvalue(), print_list(), print_logfile(), print_lookaside(), print_negated(), print_netprefix(), print_none(), print_open(), print_qstring(), print_querysource(), print_sstring(), and print_symval().
isc_result_t cfg_parse_map | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 1456 of file parser.c.
References cfg_parse_mapbody(), cfg_parse_special(), CHECK, and cleanup().
Referenced by parse_any_named_map().
isc_result_t cfg_parse_named_map | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 1492 of file parser.c.
References parse_any_named_map().
Referenced by cfg_doc_map().
isc_result_t cfg_parse_addressed_map | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 1501 of file parser.c.
References cfg_type_netaddr, and parse_any_named_map().
Referenced by cfg_doc_map().
isc_result_t cfg_parse_netprefix_map | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 1510 of file parser.c.
References cfg_type_netprefix, and parse_any_named_map().
Referenced by cfg_doc_map().
void cfg_print_map | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 1605 of file parser.c.
References cfg_print_cstr(), cfg_print_mapbody(), cfg_print_obj(), cfg_map::id, cfg_obj::map, print_close(), print_open(), and cfg_obj::value.
void cfg_doc_map | ( | cfg_printer_t * | pctx, | |
const cfg_type_t * | type | |||
) |
Definition at line 1632 of file parser.c.
References cfg_doc_obj(), cfg_parse_addressed_map(), cfg_parse_named_map(), cfg_parse_netprefix_map(), cfg_print_cstr(), cfg_print_void(), cfg_type_netaddr, cfg_type_netprefix, cfg_clausedef::flags, cfg_clausedef::name, cfg_type::of, cfg_type::parse, cfg_type::print, print_clause_flags(), print_close(), print_indent(), print_open(), and cfg_clausedef::type.
isc_result_t cfg_parse_mapbody | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 1257 of file parser.c.
References isc_symvalue::as_pointer, isc_textregion::base, CFG_CLAUSEFLAG_CALLBACK, CFG_CLAUSEFLAG_MULTI, CFG_CLAUSEFLAG_NOTCONFIGURED, CFG_CLAUSEFLAG_NOTIMP, CFG_CLAUSEFLAG_NYI, CFG_CLAUSEFLAG_OBSOLETE, cfg_create_list(), cfg_gettoken(), CFG_LOG_NEAR, CFG_LOG_NOPREP, cfg_obj_destroy(), cfg_parse_listelt(), cfg_parse_obj(), cfg_parser_error(), cfg_parser_warning(), cfg_type_unsupported, cfg_ungettoken(), CHECK, cfg_map::clausesets, cleanup(), CLEANUP_OBJ, create_map(), cfg_clausedef::flags, INSIST, ISC_LIST_APPEND, isc_mem_put, ISC_R_EXISTS, ISC_R_FAILURE, ISC_R_NOTFOUND, ISC_R_SUCCESS, isc_symexists_reject, isc_symtab_define(), isc_symtab_lookup(), ISC_TF, isc_tokentype_string, cfg_obj::list, map, cfg_obj::map, cfg_parser::mctx, cfg_clausedef::name, cfg_type::of, parse_semicolon(), parse_symtab_elt(), parser_openfile(), cfg_obj::string, cfg_map::symtab, cfg_parser::token, TOKEN_STRING, cfg_clausedef::type, isc_token::type, and cfg_obj::value.
Referenced by cfg_parse_map().
void cfg_print_mapbody | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 1530 of file parser.c.
References isc_symvalue::as_pointer, cfg_map::clausesets, INSIST, ISC_LIST_HEAD, ISC_LIST_NEXT, ISC_R_NOTFOUND, ISC_R_SUCCESS, isc_symtab_lookup(), cfg_obj::list, cfg_obj::map, cfg_clausedef::name, cfg_listelt::obj, print_symval(), cfg_map::symtab, cfg_obj::type, and cfg_obj::value.
Referenced by cfg_print_map().
void cfg_doc_mapbody | ( | cfg_printer_t * | pctx, | |
const cfg_type_t * | type | |||
) |
Definition at line 1574 of file parser.c.
References cfg_doc_obj(), cfg_print_cstr(), cfg_clausedef::name, cfg_type::of, and cfg_clausedef::type.
isc_result_t cfg_parse_void | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 604 of file parser.c.
References cfg_create_obj(), cfg_type_void, and UNUSED.
Referenced by cfg_parse_kv_tuple(), cfg_parse_rpz_policy(), parse_logfile(), parse_matchname(), and parse_maybe_optional_keyvalue().
void cfg_print_void | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 610 of file parser.c.
References UNUSED.
Referenced by cfg_doc_map(), cfg_doc_tuple(), cfg_print_kv_tuple(), cfg_print_tuple(), and print_logfile().
void cfg_doc_void | ( | cfg_printer_t * | pctx, | |
const cfg_type_t * | type | |||
) |
isc_result_t cfg_parse_obj | ( | cfg_parser_t * | pctx, | |
const cfg_type_t * | type, | |||
cfg_obj_t ** | ret | |||
) |
Definition at line 181 of file parser.c.
References INSIST, ISC_R_SUCCESS, and cfg_type::parse.
Referenced by cfg_parse_kv_tuple(), cfg_parse_listelt(), cfg_parse_mapbody(), cfg_parse_rpz_policy(), cfg_parse_tuple(), parse2(), parse_addrmatchelt(), parse_any_named_map(), parse_enum_or_other(), parse_logfile(), parse_logseverity(), parse_optional_class(), parse_optional_facility(), parse_optional_uint32(), parse_server_key_kludge(), parse_sockaddrnameport(), and parse_symtab_elt().
void cfg_print_obj | ( | cfg_printer_t * | pctx, | |
const cfg_obj_t * | obj | |||
) |
Definition at line 139 of file parser.c.
References cfg_type::print, and cfg_obj::type.
Referenced by cfg_print_kv_tuple(), cfg_print_map(), cfg_print_spacelist(), cfg_print_tuple(), print_list(), print_logfile(), and print_symval().
void cfg_doc_obj | ( | cfg_printer_t * | pctx, | |
const cfg_type_t * | type | |||
) |
Print a description of the grammar of an arbitrary configuration type 'type'.
Definition at line 2627 of file parser.c.
References cfg_type::doc.
Referenced by cfg_doc_bracketed_list(), cfg_doc_kv_tuple(), cfg_doc_map(), cfg_doc_mapbody(), cfg_doc_tuple(), cfg_print_grammar(), doc_keyvalue(), doc_matchname(), doc_optional_bracketed_list(), doc_optional_keyvalue(), and doc_updatepolicy().
void cfg_doc_terminal | ( | cfg_printer_t * | pctx, | |
const cfg_type_t * | type | |||
) |
Document the type 'type' as a terminal by printing its name in angle brackets, e.g., <uint32>.
Definition at line 2632 of file parser.c.
References cfg_print_cstr(), and cfg_type::name.
Referenced by doc_enum_or_other(), and doc_rpz_cname().
void cfg_parser_error | ( | cfg_parser_t * | pctx, | |
unsigned int | flags, | |||
const char * | fmt, | |||
... | ||||
) |
Referenced by cfg_getstringtoken(), cfg_gettoken(), cfg_parse_boolean(), cfg_parse_dscp(), cfg_parse_kv_tuple(), cfg_parse_mapbody(), cfg_parse_netprefix(), cfg_parse_qstring(), cfg_parse_rawaddr(), cfg_parse_rawport(), cfg_parse_special(), cfg_parse_uint32(), check_enum(), parse2(), parse_addrmatchelt(), parse_eof(), parse_masterselement(), parse_maybe_optional_keyvalue(), parse_port(), parse_portrange(), parse_querysource(), parse_semicolon(), parse_sizeval(), parse_sockaddrnameport(), parse_sockaddrsub(), parse_ttlval(), parse_unsupported(), parse_ustring(), and parser_openfile().
void cfg_parser_warning | ( | cfg_parser_t * | pctx, | |
unsigned int | flags, | |||
const char * | fmt, | |||
... | ||||
) |
Referenced by cfg_parse_mapbody().
void isc_boolean_t cfg_is_enum | ( | const char * | s, | |
const char *const * | enums | |||
) |
Return true iff the string 's' is one of the strings in 'enums'.
Definition at line 817 of file parser.c.
References ISC_FALSE, and ISC_TRUE.
Referenced by check_enum(), and parse_enum_or_other().
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_uint32 |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_uint64 |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_string |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_boolean |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_map |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_list |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_tuple |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_sockaddr |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_netprefix |
LIBISCCFG_EXTERNAL_DATA cfg_rep_t cfg_rep_void |
Predefined data representation types.
Definition at line 124 of file parser.c.
Referenced by print_boolorauto().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_boolean |
Predefined configuration object types.
Definition at line 993 of file parser.c.
Referenced by cfg_parse_boolean(), parse_dialup_type(), parse_filter_aaaa(), parse_ixfrdiff_type(), parse_notify_type(), and parse_zonestat().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_uint32 |
Predefined configuration object types.
Definition at line 684 of file parser.c.
Referenced by cfg_parse_uint32(), parse_logseverity(), parse_logversions(), parse_optional_uint32(), and parse_ttlval().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_uint64 |
Predefined configuration object types.
Definition at line 713 of file parser.c.
Referenced by parse_sizeval().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_qstring |
Predefined configuration object types.
Definition at line 903 of file parser.c.
Referenced by cfg_parse_astring(), cfg_parse_qstring(), and parser_openfile().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_astring |
Predefined configuration object types.
Definition at line 915 of file parser.c.
Referenced by parse_masterselement(), parse_optional_facility(), and parse_server_key_kludge().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_ustring |
Predefined configuration object types.
Definition at line 909 of file parser.c.
Referenced by parse_optional_class(), parse_updatepolicy(), and parse_ustring().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_sstring |
Predefined configuration object types.
Definition at line 924 of file parser.c.
Referenced by cfg_parse_sstring().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_sockaddr |
Predefined configuration object types.
Definition at line 2198 of file parser.c.
Referenced by parse_masterselement(), and parse_sockaddrnameport().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_sockaddrdscp |
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_netaddr |
Predefined configuration object types.
Definition at line 2034 of file parser.c.
Referenced by cfg_doc_map(), and cfg_parse_addressed_map().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_netaddr4 |
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_netaddr4wild |
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_netaddr6 |
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_netaddr6wild |
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_netprefix |
Predefined configuration object types.
Definition at line 2140 of file parser.c.
Referenced by cfg_doc_map(), cfg_parse_netprefix(), and cfg_parse_netprefix_map().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_void |
Predefined configuration object types.
Definition at line 627 of file parser.c.
Referenced by cfg_parse_void(), parse_optional_class(), parse_optional_facility(), and parse_optional_uint32().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_token |
Predefined configuration object types.
Definition at line 1741 of file parser.c.
Referenced by parse_token().
LIBISCCFG_EXTERNAL_DATA cfg_type_t cfg_type_unsupported |
Predefined configuration object types.
Definition at line 1790 of file parser.c.
Referenced by cfg_parse_mapbody().