Hi,
I am trying to load dynamic modules in snmp agent.

I am running snmp agent like:
sudo /home/vedams/netsnmp_build/sbin/snmpd -c
/home/vedams/netsnmp_build/share/snmp/snmpd.conf -DserialNumber

Below is log of /var/log/snmpd.log:
serialNumber: Initializing
serialNumber: Initializing
duplicate registration: MIB modules serialNumber and serialNumber (oid
.1.3.6.1.3.98.1.2.0).
NET-SNMP version 5.7.2.1


Why this "duplicate registration" is coming?
I have attached all files what i am using.


Regards
Nikesh
/*
 * Note: this file originally auto-generated by mib2c using
 *        $
 */

#include <net-snmp/net-snmp-config.h>
#include <net-snmp/net-snmp-includes.h>
#include <net-snmp/agent/net-snmp-agent-includes.h>
#include "serialNumber.h"

/** Initializes the serialNumber module */

#define MAX_STR_LEN             256

static char serialnum[MAX_STR_LEN] = "00C0FFDA028B";

void init_serialNumber(void)
{
    const oid       serialnum_oid[] = { 1, 3, 6, 1, 3, 98, 1, 2, 0 };

    DEBUGMSGTL(("serialNumber", "Initializing\n"));

    netsnmp_register_scalar(netsnmp_create_handler_registration
                            ("serialNumber", handle_serialNumber,
                             serialnum_oid,
                             OID_LENGTH(serialnum_oid),
                             HANDLER_CAN_RONLY));
}

int
handle_serialNumber(netsnmp_mib_handler *handler,
                         netsnmp_handler_registration *reginfo,
                         netsnmp_agent_request_info *reqinfo,
                         netsnmp_request_info *requests)
{
    switch (reqinfo->mode) {

    case MODE_GET:
        DEBUGMSGTL(("serialNumber","UNDER GET"));
        snmp_set_var_typed_value(requests->requestvb, 
ASN_OCTET_STR,serialnum,strlen(serialnum));
        break;

    default:
        /* it never come here */
        netsnmp_set_request_error(reqinfo, requests, SNMP_ERR_GENERR);
        return SNMP_ERR_NOERROR;
    }

    return SNMP_ERR_NOERROR;
}
/*
 * Note: this file originally auto-generated by mib2c using
 *        $
 */
#ifndef SERIALNUMBER_H
#define SERIALNUMBER_H

/*
 * function declarations
 */
void            init_serialNumber(void);
Netsnmp_Node_Handler handle_serialNumber;

#endif
CC=gcc

OBJS1=serialNumber.o
TARGETS=demodata_set.so

CFLAGS=-I. `/home/vedams/netsnmp_build/bin/net-snmp-config --cflags`
BUILDLIBS=`/home/vedams/netsnmp_build/bin/net-snmp-config --libs`
BUILDAGENTLIBS=`/home/vedams/netsnmp_build/bin/net-snmp-config --agent-libs`

# shared library flags (assumes gcc)
DLFLAGS=-fPIC -shared

all: $(TARGETS)

clean:
        rm $(OBJS1) $(TARGETS)

demodata_set.so: serialNumber.c Makefile
        $(CC) $(CFLAGS) $(DLFLAGS) -c -o serialNumber.o serialNumber.c
        $(CC) $(CFLAGS) $(DLFLAGS) -o demodata_set.so serialNumber.o
rwcommunity  public

syslocation  vedams

syscontact  vedams

dlmod serialNumber /home/vedams/AgentDynamicModuleExample/DEMO/demodata_set.so
------------------------------------------------------------------------------
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to