+++ /dev/null
-## -*- c -*-
-######################################################################
-## Do the .h file
-######################################################################
-@open ${name}.h@
-/*
- * Note: this file originally auto-generated by mib2c using
- * $Id: mib2c.create-dataset.conf,v 5.3 2002/12/05 00:29:45 hardaker Exp $
- */
-#ifndef $name.uc_H
-#define $name.uc_H
-
-/* function declarations */
-void init_$name(void);
-@foreach $i table@
-void initialize_table_$i(void);
-Netsnmp_Node_Handler ${i}_handler;
-@end@
-@foreach $i table@
-
-/* column number definitions for table $i */
- @foreach $c column@
- #define COLUMN_$c.uc $c.subid
- @end@
-@end@
-#endif /* $name.uc_H */
-######################################################################
-## Do the .c file
-######################################################################
-@open ${name}.c@
-/*
- * Note: this file originally auto-generated by mib2c using
- * $Id: mib2c.create-dataset.conf,v 5.3 2002/12/05 00:29:45 hardaker Exp $
- */
-
-#include <net-snmp/net-snmp-config.h>
-#include <net-snmp/net-snmp-includes.h>
-#include <net-snmp/agent/net-snmp-agent-includes.h>
-#include "${name}.h"
-
-@foreach $i table@
-/** Initialize the $i table by defining its contents and how it's structured */
-void
-initialize_table_$i(void)
-{
- static oid ${i}_oid[] = {$i.commaoid};
- size_t ${i}_oid_len = OID_LENGTH(${i}_oid);
- netsnmp_table_data_set *table_set;
-
- /* create the table structure itself */
- table_set = netsnmp_create_table_data_set("$i");
-
- /* comment this out or delete if you don't support creation of new rows */
- table_set->allow_creation = 1;
-
- /***************************************************
- * Adding indexes
- */
- DEBUGMSGTL(("initialize_table_$i",
- "adding indexes to table $i\n"));
- netsnmp_table_set_add_indexes(table_set,
- @foreach $idx index@
- $idx.type, /* index: $idx */
- @end@
- 0);
-
- DEBUGMSGTL(("initialize_table_$i",
- "adding column types to table $i\n"));
- netsnmp_table_set_multi_add_default_row(table_set,
- @foreach $c column@
- COLUMN_$c.uc, $c.type, $c.settable,
- NULL, 0,
- @end@
- 0);
-
- /* registering the table with the master agent */
- /* note: if you don't need a subhandler to deal with any aspects
- of the request, change ${i}_handler to "NULL" */
- netsnmp_register_table_data_set(netsnmp_create_handler_registration("$i", ${i}_handler,
- ${i}_oid,
- ${i}_oid_len,
- HANDLER_CAN_RWRITE),
- table_set, NULL);
-}
-@end@
-
-/** Initializes the $name module */
-void
-init_$name(void)
-{
-
- /* here we initialize all the tables we're planning on supporting */
- @foreach $i table@
- initialize_table_$i();
- @end@
-}
-@foreach $i table@
-
-/** handles requests for the $i table, if anything else needs to be done */
-int
-${i}_handler(
- netsnmp_mib_handler *handler,
- netsnmp_handler_registration *reginfo,
- netsnmp_agent_request_info *reqinfo,
- netsnmp_request_info *requests) {
- /* perform anything here that you need to do. The requests have
- already been processed by the master table_dataset handler, but
- this gives you chance to act on the request in some other way
- if need be. */
- return SNMP_ERR_NOERROR;
-}