/usr/include/net-snmp/library/read_config.h is in libsnmp-dev 5.7.2~dfsg-8.1ubuntu3.3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 | /*
* 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
#include <net-snmp/config_api.h>
/*
* 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;
};
NETSNMP_IMPORT
int netsnmp_config(char *); /* parse a simple line: token=values */
NETSNMP_IMPORT
void netsnmp_config_remember(char *); /* process later, during snmp_init() */
void netsnmp_config_process_memories(void); /* run all memories through parser */
int read_config(const char *, struct config_line *, int);
int read_config_files(int);
NETSNMP_IMPORT
void free_config(void);
#if !defined(__GNUC__) || __GNUC__ < 2 || (__GNUC__ == 2&& __GNUC_MINOR__ < 8)
NETSNMP_IMPORT
void netsnmp_config_error(const char *, ...);
void netsnmp_config_warn(const char *, ...);
#else
NETSNMP_IMPORT
void netsnmp_config_error(const char *, ...)
__attribute__((__format__(__printf__, 1, 2)));
void netsnmp_config_warn(const char *, ...)
__attribute__((__format__(__printf__, 1, 2)));
#endif
NETSNMP_IMPORT
char *skip_white(char *);
const char *skip_white_const(const char *);
NETSNMP_IMPORT
char *skip_not_white(char *);
const char *skip_not_white_const(const char *);
NETSNMP_IMPORT
char *skip_token(char *);
NETSNMP_IMPORT
const char *skip_token_const(const char *);
NETSNMP_IMPORT
char *copy_nword(char *, char *, int);
NETSNMP_IMPORT
const char *copy_nword_const(const char *, char *, int);
NETSNMP_IMPORT
char *copy_word(char *, char *); /* do not use */
NETSNMP_IMPORT
int read_config_with_type(const char *, const char *);
NETSNMP_IMPORT
char *read_config_save_octet_string(char *saveto,
u_char * str,
size_t len);
NETSNMP_IMPORT
char *read_config_read_octet_string(const char *readfrom,
u_char ** str,
size_t * len);
const char *read_config_read_octet_string_const(const char *readfrom,
u_char ** str,
size_t * len);
NETSNMP_IMPORT
char *read_config_read_objid(char *readfrom, oid ** objid,
size_t * len);
const char *read_config_read_objid_const(const char *readfrom,
oid ** objid,
size_t * len);
NETSNMP_IMPORT
char *read_config_save_objid(char *saveto, oid * objid,
size_t len);
NETSNMP_IMPORT
char *read_config_read_data(int type, char *readfrom,
void *dataptr, size_t * len);
NETSNMP_IMPORT
char *read_config_read_memory(int type, char *readfrom,
char *dataptr, size_t * len);
NETSNMP_IMPORT
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);
int read_config_files_of_type(int when, struct config_files *ctmp);
NETSNMP_IMPORT
void read_config_store(const char *type, const char *line);
NETSNMP_IMPORT
void read_app_config_store(const char *line);
NETSNMP_IMPORT
void snmp_save_persistent(const char *type);
NETSNMP_IMPORT
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);
NETSNMP_IMPORT
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);
NETSNMP_IMPORT
const char *get_temp_file_pattern(void);
NETSNMP_IMPORT
void handle_long_opt(const char *myoptarg);
#ifdef __cplusplus
}
#endif
#endif /* READ_CONFIG_H */
|