📄 ipcidrroutetable.c
字号:
/* * Note: this file originally auto-generated by mib2c using * version : 1.48 $ of : mfd-top.m2c,v $ * * $Id: ipCidrRouteTable.c 15639 2006-12-06 15:01:27Z rstory $ *//** \page MFD helper for ipCidrRouteTable * * \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 "ipCidrRouteTable.h"#include <net-snmp/agent/mib_modules.h>#include "ipCidrRouteTable_interface.h"oid ipCidrRouteTable_oid[] = { IPCIDRROUTETABLE_OID };int ipCidrRouteTable_oid_size =OID_LENGTH(ipCidrRouteTable_oid);ipCidrRouteTable_registration ipCidrRouteTable_user_context;void initialize_table_ipCidrRouteTable(void);void shutdown_table_ipCidrRouteTable(void);/** * Initializes the ipCidrRouteTable module */voidinit_ipCidrRouteTable(void){ DEBUGMSGTL(("verbose:ipCidrRouteTable:init_ipCidrRouteTable", "called\n")); /* * TODO:300:o: Perform ipCidrRouteTable one-time module initialization. */ /* * here we initialize all the tables we're planning on supporting */ if (should_init("ipCidrRouteTable")) initialize_table_ipCidrRouteTable();} /* init_ipCidrRouteTable *//** * Shut-down the ipCidrRouteTable module (agent is exiting) */voidshutdown_ipCidrRouteTable(void){ if (should_init("ipCidrRouteTable")) shutdown_table_ipCidrRouteTable();}/** * Initialize the table ipCidrRouteTable * (Define its contents and how it's structured) */voidinitialize_table_ipCidrRouteTable(void){ ipCidrRouteTable_registration *user_context; u_long flags; DEBUGMSGTL(("verbose:ipCidrRouteTable:initialize_table_ipCidrRouteTable", "called\n")); /* * TODO:301:o: Perform ipCidrRouteTable one-time table initialization. */ /* * TODO:302:o: |->Initialize ipCidrRouteTable 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("ipCidrRouteTable", NULL, NULL); /* * No support for any flags yet, but in the future you would * set any flags here. */ flags = 0; /* * call interface initialization code */ _ipCidrRouteTable_initialize_interface(user_context, flags);} /* initialize_table_ipCidrRouteTable *//** * Shutdown the table ipCidrRouteTable */voidshutdown_table_ipCidrRouteTable(void){ /* * call interface shutdown code */ _ipCidrRouteTable_shutdown_interface(&ipCidrRouteTable_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) */intipCidrRouteTable_rowreq_ctx_init(ipCidrRouteTable_rowreq_ctx * rowreq_ctx, void *user_init_ctx){ DEBUGMSGTL(("verbose:ipCidrRouteTable:ipCidrRouteTable_rowreq_ctx_init", "called\n")); netsnmp_assert(NULL != rowreq_ctx); /* * TODO:210:o: |-> Perform extra ipCidrRouteTable rowreq initialization. (eg DEFVALS) */ return MFD_SUCCESS;} /* ipCidrRouteTable_rowreq_ctx_init *//** * extra context cleanup * */voidipCidrRouteTable_rowreq_ctx_cleanup(ipCidrRouteTable_rowreq_ctx * rowreq_ctx){ DEBUGMSGTL(("verbose:ipCidrRouteTable:ipCidrRouteTable_rowreq_ctx_cleanup", "called\n")); netsnmp_assert(NULL != rowreq_ctx); /* * TODO:211:o: |-> Perform extra ipCidrRouteTable rowreq cleanup. */ if (NULL != rowreq_ctx->data) { ipCidrRouteTable_release_data(rowreq_ctx->data); rowreq_ctx->data = NULL; }} /* ipCidrRouteTable_rowreq_ctx_cleanup *//** * pre-request callback * * @param user_context * * @retval MFD_SUCCESS : success. * @retval MFD_ERROR : other error */intipCidrRouteTable_pre_request(ipCidrRouteTable_registration * user_context){ DEBUGMSGTL(("verbose:ipCidrRouteTable:ipCidrRouteTable_pre_request", "called\n")); /* * TODO:510:o: Perform ipCidrRouteTable pre-request actions. */ return MFD_SUCCESS;} /* ipCidrRouteTable_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) */intipCidrRouteTable_post_request(ipCidrRouteTable_registration * user_context, int rc){ DEBUGMSGTL(("verbose:ipCidrRouteTable:ipCidrRouteTable_post_request", "called\n")); /* * TODO:511:o: Perform ipCidrRouteTable post-request actions. */ /* * check to set if any rows were changed. */ if (ipCidrRouteTable_dirty_get()) { /* * check if request was successful. If so, this would be * a good place to save data to its persistent store. */ if (MFD_SUCCESS == rc) { /* * save changed rows, if you haven't already */ } ipCidrRouteTable_dirty_set(0); /* clear table dirty flag */ } return MFD_SUCCESS;} /* ipCidrRouteTable_post_request *//********************************************************************** ********************************************************************** *** *** Table ipCidrRouteTable *** ********************************************************************** **********************************************************************//* * IP-FORWARD-MIB::ipCidrRouteTable is subid 4 of ipForward. * Its status is Deprecated. * OID: .1.3.6.1.2.1.4.24.4, length: 9 *//* * --------------------------------------------------------------------- * * TODO:200:r: Implement ipCidrRouteTable data context functions. *//* * ipCidrRouteTable_allocate_data * * Purpose: create new ipCidrRouteTable_data. */ipCidrRouteTable_data *ipCidrRouteTable_allocate_data(void){ /* * TODO:201:r: |-> allocate memory for the ipCidrRouteTable data context. */ ipCidrRouteTable_data *rtn = netsnmp_access_route_entry_create(); DEBUGMSGTL(("verbose:ipCidrRouteTable:ipCidrRouteTable_allocate_data", "called\n")); if (NULL == rtn) { snmp_log(LOG_ERR, "unable to malloc memory for new " "ipCidrRouteTable_data.\n"); } return rtn;} /* ipCidrRouteTable_allocate_data *//* * ipCidrRouteTable_release_data * * Purpose: release ipCidrRouteTable data. */voidipCidrRouteTable_release_data(ipCidrRouteTable_data * data){ DEBUGMSGTL(("verbose:ipCidrRouteTable:ipCidrRouteTable_release_data", "called\n")); /* * TODO:202:r: |-> release memory for the ipCidrRouteTable data context. */ netsnmp_access_route_entry_free(data);} /* ipCidrRouteTable_release_data *//** * set mib index(es) * * @param tbl_idx mib index structure * @param ipCidrRouteDest_val * @param ipCidrRouteMask_val * @param ipCidrRouteTos_val * @param ipCidrRouteNextHop_val * * @retval MFD_SUCCESS : success. * @retval MFD_ERROR : other error. * * @remark * This convenience function is useful for setting all the MIB index * components with a single function call. It is assume that the C values * have already been mapped from their native/rawformat to the MIB format. */intipCidrRouteTable_indexes_set_tbl_idx(ipCidrRouteTable_mib_index * tbl_idx, u_long ipCidrRouteDest_val, u_long ipCidrRouteMask_val, long ipCidrRouteTos_val, u_long ipCidrRouteNextHop_val){ DEBUGMSGTL(("verbose:ipCidrRouteTable:ipCidrRouteTable_indexes_set_tbl_idx", "called\n")); /* * ipCidrRouteDest(1)/IPADDR/ASN_IPADDRESS/u_long(u_long)//l/A/w/e/r/d/h */ tbl_idx->ipCidrRouteDest = ipCidrRouteDest_val; /* * ipCidrRouteMask(2)/IPADDR/ASN_IPADDRESS/u_long(u_long)//l/A/w/e/r/d/h */ tbl_idx->ipCidrRouteMask = ipCidrRouteMask_val; /* * ipCidrRouteTos(3)/INTEGER32/ASN_INTEGER/long(long)//l/A/w/e/R/d/h */ tbl_idx->ipCidrRouteTos = ipCidrRouteTos_val; /* * ipCidrRouteNextHop(4)/IPADDR/ASN_IPADDRESS/u_long(u_long)//l/A/w/e/r/d/h */ tbl_idx->ipCidrRouteNextHop = ipCidrRouteNextHop_val; return MFD_SUCCESS;} /* ipCidrRouteTable_indexes_set_tbl_idx *//** * @internal * set row context indexes * * @param reqreq_ctx the row context that needs updated indexes * * @retval MFD_SUCCESS : success. * @retval MFD_ERROR : other error. * * @remark * This function sets the mib indexs, then updates the oid indexs * from the mib index. */intipCidrRouteTable_indexes_set(ipCidrRouteTable_rowreq_ctx * rowreq_ctx, u_long ipCidrRouteDest_val, u_long ipCidrRouteMask_val, long ipCidrRouteTos_val, u_long ipCidrRouteNextHop_val){ DEBUGMSGTL(("verbose:ipCidrRouteTable:ipCidrRouteTable_indexes_set", "called\n")); if (MFD_SUCCESS != ipCidrRouteTable_indexes_set_tbl_idx(&rowreq_ctx->tbl_idx, ipCidrRouteDest_val, ipCidrRouteMask_val, ipCidrRouteTos_val, ipCidrRouteNextHop_val)) return MFD_ERROR; /* * convert mib index to oid index */ rowreq_ctx->oid_idx.len = sizeof(rowreq_ctx->oid_tmp) / sizeof(oid); if (0 != ipCidrRouteTable_index_to_oid(&rowreq_ctx->oid_idx, &rowreq_ctx->tbl_idx)) { return MFD_ERROR; } return MFD_SUCCESS;} /* ipCidrRouteTable_indexes_set *//*--------------------------------------------------------------------- * IP-FORWARD-MIB::ipCidrRouteEntry.ipCidrRouteIfIndex * ipCidrRouteIfIndex is subid 5 of ipCidrRouteEntry. * Its status is Deprecated, and its access level is Create.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -