You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-11-05 04:50:35 +03:00
144 lines
6.9 KiB
C
144 lines
6.9 KiB
C
/*
|
|
* read_config.h: reads configuration files for extensible sections.
|
|
*
|
|
*/
|
|
#ifndef READ_CONFIG_H
|
|
#define READ_CONFIG_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define STRINGMAX 1024
|
|
|
|
#define NORMAL_CONFIG 0
|
|
#define PREMIB_CONFIG 1
|
|
#define EITHER_CONFIG 2
|
|
|
|
|
|
|
|
/*
|
|
* Defines a set of file types and the parse and free functions
|
|
* which process the syntax following a given token in a given file.
|
|
*/
|
|
struct config_files {
|
|
char *fileHeader; /* Label for entire file. */
|
|
struct config_line *start;
|
|
struct config_files *next;
|
|
};
|
|
|
|
struct config_line {
|
|
char *config_token; /* Label for each line parser
|
|
* in the given file. */
|
|
void (*parse_line) (const char *, char *);
|
|
void (*free_func) (void);
|
|
struct config_line *next;
|
|
char config_time; /* {NORMAL,PREMIB,EITHER}_CONFIG */
|
|
char *help;
|
|
};
|
|
|
|
struct read_config_memory {
|
|
char *line;
|
|
struct read_config_memory *next;
|
|
};
|
|
|
|
|
|
int netsnmp_config(char *); /* parse a simple line: token=values */
|
|
void netsnmp_config_remember(char *); /* process later, during snmp_init() */
|
|
void netsnmp_config_process_memories(void); /* run all memories through parser */
|
|
void read_config(const char *, struct config_line *, int);
|
|
void read_configs(void);
|
|
void read_premib_configs(void);
|
|
void read_config_files(int);
|
|
void free_config(void);
|
|
void config_perror(const char *);
|
|
void config_pwarn(const char *);
|
|
char *skip_white(char *);
|
|
char *skip_not_white(char *);
|
|
char *skip_token(char *);
|
|
char *copy_nword(char *, char *, int);
|
|
char *copy_word(char *, char *); /* do not use */
|
|
void read_config_with_type(const char *, const char *);
|
|
struct config_line *register_config_handler(const char *, const char *,
|
|
void (*parser) (const char
|
|
*, char *),
|
|
void (*releaser) (void),
|
|
const char *);
|
|
struct config_line *register_app_config_handler(const char *,
|
|
void (*parser) (const
|
|
char *,
|
|
char
|
|
*),
|
|
void (*releaser)
|
|
(void), const char *);
|
|
struct config_line *register_prenetsnmp_mib_handler(const char *,
|
|
const char *,
|
|
void (*parser)
|
|
(const char *,
|
|
char *),
|
|
void (*releaser)
|
|
(void),
|
|
const char *);
|
|
struct config_line *register_app_prenetsnmp_mib_handler(const char *,
|
|
void (*parser)
|
|
(const char *,
|
|
char *),
|
|
void
|
|
(*releaser)
|
|
(void),
|
|
const char *);
|
|
void unregister_config_handler(const char *, const char *);
|
|
void unregister_app_config_handler(const char *);
|
|
void unregister_all_config_handlers(void);
|
|
void read_config_print_usage(const char *lead);
|
|
char *read_config_save_octet_string(char *saveto,
|
|
u_char * str,
|
|
size_t len);
|
|
char *read_config_read_octet_string(char *readfrom,
|
|
u_char ** str,
|
|
size_t * len);
|
|
char *read_config_read_objid(char *readfrom, oid ** objid,
|
|
size_t * len);
|
|
char *read_config_save_objid(char *saveto, oid * objid,
|
|
size_t len);
|
|
char *read_config_read_data(int type, char *readfrom,
|
|
void *dataptr, size_t * len);
|
|
char *read_config_read_memory(int type, char *readfrom,
|
|
char *dataptr, size_t * len);
|
|
char *read_config_store_data(int type, char *storeto,
|
|
void *dataptr, size_t * len);
|
|
char *read_config_store_data_prefix(char prefix, int type,
|
|
char *storeto,
|
|
void *dataptr, size_t len);
|
|
void read_config_store(const char *type, const char *line);
|
|
void read_app_config_store(const char *line);
|
|
void snmp_save_persistent(const char *type);
|
|
void snmp_clean_persistent(const char *type);
|
|
struct config_line *read_config_get_handlers(const char *type);
|
|
|
|
/*
|
|
* external memory list handlers
|
|
*/
|
|
void snmp_config_remember_in_list(char *line,
|
|
struct read_config_memory
|
|
**mem);
|
|
void snmp_config_process_memory_list(struct
|
|
read_config_memory
|
|
**mem, int, int);
|
|
void snmp_config_remember_free_list(struct
|
|
read_config_memory
|
|
**mem);
|
|
|
|
void set_configuration_directory(const char *dir);
|
|
const char *get_configuration_directory(void);
|
|
void set_persistent_directory(const char *dir);
|
|
const char *get_persistent_directory(void);
|
|
void set_temp_file_pattern(const char *pattern);
|
|
const char *get_temp_file_pattern(void);
|
|
void handle_long_opt(const char *myoptarg);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif /* READ_CONFIG_H */
|