| /* |
| * Dynamic Loadable Agent Modules MIB (UCD-DLMOD-MIB) - dlmod.h |
| * |
| */ |
| |
| #ifndef _MIBGROUP_DLMOD_H |
| #define _MIBGROUP_DLMOD_H |
| |
| /* |
| * TODO #include "mibdefs.h" |
| */ |
| #if (!defined(HAVE_DLFCN_H) || !defined(HAVE_DLOPEN)) && !defined(WIN32) |
| config_error(Dynamic modules not supported on this platform) |
| #endif |
| |
| config_add_mib(UCD-DLMOD-MIB) |
| #ifndef SNMPDLMODPATH |
| #define SNMPDLMODPATH "/usr/local/lib/snmp/dlmod" |
| #endif |
| struct dlmod { |
| struct dlmod *next; |
| int index; |
| char name[64 + 1]; |
| char path[255 + 1]; |
| char error[255 + 1]; |
| void *handle; |
| int status; |
| }; |
| |
| void dlmod_load_module(struct dlmod *); |
| void dlmod_unload_module(struct dlmod *); |
| struct dlmod *dlmod_create_module(void); |
| void dlmod_delete_module(struct dlmod *); |
| struct dlmod *dlmod_get_by_index(int); |
| |
| void dlmod_init(void); |
| void dlmod_deinit(void); |
| |
| extern void init_dlmod(void); |
| extern void deinit_dlmod(void); |
| |
| extern FindVarMethod var_dlmod; |
| extern FindVarMethod var_dlmodEntry; |
| extern WriteMethod write_dlmodName; |
| extern WriteMethod write_dlmodPath; |
| extern WriteMethod write_dlmodStatus; |
| |
| #define DLMODNEXTINDEX 1 |
| #define DLMODINDEX 2 |
| #define DLMODNAME 3 |
| #define DLMODPATH 4 |
| #define DLMODERROR 5 |
| #define DLMODSTATUS 6 |
| |
| #define DLMOD_LOADED 1 |
| #define DLMOD_UNLOADED 2 |
| #define DLMOD_ERROR 3 |
| #define DLMOD_LOAD 4 |
| #define DLMOD_UNLOAD 5 |
| #define DLMOD_CREATE 6 |
| #define DLMOD_DELETE 7 |
| |
| #endif /* _MIBGROUP_DLMOD_H */ |