diff options
author | Kozlov Dmitry <dima@server> | 2011-08-19 14:04:55 +0400 |
---|---|---|
committer | Kozlov Dmitry <dima@server> | 2011-08-19 14:04:55 +0400 |
commit | 5ef49162ea9763ca9878c22e3736766d8f1db014 (patch) | |
tree | f58da9adfc87ece6c608265fc694e66bd5db162c /accel-pppd/extra/net-snmp/sessionTable.c | |
parent | fd52e4578dcc7de2301480fece9395563d643045 (diff) | |
download | accel-ppp-5ef49162ea9763ca9878c22e3736766d8f1db014.tar.gz accel-ppp-5ef49162ea9763ca9878c22e3736766d8f1db014.zip |
snmp support
Diffstat (limited to 'accel-pppd/extra/net-snmp/sessionTable.c')
-rw-r--r-- | accel-pppd/extra/net-snmp/sessionTable.c | 201 |
1 files changed, 201 insertions, 0 deletions
diff --git a/accel-pppd/extra/net-snmp/sessionTable.c b/accel-pppd/extra/net-snmp/sessionTable.c new file mode 100644 index 00000000..dc7d62bd --- /dev/null +++ b/accel-pppd/extra/net-snmp/sessionTable.c @@ -0,0 +1,201 @@ +/* + * Note: this file originally auto-generated by mib2c using + * version : 14170 $ of $ + * + * $Id:$ + */ +/** \page MFD helper for sessionTable + * + * \section intro Introduction + * Introductory text. + * + */ +/* standard Net-SNMP includes */ +#include <net-snmp/net-snmp-config.h> +#include <net-snmp/net-snmp-includes.h> +#include <net-snmp/agent/net-snmp-agent-includes.h> + +/* include our parent header */ +#include "sessionTable.h" + +#include <net-snmp/agent/mib_modules.h> + +#include "sessionTable_interface.h" + +oid sessionTable_oid[] = { SESSIONTABLE_OID }; +int sessionTable_oid_size = OID_LENGTH(sessionTable_oid); + + sessionTable_registration sessionTable_user_context; + +void initialize_table_sessionTable(void); +void shutdown_table_sessionTable(void); + + +/** + * Initializes the sessionTable module + */ +void +init_sessionTable(void) +{ + DEBUGMSGTL(("verbose:sessionTable:init_sessionTable","called\n")); + + /* + * TODO:300:o: Perform sessionTable one-time module initialization. + */ + + /* + * here we initialize all the tables we're planning on supporting + */ + if (should_init("sessionTable")) + initialize_table_sessionTable(); + +} /* init_sessionTable */ + +/** + * Shut-down the sessionTable module (agent is exiting) + */ +void +shutdown_sessionTable(void) +{ + if (should_init("sessionTable")) + shutdown_table_sessionTable(); + +} + +/** + * Initialize the table sessionTable + * (Define its contents and how it's structured) + */ +void +initialize_table_sessionTable(void) +{ + sessionTable_registration * user_context; + u_long flags; + + DEBUGMSGTL(("verbose:sessionTable:initialize_table_sessionTable","called\n")); + + /* + * TODO:301:o: Perform sessionTable one-time table initialization. + */ + + /* + * TODO:302:o: |->Initialize sessionTable user context + * if you'd like to pass in a pointer to some data for this + * table, allocate or set it up here. + */ + /* + * a netsnmp_data_list is a simple way to store void pointers. A simple + * string token is used to add, find or remove pointers. + */ + user_context = netsnmp_create_data_list("sessionTable", NULL, NULL); + + /* + * No support for any flags yet, but in the future you would + * set any flags here. + */ + flags = 0; + + /* + * call interface initialization code + */ + _sessionTable_initialize_interface(user_context, flags); +} /* initialize_table_sessionTable */ + +/** + * Shutdown the table sessionTable + */ +void +shutdown_table_sessionTable(void) +{ + /* + * call interface shutdown code + */ + _sessionTable_shutdown_interface(&sessionTable_user_context); +} + +/** + * extra context initialization (eg default values) + * + * @param rowreq_ctx : row request context + * @param user_init_ctx : void pointer for user (parameter to rowreq_ctx_allocate) + * + * @retval MFD_SUCCESS : no errors + * @retval MFD_ERROR : error (context allocate will fail) + */ +int +sessionTable_rowreq_ctx_init(sessionTable_rowreq_ctx *rowreq_ctx, + void *user_init_ctx) +{ + DEBUGMSGTL(("verbose:sessionTable:sessionTable_rowreq_ctx_init","called\n")); + + netsnmp_assert(NULL != rowreq_ctx); + + /* + * TODO:210:o: |-> Perform extra sessionTable rowreq initialization. (eg DEFVALS) + */ + + return MFD_SUCCESS; +} /* sessionTable_rowreq_ctx_init */ + +/** + * extra context cleanup + * + */ +void sessionTable_rowreq_ctx_cleanup(sessionTable_rowreq_ctx *rowreq_ctx) +{ + DEBUGMSGTL(("verbose:sessionTable:sessionTable_rowreq_ctx_cleanup","called\n")); + + netsnmp_assert(NULL != rowreq_ctx); + + /* + * TODO:211:o: |-> Perform extra sessionTable rowreq cleanup. + */ +} /* sessionTable_rowreq_ctx_cleanup */ + +/** + * pre-request callback + * + * + * @retval MFD_SUCCESS : success. + * @retval MFD_ERROR : other error + */ +int +sessionTable_pre_request(sessionTable_registration * user_context) +{ + DEBUGMSGTL(("verbose:sessionTable:sessionTable_pre_request","called\n")); + + /* + * TODO:510:o: Perform sessionTable pre-request actions. + */ + + return MFD_SUCCESS; +} /* sessionTable_pre_request */ + +/** + * post-request callback + * + * Note: + * New rows have been inserted into the container, and + * deleted rows have been removed from the container and + * released. + * + * @param user_context + * @param rc : MFD_SUCCESS if all requests succeeded + * + * @retval MFD_SUCCESS : success. + * @retval MFD_ERROR : other error (ignored) + */ +int +sessionTable_post_request(sessionTable_registration * user_context, int rc) +{ + DEBUGMSGTL(("verbose:sessionTable:sessionTable_post_request","called\n")); + + /* + * TODO:511:o: Perform sessionTable post-request actions. + */ + + return MFD_SUCCESS; +} /* sessionTable_post_request */ + + +/** @{ */ |