OpenDNSSEC-enforcer
2.1.5
|
#include <syslog.h>
#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include <sys/stat.h>
#include <errno.h>
#include <pwd.h>
#include <grp.h>
#include <limits.h>
#include <ctype.h>
#include "config.h"
#include "kc_helper.h"
#include <libxml/tree.h>
#include <libxml/parser.h>
#include <libxml/xpath.h>
#include <libxml/xpathInternals.h>
#include <libxml/relaxng.h>
Go to the source code of this file.
Macros | |
#define | _GNU_SOURCE |
#define | StrFree(ptr) {if(ptr != NULL) {free(ptr); (ptr) = NULL;}} |
Functions | |
void | log_init (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) |
int | check_conf (const char *conf, char **kasp, char **zonelist, char ***repo_listout, int *repo_countout, int verbose) |
int | check_zonelist (const char *zonelist, int verbose, char **policy_names, int policy_count) |
int | check_kasp (const char *kasp, char **repo_list, int repo_count, int verbose, char ***policy_names_out, int *policy_count_out) |
Variables | |
int | kc_helper_printto_stdout = 0 |
#define _GNU_SOURCE |
Definition at line 26 of file kc_helper.c.
#define StrFree | ( | ptr | ) | {if(ptr != NULL) {free(ptr); (ptr) = NULL;}} |
Definition at line 47 of file kc_helper.c.
int check_conf | ( | const char * | conf, |
char ** | kasp, | ||
char ** | zonelist, | ||
char *** | repo_listout, | ||
int * | repo_countout, | ||
int | verbose | ||
) |
Check the conf.xml file
conf | config 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 |
Definition at line 1386 of file kc_helper.c.
References kc_helper_printto_stdout.
int check_file | ( | const char * | filename, |
const char * | log_string | ||
) |
Definition at line 192 of file kc_helper.c.
References dual_log().
Referenced by check_file_from_xpath(), and check_rng().
int check_file_from_xpath | ( | xmlXPathContextPtr | xpath_ctx, |
const char * | log_string, | ||
const xmlChar * | file_xexpr | ||
) |
Definition at line 216 of file kc_helper.c.
References check_file(), dual_log(), and StrFree.
int check_kasp | ( | const char * | kasp, |
char ** | repo_list, | ||
int | repo_count, | ||
int | verbose, | ||
char *** | policy_names_out, | ||
int * | policy_count_out | ||
) |
Definition at line 1740 of file kc_helper.c.
References kc_helper_printto_stdout.
int check_path | ( | const char * | pathname, |
const char * | log_string | ||
) |
Definition at line 249 of file kc_helper.c.
References dual_log().
Referenced by check_path_from_xpath().
int check_path_from_xpath | ( | xmlXPathContextPtr | xpath_ctx, |
const char * | log_string, | ||
const xmlChar * | path_xexpr | ||
) |
Definition at line 272 of file kc_helper.c.
References check_path(), dual_log(), and StrFree.
int check_policy | ( | xmlNode * | curNode, |
const char * | policy_name, | ||
char ** | repo_list, | ||
int | repo_count, | ||
const char * | kasp | ||
) |
Definition at line 408 of file kc_helper.c.
References check_time_def(), dual_log(), KC_NAME_LENGTH, policy_name(), StrFree, and StrStrtoi().
int check_rng | ( | const char * | filename, |
const char * | rngfilename, | ||
int | verbose | ||
) |
Definition at line 88 of file kc_helper.c.
References check_file(), and dual_log().
int check_time_def | ( | const char * | time_expr, |
const char * | location, | ||
const char * | field, | ||
const char * | filename, | ||
int * | interval | ||
) |
Definition at line 348 of file kc_helper.c.
References DtXMLIntervalSeconds(), and dual_log().
Referenced by check_policy(), and 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 | ||
) |
Definition at line 385 of file kc_helper.c.
References check_time_def(), dual_log(), and StrFree.
int check_user_group | ( | xmlXPathContextPtr | xpath_ctx, |
const xmlChar * | user_xexpr, | ||
const xmlChar * | group_xexpr | ||
) |
Definition at line 298 of file kc_helper.c.
References dual_log(), and StrFree.
int check_zonelist | ( | const char * | zonelist, |
int | verbose, | ||
char ** | policy_names, | ||
int | policy_count | ||
) |
Definition at line 1664 of file kc_helper.c.
References dual_log(), kc_helper_printto_stdout, and policy_name().
int DtXMLIntervalSeconds | ( | const char * | text, |
int * | interval | ||
) |
Definition at line 1023 of file kc_helper.c.
Referenced by check_time_def().
void dual_log | ( | const char * | format, |
... | |||
) |
Definition at line 59 of file kc_helper.c.
References kc_helper_printto_stdout.
Referenced by check_file(), check_file_from_xpath(), check_path(), check_path_from_xpath(), check_policy(), check_rng(), check_time_def(), check_time_def_from_xpath(), check_user_group(), check_zonelist(), MemCalloc(), and StrStrdup().
void log_init | ( | int | facility, |
const char * | program_name | ||
) |
Definition at line 51 of file kc_helper.c.
void* MemCalloc | ( | size_t | nmemb, |
size_t | size | ||
) |
char* StrStrdup | ( | const char * | string | ) |
Definition at line 1257 of file kc_helper.c.
References dual_log(), and MemCalloc().
Referenced by main().
int StrStrtoi | ( | const char * | string, |
int * | value | ||
) |
Definition at line 1159 of file kc_helper.c.
Referenced by check_policy().
int StrStrtol | ( | const char * | string, |
long * | value | ||
) |
Definition at line 1203 of file kc_helper.c.
char* StrTrimL | ( | char * | text | ) |
Definition at line 1353 of file kc_helper.c.
void StrTrimR | ( | char * | text | ) |
Definition at line 1315 of file kc_helper.c.
int kc_helper_printto_stdout = 0 |
Definition at line 49 of file kc_helper.c.
Referenced by check_conf(), check_kasp(), check_zonelist(), dual_log(), and main().