OID registration failure - PERL agent

[email protected]
Newsgroups gmane.network.net-snmp.user
Message-ID <1563882831.26970471275233940774.JavaMail.root@sz0139a.westchester.pa.mail.comcast.net>
I have been having trouble getting the perl mib agent examples going.  Does not seem to register the OID.  Below I include a) test-mib.pl,  b) snmpd.conf, c) output from 'snmpd' cmd, d) output from good 'snmpget' and f) failed 'snmpget' on new OID.

Any suggestions?

Thanks,
Bob Cole
===========================================



test-mib.pl:
===========================================
use NetSNMP::OID (':all');
use NetSNMP::agent (':all');


sub myhandler {
    my ($handler, $registration_info, $request_info, $requests) = @_;
    my $request;

            for($request = $requests; $request; $request = $request->next()) {
                my $oid = $request->getOID();
                if ($request_info->getMode() == MODE_GET) {
                    # ... generally, you would calculate value from oid
                    if ($oid == new NetSNMP::OID(".1.3.6.1.4.1.8072.9999.9999.7375.1.0")) {
                        $request->setValue(ASN_OCTET_STR, "hello world!");
                    }
                } elsif ($request_info->getMode() == MODE_GETNEXT) {
                    # ... generally, you would calculate value from oid
                    if ($oid < new NetSNMP::OID(".1.3.6.1.4.1.8072.9999.9999.7375.1.0")) {
                        $request->setOID(".1.3.6.1.4.1.8072.9999.9999.7375.1.0");
                        $request->setValue(ASN_OCTET_STR, "hello world!");
                    }
                }
                #elsif ($request_info->getMode() == MODE_SET_RESERVE1) {
                #   if ($oid != new NetSNMP::OID(".1.3.6.1.4.1.8072.9999.9999.7375.1.0")) {  
                        # do error checking here
                #       $request->setError($request_info, SNMP_ERR_NOSUCHNAME);
                #   }
                #} elsif ($request_info->getMode() == MODE_SET_ACTION) {
                    # ... (or use the value)
                    #    $value = $request->getValue();
                    #}
            }
        }


    #
    # Associate the handler with a particular OID tree
    #
    my $rootOID = ".1.3.6.1.4.1.8072.9999.9999.7375";
    my $regoid = new NetSNMP::OID($rootOID); 
    $agent->register("Bob Net-SNMP Agen", $regoid, \&myhandler);

    print STDERR "Loaded the Bob example perl snmpagent handler\n";

===========================================


snmpd.conf:
===========================================
###########################################################################
#
# snmpd.conf
#
#   - created by the snmpconf configuration program
#
###########################################################################
# SECTION: System Information Setup
#
#   This section defines some of the information reported in
#   the "system" mib group in the mibII tree.

# syslocation: The [typically physical] location of the system.
#   Note that setting this value here means that when trying to
#   perform an snmp SET operation to the sysLocation.0 variable will make
#   the agent return the "notWritable" error code.  IE, including
#   this token in the snmpd.conf file will disable write access to
#   the variable.
#   arguments:  location_string

syslocation  rgc_laptop

# syscontact: The contact information for the administrator
#   Note that setting this value here means that when trying to
#   perform an snmp SET operation to the sysContact.0 variable will make
#   the agent return the "notWritable" error code.  IE, including
#   this token in the snmpd.conf file will disable write access to
#   the variable.
#   arguments:  contact_string

syscontact  [email protected]
# sysservices: The proper value for the sysServices object.
#   arguments:  sysservices_number

sysservices 0




###########################################################################
# SECTION: Access Control Setup
#
#   This section defines who is allowed to talk to your running
#   snmp agent.

# rwuser: a SNMPv3 read-write user
#   arguments:  user [noauth|auth|priv] [restriction_oid]

rwuser  localhost noauth

# rouser: a SNMPv3 read-only user
#   arguments:  user [noauth|auth|priv] [restriction_oid]

rouser  localhost noauth

# rocommunity: a SNMPv1/SNMPv2c read-only access community name
#   arguments:  community [default|hostname|network/bits] [oid]

rocommunity  public

# rwcommunity: a SNMPv1/SNMPv2c read-write access community name
#   arguments:  community [default|hostname|network/bits] [oid]

rwcommunity  public


#####
#
# Embedded perl MIB support here
#
#####

#perl  print "\nStarting up the snmpd agent!\n\n";

perl do "/home/rgc/IETF/DEVELOPMENT/TEST/test-mib.pl";


===========================================

'snmpd -DPERL'   output:
===========================================
> snmpd -DPERL
No log handling enabled - turning on stderr logging
registered debug token PERL, 1
Loaded the Bob example perl snmpagent handler
root@chapman:~/.snmp# NET-SNMP version 5.5

root@chapman:~/.snmp# unknown var value type: 0

===========================================


'snmpget -v 2c -c public   127.0.0.1   sysUpTime.0'    output:
===========================================
> snmpget -v 2c -c public   127.0.0.1   sysUpTime.0
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (1929) 0:00:19.29

===========================================


'snmpget -v 2c -c public   127.0.0.1  .1.3.6.1.4.1.8072.9999.9999.7375.1.0'    output:
===========================================
> snmpget -v 2c -c public   127.0.0.1  .1.3.6.1.4.1.8072.9999.9999.7375.1.0
NET-SNMP-MIB::netSnmpPlaypen.7375.1.0 = No Such Instance currently exists at this OID

===========================================

------------------------------------------------------------------------------

_______________________________________________
Net-snmp-users mailing list
[email protected]
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.