summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlya Etingof <etingof@gmail.com>2016-04-17 22:36:53 +0200
committerIlya Etingof <etingof@gmail.com>2016-04-17 22:36:53 +0200
commitf085a36fb728fe1079d32fc07540274e2161e5ab (patch)
tree6cecb1956f1b4e56f6f8158c1a1c775b5644a22e
parent1341c91ccc8e346064bdffc4a90eec9e952a3f4a (diff)
downloadpysnmp-git-f085a36fb728fe1079d32fc07540274e2161e5ab.tar.gz
work even if transport dispatcher is not available
-rw-r--r--pysnmp/proto/secmod/rfc3414/service.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/pysnmp/proto/secmod/rfc3414/service.py b/pysnmp/proto/secmod/rfc3414/service.py
index 7bcf551c..415ee827 100644
--- a/pysnmp/proto/secmod/rfc3414/service.py
+++ b/pysnmp/proto/secmod/rfc3414/service.py
@@ -791,7 +791,8 @@ class SnmpUSMSecurityModel(AbstractSecurityModel):
int(time.time())
)
- expireAt = int(self.__expirationTimer + 300 / snmpEngine.transportDispatcher.getTimerResolution())
+ timerResolution = snmpEngine.transportDispatcher is None and 1.0 or snmpEngine.transportDispatcher.getTimerResolution()
+ expireAt = int(self.__expirationTimer + 300 / timerResolution)
if expireAt not in self.__timelineExpQueue:
self.__timelineExpQueue[expireAt] = []
self.__timelineExpQueue[expireAt].append(msgAuthoritativeEngineId)
@@ -859,7 +860,9 @@ class SnmpUSMSecurityModel(AbstractSecurityModel):
msgAuthoritativeEngineTime,
int(time.time())
)
- expireAt = int(self.__expirationTimer + 300 / snmpEngine.transportDispatcher.getTimerResolution())
+
+ timerResolution = snmpEngine.transportDispatcher is None and 1.0 or snmpEngine.transportDispatcher.getTimerResolution()
+ expireAt = int(self.__expirationTimer + 300 / timerResolution)
if expireAt not in self.__timelineExpQueue:
self.__timelineExpQueue[expireAt] = []
self.__timelineExpQueue[expireAt].append(msgAuthoritativeEngineId)