Files
repmgr/config.h
Ian Barwick 0fb4876256 Initial config file infrastructure
Also unify command line option structure/parsing so everything's
in the same order in the code.
2017-04-20 09:41:50 +09:00

55 lines
1.1 KiB
C

/*
* config.h
*
* Copyright (c) 2ndQuadrant, 2010-2017
*
*/
#ifndef _REPMGR_CONFIG_H_
#define _REPMGR_CONFIG_H_
typedef struct
{
int node_id;
char node_name[MAXLEN];
char loglevel[MAXLEN];
char logfacility[MAXLEN];
char logfile[MAXLEN];
} t_configuration_options;
/*
* The following will initialize the structure with a minimal set of options;
* actual defaults are set in parse_config() before parsing the configuration file
*/
#define T_CONFIGURATION_OPTIONS_INITIALIZER { \
/* node settings */ \
UNKNOWN_NODE_ID, "", \
/* log settings */ \
"", "", ""}
typedef struct ItemListCell
{
struct ItemListCell *next;
char *string;
} ItemListCell;
typedef struct ItemList
{
ItemListCell *head;
ItemListCell *tail;
} ItemList;
void set_progname(const char *argv0);
const char *progname(void);
bool load_config(const char *config_file, bool verbose, t_configuration_options *options, char *argv0);
bool parse_config(t_configuration_options *options);
bool reload_config(t_configuration_options *orig_options);
void item_list_append(ItemList *item_list, char *error_message);
#endif