diff options
Diffstat (limited to 'include/net-snmp/mib_api.h')
-rw-r--r-- | include/net-snmp/mib_api.h | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/include/net-snmp/mib_api.h b/include/net-snmp/mib_api.h new file mode 100644 index 0000000..3b54e83 --- /dev/null +++ b/include/net-snmp/mib_api.h @@ -0,0 +1,113 @@ +#ifndef NET_SNMP_MIB_API_H +#define NET_SNMP_MIB_API_H + + /** + * Library API routines concerned with MIB files and objects, and OIDs + */ + +#include <net-snmp/types.h> + +#ifdef __cplusplus +extern "C" { +#endif + + /* Initialisation and Shutdown */ + NETSNMP_IMPORT + int add_mibdir(const char *); + + NETSNMP_IMPORT + void netsnmp_init_mib(void); +#ifndef NETSNMP_NO_LEGACY_DEFINITIONS + NETSNMP_IMPORT + void init_mib(void); + NETSNMP_IMPORT + void init_mib_internals(void); +#endif + NETSNMP_IMPORT + void shutdown_mib(void); + + /* Reading and Parsing MIBs */ + NETSNMP_IMPORT + struct tree *netsnmp_read_module(const char *); +#ifndef NETSNMP_NO_LEGACY_DEFINITIONS + NETSNMP_IMPORT + struct tree *read_module(const char *); +#endif + + NETSNMP_IMPORT + struct tree *read_mib(const char *); + NETSNMP_IMPORT + struct tree *read_all_mibs(void); + + NETSNMP_IMPORT + void add_module_replacement(const char *, const char *, + const char *, int); + + /* from ucd-compat.h */ + NETSNMP_IMPORT + void snmp_set_mib_warnings(int); + NETSNMP_IMPORT + void snmp_set_mib_errors(int); + NETSNMP_IMPORT + void snmp_set_save_descriptions(int); + + + /* Searching the MIB Tree */ + NETSNMP_IMPORT + int read_objid(const char *, oid *, size_t *); + NETSNMP_IMPORT + oid *snmp_parse_oid(const char *, oid *, size_t *); + NETSNMP_IMPORT + int get_module_node(const char *, const char *, oid *, size_t *); + + /* Output */ + NETSNMP_IMPORT + void print_mib(FILE * fp); + + NETSNMP_IMPORT + void print_objid(const oid * objid, size_t objidlen); + NETSNMP_IMPORT + void fprint_objid(FILE * fp, + const oid * objid, size_t objidlen); + NETSNMP_IMPORT + int snprint_objid(char *buf, size_t buf_len, + const oid * objid, size_t objidlen); + + NETSNMP_IMPORT + void print_description(oid * objid, size_t objidlen, int width); + NETSNMP_IMPORT + void fprint_description(FILE * fp, + oid * objid, size_t objidlen, int width); + NETSNMP_IMPORT + int snprint_description(char *buf, size_t buf_len, + oid * objid, size_t objidlen, int width); + +#ifdef __cplusplus +} +#endif + + /* + * Having extracted the main ("public API") calls relevant + * to this area of the Net-SNMP project, the next step is to + * identify the related "public internal API" routines. + * + * In due course, these should probably be gathered + * together into a companion 'library/mib_api.h' header file. + * [Or some suitable name] + * + * But for the time being, the expectation is that the + * traditional headers that provided the above definitions + * will probably also cover the relevant internal API calls. + * Hence they are listed here: + */ + +#include <net-snmp/library/snmp_api.h> +#include <net-snmp/library/mib.h> +#ifndef NETSNMP_DISABLE_MIB_LOADING +#include <net-snmp/library/parse.h> +#endif +#include <net-snmp/library/callback.h> +#include <net-snmp/library/oid_stash.h> +#include <net-snmp/library/ucd_compat.h> + +#endif /* NET_SNMP_MIB_API_H */ |