blob: 201e55733b0c29bce0e211d033263c701dfe8cd2 [file] [log] [blame]
/*
* 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 <net-snmp/library/asn1.h>
/*
* 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,
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,
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 */
/** @} */