/* * Note: this file originally auto-generated by mib2c using * version : 1.48 $ of : mfd-top.m2c,v $ * * $Id$ */ #ifndef IPADDRESSPREFIXTABLE_H #define IPADDRESSPREFIXTABLE_H #ifdef __cplusplus extern "C" { #endif /** @addtogroup misc misc: Miscellaneous routines * * @{ */ #include /* * other required module components */ /* *INDENT-OFF* */ config_require(ip-mib/ipAddressTable/ipAddressTable) config_require(ip-mib/ipAddressPrefixTable/ipAddressPrefixTable_interface) config_require(ip-mib/ipAddressPrefixTable/ipAddressPrefixTable_data_access) /* *INDENT-ON* */ /* * OID, column number and enum definions for ipAddressPrefixTable */ #include "ipAddressPrefixTable_constants.h" /* ********************************************************************* * function declarations */ void init_ipAddressPrefixTable(void); void shutdown_ipAddressPrefixTable(void); /* ********************************************************************* * Table declarations */ /********************************************************************** ********************************************************************** *** *** Table ipAddressPrefixTable *** ********************************************************************** **********************************************************************/ /* * IP-MIB::ipAddressPrefixTable is subid 32 of ip. * Its status is Current. * OID: .1.3.6.1.2.1.4.32, length: 8 */ /* ********************************************************************* * 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 ipAddressPrefixTable registration context. */ typedef netsnmp_data_list ipAddressPrefixTable_registration; /**********************************************************************/ /* * TODO:110:r: |-> Review ipAddressPrefixTable data context structure. * This structure is used to represent the data for ipAddressPrefixTable. */ /* * This structure contains storage for all the columns defined in the * ipAddressPrefixTable. */ typedef struct ipAddressPrefixTable_data_s { /* * ipAddressPrefixOrigin(5)/IpAddressPrefixOriginTC/ASN_INTEGER/long(u_long)//l/A/w/E/r/d/h */ u_long ipAddressPrefixOrigin; /* * ipAddressPrefixOnLinkFlag(6)/TruthValue/ASN_INTEGER/long(u_long)//l/A/w/E/r/d/h */ u_long ipAddressPrefixOnLinkFlag; /* * ipAddressPrefixAutonomousFlag(7)/TruthValue/ASN_INTEGER/long(u_long)//l/A/w/E/r/d/h */ u_long ipAddressPrefixAutonomousFlag; /* * ipAddressPrefixAdvPreferredLifetime(8)/UNSIGNED32/ASN_UNSIGNED/u_long(u_long)//l/A/w/e/r/d/h */ u_long ipAddressPrefixAdvPreferredLifetime; /* * ipAddressPrefixAdvValidLifetime(9)/UNSIGNED32/ASN_UNSIGNED/u_long(u_long)//l/A/w/e/r/d/h */ u_long ipAddressPrefixAdvValidLifetime; } ipAddressPrefixTable_data; /* * TODO:120:r: |-> Review ipAddressPrefixTable mib index. * This structure is used to represent the index for ipAddressPrefixTable. */ typedef struct ipAddressPrefixTable_mib_index_s { /* * ipAddressPrefixIfIndex(1)/InterfaceIndex/ASN_INTEGER/long(long)//l/a/w/e/R/d/H */ long ipAddressPrefixIfIndex; /* * ipAddressPrefixType(2)/InetAddressType/ASN_INTEGER/long(u_long)//l/a/w/E/r/d/h */ u_long ipAddressPrefixType; /* * ipAddressPrefixPrefix(3)/InetAddress/ASN_OCTET_STR/char(char)//L/a/w/e/R/d/h */ /** 128 - 3(other indexes) - oid length(10) = 114 */ char ipAddressPrefixPrefix[114]; size_t ipAddressPrefixPrefix_len; /* * ipAddressPrefixLength(4)/InetAddressPrefixLength/ASN_UNSIGNED/u_long(u_long)//l/a/w/e/R/d/H */ u_long ipAddressPrefixLength; } ipAddressPrefixTable_mib_index; /* * TODO:121:r: | |-> Review ipAddressPrefixTable max index length. * If you KNOW that your indexes will never exceed a certain * length, update this macro to that length. * * BE VERY CAREFUL TO TAKE INTO ACCOUNT THE MAXIMUM * POSSIBLE LENGHT FOR EVERY VARIABLE LENGTH INDEX! * Guessing 128 - col/entry(2) - oid len(8) */ #define MAX_ipAddressPrefixTable_IDX_LEN 118 /* ********************************************************************* * TODO:130:o: |-> Review ipAddressPrefixTable Row request (rowreq) context. * When your functions are called, you will be passed a * ipAddressPrefixTable_rowreq_ctx pointer. */ typedef struct ipAddressPrefixTable_rowreq_ctx_s { /** this must be first for container compare to work */ netsnmp_index oid_idx; oid oid_tmp[MAX_ipAddressPrefixTable_IDX_LEN]; ipAddressPrefixTable_mib_index tbl_idx; ipAddressPrefixTable_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 ipAddressPrefixTable rowreq context. */ /* * storage for future expansion */ netsnmp_data_list *ipAddressPrefixTable_data_list; } ipAddressPrefixTable_rowreq_ctx; typedef struct ipAddressPrefixTable_ref_rowreq_ctx_s { ipAddressPrefixTable_rowreq_ctx *rowreq_ctx; } ipAddressPrefixTable_ref_rowreq_ctx; /* ********************************************************************* * function prototypes */ int ipAddressPrefixTable_pre_request(ipAddressPrefixTable_registration * user_context); int ipAddressPrefixTable_post_request(ipAddressPrefixTable_registration * user_context, int rc); int ipAddressPrefixTable_rowreq_ctx_init (ipAddressPrefixTable_rowreq_ctx * rowreq_ctx, void *user_init_ctx); void ipAddressPrefixTable_rowreq_ctx_cleanup (ipAddressPrefixTable_rowreq_ctx * rowreq_ctx); ipAddressPrefixTable_rowreq_ctx * ipAddressPrefixTable_row_find_by_mib_index (ipAddressPrefixTable_mib_index * mib_idx); extern const oid ipAddressPrefixTable_oid[]; extern const int ipAddressPrefixTable_oid_size; #include "ipAddressPrefixTable_interface.h" #include "ipAddressPrefixTable_data_access.h" /* ********************************************************************* * GET function declarations */ /* ********************************************************************* * GET Table declarations */ /********************************************************************** ********************************************************************** *** *** Table ipAddressPrefixTable *** ********************************************************************** **********************************************************************/ /* * IP-MIB::ipAddressPrefixTable is subid 32 of ip. * Its status is Current. * OID: .1.3.6.1.2.1.4.32, length: 8 */ /* * indexes */ int ipAddressPrefixOrigin_get(ipAddressPrefixTable_rowreq_ctx * rowreq_ctx, u_long * ipAddressPrefixOrigin_val_ptr); int ipAddressPrefixOnLinkFlag_get(ipAddressPrefixTable_rowreq_ctx * rowreq_ctx, u_long * ipAddressPrefixOnLinkFlag_val_ptr); int ipAddressPrefixAutonomousFlag_get(ipAddressPrefixTable_rowreq_ctx * rowreq_ctx, u_long * ipAddressPrefixAutonomousFlag_val_ptr); int ipAddressPrefixAdvPreferredLifetime_get (ipAddressPrefixTable_rowreq_ctx * rowreq_ctx, u_long * ipAddressPrefixAdvPreferredLifetime_val_ptr); int ipAddressPrefixAdvValidLifetime_get(ipAddressPrefixTable_rowreq_ctx * rowreq_ctx, u_long * ipAddressPrefixAdvValidLifetime_val_ptr); int ipAddressPrefixTable_indexes_set_tbl_idx (ipAddressPrefixTable_mib_index * tbl_idx, long ipAddressPrefixIfIndex_val, u_long ipAddressPrefixType_val, u_char *ipAddressPrefixPrefix_val_ptr, size_t ipAddressPrefixPrefix_val_ptr_len, u_long ipAddressPrefixLength_val); int ipAddressPrefixTable_indexes_set(ipAddressPrefixTable_rowreq_ctx * rowreq_ctx, long ipAddressPrefixIfIndex_val, u_long ipAddressPrefixType_val, u_char *ipAddressPrefixPrefix_val_ptr, size_t ipAddressPrefixPrefix_val_ptr_len, u_long ipAddressPrefixLength_val); /* ********************************************************************* * SET function declarations */ /* ********************************************************************* * SET Table declarations */ /* * DUMMY markers, ignore * * TODO:099:x: ************************************************************* * TODO:199:x: ************************************************************* * TODO:299:x: ************************************************************* * TODO:399:x: ************************************************************* * TODO:499:x: ************************************************************* */ #ifdef __cplusplus } #endif #endif /* IPADDRESSPREFIXTABLE_H */ /** @} */