| /* |
| * Note: this file originally auto-generated by mib2c using |
| * version : 14170 $ of $ |
| * |
| * $Id:$ |
| */ |
| #ifndef IPIFSTATSTABLE_H |
| #define IPIFSTATSTABLE_H |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| |
| /** @addtogroup misc misc: Miscellaneous routines |
| * |
| * @{ |
| */ |
| #include <net-snmp/library/asn1.h> |
| #include <net-snmp/data_access/ipstats.h> |
| #include <net-snmp/data_access/systemstats.h> |
| |
| /* |
| * other required module components |
| */ |
| /* *INDENT-OFF* */ |
| config_require(ip-mib/ipIfStatsTable/ipIfStatsTable_interface) |
| config_require(ip-mib/ipIfStatsTable/ipIfStatsTable_data_access) |
| config_require(ip-mib/ipIfStatsTable/ipIfStatsTable_data_get) |
| /* *INDENT-ON* */ |
| |
| /* |
| * OID and column number definitions for ipIfStatsTable |
| */ |
| #include "ipIfStatsTable_oids.h" |
| |
| /* |
| * enum definions |
| */ |
| #include "ipIfStatsTable_enums.h" |
| |
| /* |
| ********************************************************************* |
| * function declarations |
| */ |
| void init_ipIfStatsTable(void); |
| void shutdown_ipIfStatsTable(void); |
| |
| /* |
| ********************************************************************* |
| * Table declarations |
| */ |
| /********************************************************************** |
| ********************************************************************** |
| *** |
| *** Table ipIfStatsTable |
| *** |
| ********************************************************************** |
| **********************************************************************/ |
| /* |
| * IP-MIB::ipIfStatsTable is subid 3 of ipTrafficStats. |
| * Its status is Current. |
| * OID: .1.3.6.1.2.1.4.31.3, length: 9 |
| */ |
| /* |
| ********************************************************************* |
| * When you register your mib, you get to provide a generic |
| * pointer that will be passed back to you for most of the |
| * functions calls. |
| * |
| * TODO:100:r: Review all context structures |
| */ |
| /* |
| * TODO:101:o: |-> Review ipIfStatsTable registration context. |
| */ |
| typedef netsnmp_data_list ipIfStatsTable_registration; |
| |
| /**********************************************************************/ |
| /* |
| * TODO:110:r: |-> Review ipIfStatsTable data context structure. |
| * This structure is used to represent the data for ipIfStatsTable. |
| */ |
| typedef netsnmp_systemstats_entry ipIfStatsTable_data; |
| |
| |
| /* |
| * TODO:120:r: |-> Review ipIfStatsTable mib index. |
| * This structure is used to represent the index for ipIfStatsTable. |
| */ |
| typedef struct ipIfStatsTable_mib_index_s { |
| |
| /* |
| * ipIfStatsIPVersion(1)/InetVersion/ASN_INTEGER/long(u_long)//l/a/w/E/r/d/h |
| */ |
| u_long ipIfStatsIPVersion; |
| |
| /* |
| * ipIfStatsIfIndex(2)/InterfaceIndex/ASN_INTEGER/long(long)//l/a/w/e/R/d/H |
| */ |
| long ipIfStatsIfIndex; |
| |
| |
| } ipIfStatsTable_mib_index; |
| |
| /* |
| * TODO:121:r: | |-> Review ipIfStatsTable max index length. |
| * If you KNOW that your indexes will never exceed a certain |
| * length, update this macro to that length. |
| */ |
| #define MAX_ipIfStatsTable_IDX_LEN 2 |
| |
| |
| /* |
| ********************************************************************* |
| * TODO:130:o: |-> Review ipIfStatsTable Row request (rowreq) context. |
| * When your functions are called, you will be passed a |
| * ipIfStatsTable_rowreq_ctx pointer. |
| */ |
| typedef struct ipIfStatsTable_rowreq_ctx_s { |
| |
| /** this must be first for container compare to work */ |
| netsnmp_index oid_idx; |
| oid oid_tmp[MAX_ipIfStatsTable_IDX_LEN]; |
| |
| ipIfStatsTable_mib_index tbl_idx; |
| |
| ipIfStatsTable_data *data; |
| |
| /* |
| * flags per row. Currently, the first (lower) 8 bits are reserved |
| * for the user. See mfd.h for other flags. |
| */ |
| u_int rowreq_flags; |
| |
| /* |
| * TODO:131:o: | |-> Add useful data to ipIfStatsTable rowreq context. |
| */ |
| char known_missing; |
| uint32_t ipIfStatsDiscontinuityTime; |
| uint32_t ipIfStatsRefreshRate; |
| |
| /* |
| * storage for future expansion |
| */ |
| netsnmp_data_list *ipIfStatsTable_data_list; |
| |
| } ipIfStatsTable_rowreq_ctx; |
| |
| typedef struct ipIfStatsTable_ref_rowreq_ctx_s { |
| ipIfStatsTable_rowreq_ctx *rowreq_ctx; |
| } ipIfStatsTable_ref_rowreq_ctx; |
| |
| /* |
| ********************************************************************* |
| * function prototypes |
| */ |
| int ipIfStatsTable_pre_request(ipIfStatsTable_registration |
| * user_context); |
| int ipIfStatsTable_post_request(ipIfStatsTable_registration |
| * user_context, int rc); |
| |
| int |
| ipIfStatsTable_rowreq_ctx_init(ipIfStatsTable_rowreq_ctx * |
| rowreq_ctx, void *user_init_ctx); |
| void |
| ipIfStatsTable_rowreq_ctx_cleanup(ipIfStatsTable_rowreq_ctx * |
| rowreq_ctx); |
| |
| ipIfStatsTable_data *ipIfStatsTable_allocate_data(void); |
| void ipIfStatsTable_release_data(ipIfStatsTable_data * |
| data); |
| |
| |
| ipIfStatsTable_rowreq_ctx |
| *ipIfStatsTable_row_find_by_mib_index(ipIfStatsTable_mib_index * |
| mib_idx); |
| |
| extern const oid ipIfStatsTable_oid[]; |
| extern const int ipIfStatsTable_oid_size; |
| |
| |
| #include "ipIfStatsTable_interface.h" |
| #include "ipIfStatsTable_data_access.h" |
| #include "ipIfStatsTable_data_get.h" |
| |
| /* |
| * DUMMY markers, ignore |
| * |
| * TODO:099:x: ************************************************************* |
| * TODO:199:x: ************************************************************* |
| * TODO:299:x: ************************************************************* |
| * TODO:399:x: ************************************************************* |
| * TODO:499:x: ************************************************************* |
| */ |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| #endif /* IPIFSTATSTABLE_H */ |
| /** @} */ |