diff options
author | elie <elie> | 2005-10-14 16:11:39 +0000 |
---|---|---|
committer | elie <elie> | 2005-10-14 16:11:39 +0000 |
commit | c31e0b75fddb5a21784f3d74c1801ae580207665 (patch) | |
tree | 9c520b16155838966f1be5aebf68bffb616887f5 | |
parent | 65b55a1e8a2cc2fa1721f434ed4f2e10981f3cc2 (diff) | |
download | pysnmp-c31e0b75fddb5a21784f3d74c1801ae580207665.tar.gz |
* handle strange SNMP versions
* prettyOut() -> prettyPrint()
-rw-r--r-- | examples/v1arch/manager/ntfrcv.py | 27 |
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() |