Question

I have the following example from the pysnmp page: # GET Command Generator from pysnmp.entity.rfc3413.oneliner import cmdgen

errorIndication, errorStatus, \
                 errorIndex, varBinds = cmdgen.CommandGenerator().getCmd(
    # SNMP v1
#    cmdgen.CommunityData('test-agent', 'public', 0),
    # SNMP v2
    cmdgen.CommunityData('test-agent', 'public'),
    # SNMP v3
#    cmdgen.UsmUserData('test-user', 'authkey1', 'privkey1'),
    cmdgen.UdpTransportTarget(('localhost', 161)),
    # Plain OID
    (1,3,6,1,2,1,1,1,0),
    # ((mib-name, mib-symbol), instance-id)
    (('SNMPv2-MIB', 'sysDescr'), 0)
    )

if errorIndication:
    print errorIndication
else:
    if errorStatus:
        print '%s at %s\n' % (
            errorStatus.prettyPrint(),
            errorIndex and varBinds[int(errorIndex)-1] or '?'
            )
    else:
        for name, val in varBinds:
            print '%s = %s' % (name.prettyPrint(), val.prettyPrint())

I made sure that SNMP is running on my machine. I checked in the console with the following command:

snmpget -v2c -Cf -c public localhost 1.3.6.1.2.1.1.1.0

Which worked fine. If i execute the python code above I get the following error:

SmiError: MIB module "pysnmp/smi/mibs/SNMP-COMMUNITY-MIB.py" load error: MIB module "pysnmp/smi/mibs/SNMP-FRAMEWORK-MIB.py" load error: Bad OctetString initializer '[128, 0, 79, 184, 5, 192, 168, 1, 50, 371, 210, 26, 162, 157]'

The numbers at the end change with each execution (seems to a timestamp or somehting like that). I'm using python 2.7 and the most recent version of pySNMP (4.2.1). Does anyone know what's the problem with this example code?

Was it helpful?

Solution

That is a bug in pysnmp 4.2.1 which has been fixed to the latest pysnmp release candidates (it looks like this bug more frequently occurs on Macs for some reason).

Here's a link to currently most recent rc:

http://sourceforge.net/projects/pysnmp/files/pysnmp/4.2.2/pysnmp-4.2.2rc5.tar.gz/download

-ilya

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top