diff options
author | elie <elie> | 2012-04-17 20:07:38 +0000 |
---|---|---|
committer | elie <elie> | 2012-04-17 20:07:38 +0000 |
commit | 9f514b66d16beb05c95efd0f870c57b4502e7b9e (patch) | |
tree | f60e8868e9fffa4253d71dd33e44691f0ac5f6e3 /pysnmp/proto | |
parent | 04d59af79eb8ea1de9ce4efc1d6bb222cb59a451 (diff) | |
download | pysnmp-git-9f514b66d16beb05c95efd0f870c57b4502e7b9e.tar.gz |
fix to non-MT-safe class attributes at SNMPv3 MP & SEC modules
Diffstat (limited to 'pysnmp/proto')
-rw-r--r-- | pysnmp/proto/mpmod/rfc3412.py | 8 | ||||
-rw-r--r-- | pysnmp/proto/secmod/rfc3414/service.py | 6 |
2 files changed, 7 insertions, 7 deletions
diff --git a/pysnmp/proto/mpmod/rfc3412.py b/pysnmp/proto/mpmod/rfc3412.py index 801fcbed..a34f8b99 100644 --- a/pysnmp/proto/mpmod/rfc3412.py +++ b/pysnmp/proto/mpmod/rfc3412.py @@ -55,7 +55,6 @@ _snmpErrors = { class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel): messageProcessingModelID = univ.Integer(3) # SNMPv3 snmpMsgSpec = SNMPv3Message - _scopedPDU = ScopedPDU() _emptyStr = univ.OctetString('') _msgFlags = { 0: univ.OctetString('\x00'), @@ -67,6 +66,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel): } def __init__(self): AbstractMessageProcessingModel.__init__(self) + self.__scopedPDU = ScopedPDU() self.__engineIDs = {} self.__engineIDsExpQueue = {} self.__expirationTimer = 0 @@ -122,7 +122,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel): debug.logger & debug.flagMP and debug.logger('prepareOutgoingMessage: using contextEngineId %r, contextName %r' % (contextEngineId, contextName)) # 7.1.6 - scopedPDU = self._scopedPDU + scopedPDU = self.__scopedPDU scopedPDU.setComponentByPosition(0, contextEngineId) scopedPDU.setComponentByPosition(1, contextName) scopedPDU.setComponentByPosition(2) @@ -196,7 +196,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel): 2, self._msgFlags[msgFlags & 0xfc], verifyConstraints=False ) # XXX - scopedPDU = self._scopedPDU + scopedPDU = self.__scopedPDU scopedPDU.setComponentByPosition( 0, self._emptyStr, verifyConstraints=False ) @@ -352,7 +352,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel): debug.logger & debug.flagMP and debug.logger('prepareResponseMessage: using contextEngineId %r, contextName %r' % (contextEngineId, contextName)) # 7.1.6 - scopedPDU = self._scopedPDU + scopedPDU = self.__scopedPDU scopedPDU.setComponentByPosition(0, contextEngineId) scopedPDU.setComponentByPosition(1, contextName) scopedPDU.setComponentByPosition(2) diff --git a/pysnmp/proto/secmod/rfc3414/service.py b/pysnmp/proto/secmod/rfc3414/service.py index 2b614d13..586f6a3b 100644 --- a/pysnmp/proto/secmod/rfc3414/service.py +++ b/pysnmp/proto/secmod/rfc3414/service.py @@ -40,9 +40,9 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): aes256.Aes256.serviceID: aes256.Aes256(), nopriv.NoPriv.serviceID: nopriv.NoPriv() } - _securityParametersSpec = UsmSecurityParameters() def __init__(self): AbstractSecurityModel.__init__(self) + self.__securityParametersSpec = UsmSecurityParameters() self.__timeline = {} self.__timelineExpQueue = {} self.__expirationTimer = 0 @@ -277,7 +277,7 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): errorIndication = errind.unsupportedSecurityLevel ) - securityParameters = self._securityParametersSpec + securityParameters = self.__securityParametersSpec scopedPDUData = msg.setComponentByPosition(3).getComponentByPosition(3) scopedPDUData.setComponentByPosition( @@ -487,7 +487,7 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): try: securityParameters, rest = decoder.decode( securityParameters, - asn1Spec=self._securityParametersSpec + asn1Spec=self.__securityParametersSpec ) except PyAsn1Error: snmpInASNParseErrs, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMPv2-MIB', 'snmpInASNParseErrs') |