summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--examples/v1arch/asyncore/manager/ntfrcv/listen-on-ipv4-and-ipv6-interfaces.py27
1 files changed, 15 insertions, 12 deletions
diff --git a/examples/v1arch/asyncore/manager/ntfrcv/listen-on-ipv4-and-ipv6-interfaces.py b/examples/v1arch/asyncore/manager/ntfrcv/listen-on-ipv4-and-ipv6-interfaces.py
index 5a3979f1..a8c4c643 100644
--- a/examples/v1arch/asyncore/manager/ntfrcv/listen-on-ipv4-and-ipv6-interfaces.py
+++ b/examples/v1arch/asyncore/manager/ntfrcv/listen-on-ipv4-and-ipv6-interfaces.py
@@ -7,7 +7,11 @@ from pysnmp.proto import api
def cbFun(transportDispatcher, transportDomain, transportAddress, wholeMsg):
while wholeMsg:
msgVer = int(api.decodeMessageVersion(wholeMsg))
- pMod = api.protoModules[msgVer]
+ if api.protoModules.has_key(msgVer):
+ pMod = api.protoModules[msgVer]
+ else:
+ print 'Unsupported SNMP version %s' % msgVer
+ return
reqMsg, wholeMsg = decoder.decode(
wholeMsg, asn1Spec=pMod.Message(),
)
@@ -18,27 +22,26 @@ def cbFun(transportDispatcher, transportDomain, transportAddress, wholeMsg):
if reqPDU.isSameTypeWith(pMod.TrapPDU()):
if msgVer == api.protoVersion1:
print 'Enterprise: %s' % (
- pMod.apiTrapPDU.getEnterprise(reqPDU)
+ pMod.apiTrapPDU.getEnterprise(reqPDU).prettyPrint()
)
print 'Agent Address: %s' % (
- repr(pMod.apiTrapPDU.getAgentAddr(reqPDU))
+ pMod.apiTrapPDU.getAgentAddr(reqPDU).prettyPrint()
)
print 'Generic Trap: %s' % (
- pMod.apiTrapPDU.getGenericTrap(reqPDU)
+ pMod.apiTrapPDU.getGenericTrap(reqPDU).prettyPrint()
)
print 'Specific Trap: %s' % (
- pMod.apiTrapPDU.getSpecificTrap(reqPDU)
+ pMod.apiTrapPDU.getSpecificTrap(reqPDU).prettyPrint()
)
print 'Uptime: %s' % (
- pMod.apiTrapPDU.getTimeStamp(reqPDU)
+ pMod.apiTrapPDU.getTimeStamp(reqPDU).prettyPrint()
)
- print 'Var-binds:'
- for varBind in pMod.apiTrapPDU.getVarBindList(reqPDU):
- print pMod.apiVarBind.getOIDVal(varBind)
+ varBinds = pMod.apiTrapPDU.getVarBindList(reqPDU)
else:
- print 'Var-binds:'
- for varBind in pMod.apiPDU.getVarBindList(reqPDU):
- print pMod.apiVarBind.getOIDVal(varBind)
+ varBinds = pMod.apiPDU.getVarBindList(reqPDU)
+ print 'Var-binds:'
+ for oid, val in varBinds:
+ print oid.prettyPrint(), val.prettyPrint()
return wholeMsg
transportDispatcher = AsynsockDispatcher()