summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelie <elie>2005-10-14 16:11:39 +0000
committerelie <elie>2005-10-14 16:11:39 +0000
commitc31e0b75fddb5a21784f3d74c1801ae580207665 (patch)
tree9c520b16155838966f1be5aebf68bffb616887f5
parent65b55a1e8a2cc2fa1721f434ed4f2e10981f3cc2 (diff)
downloadpysnmp-c31e0b75fddb5a21784f3d74c1801ae580207665.tar.gz
* handle strange SNMP versions
* prettyOut() -> prettyPrint()
-rw-r--r--examples/v1arch/manager/ntfrcv.py27
1 files changed, 15 insertions, 12 deletions
diff --git a/examples/v1arch/manager/ntfrcv.py b/examples/v1arch/manager/ntfrcv.py
index 5a3979f..a8c4c64 100644
--- a/examples/v1arch/manager/ntfrcv.py
+++ b/examples/v1arch/manager/ntfrcv.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()