OpenDNSSEC-enforcer 2.1.13
kc_helper.h File Reference
#include "config.h"
#include <libxml/xpath.h>

Go to the source code of this file.

Data Structures

struct  KC_REPO

Macros

#define DEFAULT_LOG_FACILITY   LOG_USER
#define DEFAULT_LOG_FACILITY_STRING   "LOG_USER"
#define KC_NAME_LENGTH   256

Functions

int check_conf (const char *conf, char **kasp, char **zonelist, char ***repo_listout, int *repo_countout, int verbose)
int check_kasp (const char *kasp, char **repo_list, int repo_count, int verbose, char ***policy_names_out, int *policy_count_out)
int check_zonelist (const char *zonelist, int verbose, char **policy_names, int policy_count)
void log_init (int facility, const char *program_name)
void log_switch (int facility, const char *program_name)
void dual_log (const char *format,...)
int check_rng (const char *filename, const char *rngfilename, int verbose)
int check_file (const char *filename, const char *log_string)
int check_file_from_xpath (xmlXPathContextPtr xpath_ctx, const char *log_string, const xmlChar *file_xexpr)
int check_path (const char *pathname, const char *log_string)
int check_path_from_xpath (xmlXPathContextPtr xpath_ctx, const char *log_string, const xmlChar *path_xexpr)
int check_user_group (xmlXPathContextPtr xpath_ctx, const xmlChar *user_xexpr, const xmlChar *group_xexpr)
int check_time_def (const char *time_expr, const char *location, const char *field, const char *filename, int *interval)
int check_time_def_from_xpath (xmlXPathContextPtr xpath_ctx, const xmlChar *time_xexpr, const char *location, const char *field, const char *filename)
int check_policy (xmlNode *curNode, const char *policy_name, char **repo_list, int repo_count, const char *kasp)
int DtXMLIntervalSeconds (const char *text, int *interval)
int StrStrtoi (const char *string, int *value)
int StrStrtol (const char *string, long *value)
char * StrStrdup (const char *string)
void StrTrimR (char *text)
char * StrTrimL (char *text)
void * MemCalloc (size_t nmemb, size_t size)

Macro Definition Documentation

◆ DEFAULT_LOG_FACILITY

#define DEFAULT_LOG_FACILITY   LOG_USER

Definition at line 33 of file kc_helper.h.

Referenced by main().

◆ DEFAULT_LOG_FACILITY_STRING

#define DEFAULT_LOG_FACILITY_STRING   "LOG_USER"

Definition at line 34 of file kc_helper.h.

◆ KC_NAME_LENGTH

#define KC_NAME_LENGTH   256

Definition at line 40 of file kc_helper.h.

Referenced by check_policy().

Function Documentation

◆ check_conf()

int check_conf ( const char * conf,
char ** kasp,
char ** zonelist,
char *** repo_listout,
int * repo_countout,
int verbose )
extern

Check the conf.xml file

Parameters
confconfig file to validate
kasp[in,out]if NULL, will set it to kasp.xml found in config
zonelist[in,out]if NULL, will set it to zonelist.xml found in config
Returns
status (0 == success; 1 == error)

Definition at line 1422 of file kc_helper.c.

References check_file(), check_file_from_xpath(), check_path(), check_path_from_xpath(), check_rng(), check_time_def_from_xpath(), check_user_group(), dual_log(), kc_helper_printto_stdout, KC_REPO::module, KC_REPO::name, StrFree, StrStrdup(), and KC_REPO::TokenLabel.

Referenced by main().

◆ check_file()

int check_file ( const char * filename,
const char * log_string )
extern

Definition at line 196 of file kc_helper.c.

References dual_log().

Referenced by check_conf(), check_file_from_xpath(), and check_rng().

◆ check_file_from_xpath()

int check_file_from_xpath ( xmlXPathContextPtr xpath_ctx,
const char * log_string,
const xmlChar * file_xexpr )
extern

Definition at line 220 of file kc_helper.c.

References check_file(), dual_log(), and StrFree.

Referenced by check_conf().

◆ check_kasp()

int check_kasp ( const char * kasp,
char ** repo_list,
int repo_count,
int verbose,
char *** policy_names_out,
int * policy_count_out )
extern

◆ check_path()

int check_path ( const char * pathname,
const char * log_string )
extern

Definition at line 253 of file kc_helper.c.

References dual_log().

Referenced by check_conf(), and check_path_from_xpath().

◆ check_path_from_xpath()

int check_path_from_xpath ( xmlXPathContextPtr xpath_ctx,
const char * log_string,
const xmlChar * path_xexpr )
extern

Definition at line 276 of file kc_helper.c.

References check_path(), dual_log(), and StrFree.

Referenced by check_conf().

◆ check_policy()

int check_policy ( xmlNode * curNode,
const char * policy_name,
char ** repo_list,
int repo_count,
const char * kasp )
extern

Definition at line 412 of file kc_helper.c.

References check_time_def(), dual_log(), KC_NAME_LENGTH, policy_name(), StrFree, and StrStrtoi().

Referenced by check_kasp().

◆ check_rng()

int check_rng ( const char * filename,
const char * rngfilename,
int verbose )
extern

Definition at line 92 of file kc_helper.c.

References check_file(), and dual_log().

Referenced by check_conf(), check_kasp(), and check_zonelist().

◆ check_time_def()

int check_time_def ( const char * time_expr,
const char * location,
const char * field,
const char * filename,
int * interval )
extern

Definition at line 352 of file kc_helper.c.

References DtXMLIntervalSeconds(), and dual_log().

Referenced by check_policy(), and check_time_def_from_xpath().

◆ check_time_def_from_xpath()

int check_time_def_from_xpath ( xmlXPathContextPtr xpath_ctx,
const xmlChar * time_xexpr,
const char * location,
const char * field,
const char * filename )
extern

Definition at line 389 of file kc_helper.c.

References check_time_def(), dual_log(), and StrFree.

Referenced by check_conf().

◆ check_user_group()

int check_user_group ( xmlXPathContextPtr xpath_ctx,
const xmlChar * user_xexpr,
const xmlChar * group_xexpr )
extern

Definition at line 302 of file kc_helper.c.

References dual_log(), and StrFree.

Referenced by check_conf().

◆ check_zonelist()

int check_zonelist ( const char * zonelist,
int verbose,
char ** policy_names,
int policy_count )
extern

Definition at line 1700 of file kc_helper.c.

References check_rng(), dual_log(), kc_helper_printto_stdout, and policy_name().

Referenced by main(), zonelist_export(), and zonelist_import().

◆ DtXMLIntervalSeconds()

int DtXMLIntervalSeconds ( const char * text,
int * interval )
extern

Definition at line 1059 of file kc_helper.c.

Referenced by check_time_def().

◆ dual_log()

◆ log_init()

void log_init ( int facility,
const char * program_name )
extern

Definition at line 55 of file kc_helper.c.

Referenced by main().

◆ log_switch()

void log_switch ( int facility,
const char * program_name )
extern

References policy_name().

◆ MemCalloc()

void * MemCalloc ( size_t nmemb,
size_t size )
extern

Definition at line 1400 of file kc_helper.c.

References dual_log().

Referenced by StrStrdup().

◆ StrStrdup()

char * StrStrdup ( const char * string)
extern

Definition at line 1293 of file kc_helper.c.

References dual_log(), and MemCalloc().

Referenced by check_conf(), main(), and StrStrtol().

◆ StrStrtoi()

int StrStrtoi ( const char * string,
int * value )
extern

Definition at line 1195 of file kc_helper.c.

References dual_log(), and StrStrtol().

Referenced by check_policy().

◆ StrStrtol()

int StrStrtol ( const char * string,
long * value )
extern

Definition at line 1239 of file kc_helper.c.

References dual_log(), StrFree, StrStrdup(), StrTrimL(), and StrTrimR().

Referenced by StrStrtoi().

◆ StrTrimL()

char * StrTrimL ( char * text)
extern

Definition at line 1389 of file kc_helper.c.

Referenced by StrStrtol().

◆ StrTrimR()

void StrTrimR ( char * text)
extern

Definition at line 1351 of file kc_helper.c.

Referenced by StrStrtol().