diff options
author | Ilya Etingof <etingof@gmail.com> | 2017-02-12 09:57:01 +0100 |
---|---|---|
committer | Ilya Etingof <etingof@gmail.com> | 2017-02-12 09:57:01 +0100 |
commit | 3d26f4e8fd6c799f3c537f31f4a6a75b7e78c1e4 (patch) | |
tree | 33d8bd1b112f0d9317e260a12465e4b791797411 | |
parent | d9bf18b39adfeff311666f4fd89052b4e6b38fd2 (diff) | |
download | pysnmp-git-3d26f4e8fd6c799f3c537f31f4a6a75b7e78c1e4.tar.gz |
fix to invalid-msg-counter increment
-rw-r--r-- | CHANGES.txt | 1 | ||||
-rw-r--r-- | pysnmp/proto/mpmod/rfc3412.py | 12 |
2 files changed, 5 insertions, 8 deletions
diff --git a/CHANGES.txt b/CHANGES.txt index d9a2ae3a..bdd1bfa0 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -4,6 +4,7 @@ Revision 4.3.4, released 2017-02-XX - Fix to low-level SNMP API example to accommodate changed pyasn1 SEQUENCE supporting iterator protocol. +- Fixed crash on SNMP engine's invalid message counter increment. Revision 4.3.3, released 2017-02-04 ----------------------------------- diff --git a/pysnmp/proto/mpmod/rfc3412.py b/pysnmp/proto/mpmod/rfc3412.py index c9b6286a..7a53b4b1 100644 --- a/pysnmp/proto/mpmod/rfc3412.py +++ b/pysnmp/proto/mpmod/rfc3412.py @@ -280,8 +280,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel): contextEngineId, contextName, pduVersion, pdu, maxSizeResponseScopedPDU, stateReference, statusInformation): - snmpEngineID, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB', - 'snmpEngineID') + snmpEngineID, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB', 'snmpEngineID') snmpEngineID = snmpEngineID.syntax # 7.1.2.b @@ -474,8 +473,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel): except PyAsn1Error: debug.logger & debug.flagMP and debug.logger('prepareDataElements: %s' % (sys.exc_info()[1],)) - snmpInASNParseErrs, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMPv2-MIB', - 'snmpInASNParseErrs') + snmpInASNParseErrs, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMPv2-MIB', 'snmpInASNParseErrs') snmpInASNParseErrs.syntax += 1 raise error.StatusInformation(errorIndication=errind.parseError) @@ -512,8 +510,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel): elif (msgFlags & 0x03) == 0x03: securityLevel = 3 else: - snmpInvalidMsgs = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-MPD-MIB', - 'snmpInvalidMsgs') + snmpInvalidMsgs, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-MPD-MIB', 'snmpInvalidMsgs') snmpInvalidMsgs.syntax += 1 raise error.StatusInformation(errorIndication=errind.invalidMsg) @@ -616,8 +613,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel): 'prepareDataElements: cache securityEngineId %r for %r %r' % ( securityEngineId, transportDomain, transportAddress)) - snmpEngineID, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB', - 'snmpEngineID') + snmpEngineID, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB', 'snmpEngineID') snmpEngineID = snmpEngineID.syntax # 7.2.7 XXX PDU would be parsed here? |