6.2. netSnmpIETFWGTable.h

/*
 * Note: this file originally auto-generated by mib2c using
 *        : mib2c.array-user.conf,v 5.15 2002/12/18 00:33:10 rstory Exp $
 *
 * $Id: appendix.sgml,v 1.1 2004/02/07 15:14:46 konradrzeszutek Exp $
 *
 * Yes, there is lots of code here that you might not use. But it is much
 * easier to remove code than to add it!
 */
#ifndef NETSNMPIETFWGTABLE_H
#define NETSNMPIETFWGTABLE_H

#ifdef __cplusplus
extern "C" {
#endif

    
#include <net-snmp/net-snmp-config.h>
#include <net-snmp/library/container.h>
#include <net-snmp/agent/table_array.h>

        /** Index nsIETFWGName is internal */

typedef struct netSnmpIETFWGTable_context_s {
    netsnmp_index index; /** THIS MUST BE FIRST!!! */

    /*************************************************************
     * You can store data internally in this structure.
     *
     * TODO: You will probably have to fix a few types here...
     */
        /** OCTETSTR = ASN_OCTET_STR */
            char nsIETFWGName[65535];
            long nsIETFWGName_len;

        /** OCTETSTR = ASN_OCTET_STR */
            char nsIETFWGChair1[65535];
            long nsIETFWGChair1_len;

        /** OCTETSTR = ASN_OCTET_STR */
            char nsIETFWGChair2[255];
            long nsIETFWGChair2_len;


    /*
     * OR
     *
     * Keep a pointer to your data
     */
    void * data;

    /*
     *add anything else you want here
     */

} netSnmpIETFWGTable_context;

/*************************************************************
 * function declarations
 */
void init_netSnmpIETFWGTable(void);
void initialize_table_netSnmpIETFWGTable(void);
const netSnmpIETFWGTable_context * netSnmpIETFWGTable_get_by_idx(netsnmp_index *);
const netSnmpIETFWGTable_context * netSnmpIETFWGTable_get_by_idx_rs(netsnmp_index *,
                                        int row_status);
int netSnmpIETFWGTable_get_value(netsnmp_request_info *, netsnmp_index *, netsnmp_table_request_info *);


/*************************************************************
 * oid declarations
 */
extern oid netSnmpIETFWGTable_oid[];
extern size_t netSnmpIETFWGTable_oid_len;

#define netSnmpIETFWGTable_TABLE_OID 1,3,6,1,4,1,8072,2,2,1
    
/*************************************************************
 * column number definitions for table netSnmpIETFWGTable
 */
#define COLUMN_NSIETFWGNAME 1
#define COLUMN_NSIETFWGCHAIR1 2
#define COLUMN_NSIETFWGCHAIR2 3
#define COLUMN_NSIETFWGPROGRESS 4
#define netSnmpIETFWGTable_COL_MIN 2
#define netSnmpIETFWGTable_COL_MAX 3

/* comment out the following line if you don't handle SET-REQUEST for netSnmpIETFWGTable */
#define netSnmpIETFWGTable_SET_HANDLING

/* comment out the following line if you can't create new rows */
#define netSnmpIETFWGTable_ROW_CREATION

/* comment out the following line if you don't want the secondary index */
/* #define netSnmpIETFWGTable_IDX2  */

#ifdef netSnmpIETFWGTable_SET_HANDLING

int netSnmpIETFWGTable_extract_index( netSnmpIETFWGTable_context * ctx, netsnmp_index * hdr );

void netSnmpIETFWGTable_set_reserve1( netsnmp_request_group * );
void netSnmpIETFWGTable_set_reserve2( netsnmp_request_group * );
void netSnmpIETFWGTable_set_action( netsnmp_request_group * );
void netSnmpIETFWGTable_set_commit( netsnmp_request_group * );
void netSnmpIETFWGTable_set_free( netsnmp_request_group * );
void netSnmpIETFWGTable_set_undo( netsnmp_request_group * );

netSnmpIETFWGTable_context * netSnmpIETFWGTable_duplicate_row( netSnmpIETFWGTable_context* );
netsnmp_index * netSnmpIETFWGTable_delete_row( netSnmpIETFWGTable_context* );

int netSnmpIETFWGTable_can_delete(netSnmpIETFWGTable_context *undo_ctx,
                    netSnmpIETFWGTable_context *row_ctx,
                    netsnmp_request_group * rg);
    
    
#ifdef netSnmpIETFWGTable_ROW_CREATION
netSnmpIETFWGTable_context * netSnmpIETFWGTable_create_row( netsnmp_index* );
#endif
#endif

#ifdef netSnmpIETFWGTable_IDX2
netSnmpIETFWGTable_context * netSnmpIETFWGTable_get( const char *name, int len );
#endif

#ifdef __cplusplus
};
#endif

#endif /** NETSNMPIETFWGTABLE_H */