diff options
48 files changed, 428 insertions, 808 deletions
diff --git a/pysnmp/carrier/asyncore/dgram/base.py b/pysnmp/carrier/asyncore/dgram/base.py index 14ab8723..7f9578e0 100644 --- a/pysnmp/carrier/asyncore/dgram/base.py +++ b/pysnmp/carrier/asyncore/dgram/base.py @@ -23,7 +23,7 @@ class DgramSocketTransport(AbstractSocketTransport): addressType = lambda x: x def __init__(self, sock=None, sockMap=None): self.__outQueue = [] - self._sendto = lambda s,b,a: s.sendto(b, a) + self._sendto = lambda s, b, a: s.sendto(b, a) def __recvfrom(s, sz): d, a = s.recvfrom(sz) return d, self.addressType(a) @@ -61,7 +61,7 @@ class DgramSocketTransport(AbstractSocketTransport): raise error.CarrierError('sendmsg()/recvmsg() interface is not supported by this OS and/or Python version') try: - if self.socket.family in (socket.AF_INET,socket.AF_INET6): + if self.socket.family in (socket.AF_INET, socket.AF_INET6): self.socket.setsockopt(socket.SOL_IP, socket.IP_PKTINFO, flag) if self.socket.family == socket.AF_INET6: self.socket.setsockopt(socket.SOL_IPV6, socket.IPV6_RECVPKTINFO, flag) diff --git a/pysnmp/carrier/twisted/dispatch.py b/pysnmp/carrier/twisted/dispatch.py index 90284849..858bbd0f 100644 --- a/pysnmp/carrier/twisted/dispatch.py +++ b/pysnmp/carrier/twisted/dispatch.py @@ -36,17 +36,17 @@ class TwistedDispatcher(AbstractTransportDispatcher): def registerTransport(self, tDomain, transport): if not self.loopingcall.running and self.getTimerResolution() > 0: - self.loopingcall.start(self.getTimerResolution(), now = False) + self.loopingcall.start(self.getTimerResolution(), now=False) AbstractTransportDispatcher.registerTransport( self, tDomain, transport - ) - self.__transportCount = self.__transportCount + 1 + ) + self.__transportCount += 1 def unregisterTransport(self, tDomain): t = AbstractTransportDispatcher.getTransport(self, tDomain) if t is not None: AbstractTransportDispatcher.unregisterTransport(self, tDomain) - self.__transportCount = self.__transportCount - 1 + self.__transportCount -= 1 # The last transport has been removed, stop the timeout if self.__transportCount == 0 and self.loopingcall.running: diff --git a/pysnmp/debug.py b/pysnmp/debug.py index bec85400..da5101d0 100644 --- a/pysnmp/debug.py +++ b/pysnmp/debug.py @@ -109,5 +109,4 @@ def setLogger(l): logger = l def hexdump(octets): - return ' '.join(['%s%.2X' % (n%16 == 0 and ('\n%.5d: ' % n) or '', x) - for n, x in zip(range(len(octets)), octs2ints(octets))]) + return ' '.join(['%s%.2X' % (n%16 == 0 and ('\n%.5d: ' % n) or '', x) for n, x in zip(range(len(octets)), octs2ints(octets))]) diff --git a/pysnmp/entity/config.py b/pysnmp/entity/config.py index 3e323403..59ac864e 100644 --- a/pysnmp/entity/config.py +++ b/pysnmp/entity/config.py @@ -199,7 +199,7 @@ def delV3User(snmpEngine, ) if varBinds[0][1].isSameTypeWith(rfc1905.endOfMibView): break - if varBinds[0][0][:len(initialVarBinds[0][0])]!=initialVarBinds[0][0]: + if varBinds[0][0][:len(initialVarBinds[0][0])] != initialVarBinds[0][0]: break elif varBinds[2][1] == tblIdx1: # cloned from this entry delV3User(snmpEngine, varBinds[1][1], varBinds[0][1]) @@ -509,11 +509,13 @@ def delRwUser(snmpEngine, securityModel, securityName, securityLevel, subTree): delVacmUser(snmpEngine, securityModel, securityName, securityLevel, subTree, subTree) -def addTrapUser(snmpEngine,securityModel,securityName,securityLevel,subTree): +def addTrapUser(snmpEngine, securityModel, securityName, + securityLevel, subTree): addVacmUser(snmpEngine, securityModel, securityName, securityLevel, (), (), subTree) -def delTrapUser(snmpEngine,securityModel,securityName,securityLevel,subTree): +def delTrapUser(snmpEngine, securityModel, securityName, + securityLevel, subTree): delVacmUser(snmpEngine, securityModel, securityName, securityLevel, (), (), subTree) @@ -619,9 +621,15 @@ def setInitialVacmParameters(snmpEngine): "internet", "internet", "internet") # rfc3415: A.1.5 (semi-secure) - addVacmView(snmpEngine, "internet", "included", (1,3,6,1),"") - addVacmView(snmpEngine, "restricted", "included", (1,3,6,1,2,1,1),"") - addVacmView(snmpEngine, "restricted", "included", (1,3,6,1,2,1,11),"") - addVacmView(snmpEngine, "restricted", "included", (1,3,6,1,6,3,10,2,1),"") - addVacmView(snmpEngine, "restricted", "included", (1,3,6,1,6,3,11,2,1),"") - addVacmView(snmpEngine, "restricted", "included", (1,3,6,1,6,3,15,1,1),"") + addVacmView(snmpEngine, "internet", + "included", (1, 3, 6, 1), "") + addVacmView(snmpEngine, "restricted", + "included", (1, 3, 6, 1, 2, 1, 1), "") + addVacmView(snmpEngine, "restricted", + "included", (1, 3, 6, 1, 2, 1, 11), "") + addVacmView(snmpEngine, "restricted", + "included", (1, 3, 6, 1, 6, 3, 10, 2, 1), "") + addVacmView(snmpEngine, "restricted", + "included", (1, 3, 6, 1, 6, 3, 11, 2, 1), "") + addVacmView(snmpEngine, "restricted", + "included", (1, 3, 6, 1, 6, 3, 15, 1, 1), "") diff --git a/pysnmp/entity/rfc3413/cmdgen.py b/pysnmp/entity/rfc3413/cmdgen.py index 6f61dedb..ab68148e 100644 --- a/pysnmp/entity/rfc3413/cmdgen.py +++ b/pysnmp/entity/rfc3413/cmdgen.py @@ -37,38 +37,22 @@ class CommandGenerator: def __init__(self): self.__pendingReqs = {} - def processResponsePdu(self, - snmpEngine, - messageProcessingModel, - securityModel, - securityName, - securityLevel, - contextEngineId, - contextName, - pduVersion, - PDU, - statusInformation, - sendPduHandle, - cbCtx): + def processResponsePdu(self, snmpEngine, messageProcessingModel, + securityModel, securityName, securityLevel, + contextEngineId, contextName, pduVersion, + PDU, statusInformation, sendPduHandle, cbCtx): origSendRequestHandle, cbFun, cbCtx = cbCtx # 3.1.1 if sendPduHandle not in self.__pendingReqs: raise error.PySnmpError('Missing sendPduHandle %s' % sendPduHandle) - ( origTransportDomain, - origTransportAddress, - origMessageProcessingModel, - origSecurityModel, - origSecurityName, - origSecurityLevel, - origContextEngineId, - origContextName, - origPduVersion, - origPdu, - origTimeout, - origRetryCount, - origRetries ) = self.__pendingReqs.pop(sendPduHandle) + (origTransportDomain, origTransportAddress, + origMessageProcessingModel, origSecurityModel, + origSecurityName, origSecurityLevel, origContextEngineId, + origContextName, origPduVersion, origPdu, + origTimeout, origRetryCount, + origRetries) = self.__pendingReqs.pop(sendPduHandle) snmpEngine.transportDispatcher.jobFinished(id(self)) @@ -84,58 +68,35 @@ class CommandGenerator: errind.unknownEngineID) and \ origRetries == origRetryCount: debug.logger & debug.flagApp and debug.logger('processResponsePdu: sendPduHandle %s, retry count %d exceeded' % (sendPduHandle, origRetries)) - cbFun(snmpEngine, - origSendRequestHandle, - statusInformation['errorIndication'], - None, - cbCtx) + cbFun(snmpEngine, origSendRequestHandle, + statusInformation['errorIndication'], None, cbCtx) return try: sendPduHandle = snmpEngine.msgAndPduDsp.sendPdu( - snmpEngine, - origTransportDomain, - origTransportAddress, - origMessageProcessingModel, - origSecurityModel, - origSecurityName, - origSecurityLevel, - origContextEngineId, - origContextName, - origPduVersion, - origPdu, - True, # expectResponse - origTimeout, # already in ticks - self.processResponsePdu, - (origSendRequestHandle, cbFun, cbCtx) - ) + snmpEngine, origTransportDomain, origTransportAddress, + origMessageProcessingModel, origSecurityModel, + origSecurityName, origSecurityLevel, origContextEngineId, + origContextName, origPduVersion, origPdu, + True, origTimeout, self.processResponsePdu, + (origSendRequestHandle, cbFun, cbCtx)) snmpEngine.transportDispatcher.jobStarted(id(self)) self.__pendingReqs[sendPduHandle] = ( - origTransportDomain, - origTransportAddress, - origMessageProcessingModel, - origSecurityModel, - origSecurityName, - origSecurityLevel, - origContextEngineId, - origContextName, - origPduVersion, - origPdu, - origTimeout, - origRetryCount, - origRetries + 1 + origTransportDomain, origTransportAddress, + origMessageProcessingModel, origSecurityModel, + origSecurityName, origSecurityLevel, origContextEngineId, + origContextName, origPduVersion, origPdu, origTimeout, + origRetryCount, origRetries + 1 ) return except StatusInformation: statusInformation = sys.exc_info()[1] debug.logger & debug.flagApp and debug.logger('processResponsePdu: origSendRequestHandle %s, _sendPdu() failed with %r' % (sendPduHandle, statusInformation)) - cbFun(snmpEngine, - origSendRequestHandle, + cbFun(snmpEngine, origSendRequestHandle, statusInformation['errorIndication'], - None, - cbCtx) + None, cbCtx) return if origMessageProcessingModel != messageProcessingModel or \ @@ -146,11 +107,8 @@ class CommandGenerator: origPduVersion != pduVersion: debug.logger & debug.flagApp and debug.logger('processResponsePdu: sendPduHandle %s, request/response data mismatch' % sendPduHandle) - cbFun(snmpEngine, - origSendRequestHandle, - 'badResponse', # errorIndication - None, - cbCtx) + cbFun(snmpEngine, origSendRequestHandle, + 'badResponse', None, cbCtx) return # User-side API assumes SMIv2 @@ -160,35 +118,18 @@ class CommandGenerator: # 3.1.2 if v2c.apiPDU.getRequestID(PDU) != v2c.apiPDU.getRequestID(origPdu): debug.logger & debug.flagApp and debug.logger('processResponsePdu: sendPduHandle %s, request-id/response-id mismatch' % sendPduHandle) - cbFun(snmpEngine, - origSendRequestHandle, - 'badResponse', # errorIndication - None, - cbCtx) + cbFun(snmpEngine, origSendRequestHandle, + 'badResponse', None, cbCtx) return - cbFun(snmpEngine, - origSendRequestHandle, - None, # errorIndication - PDU, - cbCtx) - - def sendPdu(self, - snmpEngine, - targetName, - contextEngineId, - contextName, - PDU, - cbFun, - cbCtx): - ( transportDomain, - transportAddress, - timeout, - retryCount, - messageProcessingModel, - securityModel, - securityName, - securityLevel ) = config.getTargetInfo(snmpEngine, targetName) + cbFun(snmpEngine, origSendRequestHandle, None, PDU, cbCtx) + + def sendPdu(self, snmpEngine, targetName, contextEngineId, + contextName, PDU, cbFun, cbCtx): + (transportDomain, transportAddress, timeout, + retryCount, messageProcessingModel, securityModel, + securityName, + securityLevel) = config.getTargetInfo(snmpEngine, targetName) # Convert timeout in seconds into timeout in timer ticks timeoutInTicks = float(timeout)/100/snmpEngine.transportDispatcher.getTimerResolution() @@ -213,39 +154,20 @@ class CommandGenerator: # 3.1 sendPduHandle = snmpEngine.msgAndPduDsp.sendPdu( - snmpEngine, - transportDomain, - transportAddress, - messageProcessingModel, - securityModel, - securityName, - securityLevel, - contextEngineId, - contextName, - pduVersion, - PDU, - 1, # expectResponse - timeoutInTicks, - self.processResponsePdu, + snmpEngine, transportDomain, transportAddress, + messageProcessingModel, securityModel, securityName, + securityLevel, contextEngineId, contextName, + pduVersion, PDU, True, timeoutInTicks, self.processResponsePdu, (sendRequestHandle, cbFun, cbCtx) ) snmpEngine.transportDispatcher.jobStarted(id(self)) self.__pendingReqs[sendPduHandle] = ( - transportDomain, - transportAddress, - messageProcessingModel, - securityModel, - securityName, - securityLevel, - contextEngineId, - contextName, - pduVersion, - origPDU, - timeoutInTicks, - retryCount, - 0 + transportDomain, transportAddress, messageProcessingModel, + securityModel, securityName, securityLevel, contextEngineId, + contextName, pduVersion, origPDU, timeoutInTicks, + retryCount, 0 ) debug.logger & debug.flagApp and debug.logger('sendPdu: sendPduHandle %s, timeout %d*10 ms/%d ticks, retry 0 of %d' % (sendPduHandle, timeout, timeoutInTicks, retryCount)) @@ -256,135 +178,77 @@ class CommandGenerator: CommandGeneratorBase = CommandGenerator class GetCommandGenerator(CommandGenerator): - def processResponseVarBinds(self, - snmpEngine, - sendRequestHandle, - errorIndication, - PDU, - cbCtx): + def processResponseVarBinds(self, snmpEngine, sendRequestHandle, + errorIndication, PDU, cbCtx): cbFun, cbCtx = cbCtx - cbFun(snmpEngine, - sendRequestHandle, - errorIndication, + cbFun(snmpEngine, sendRequestHandle, errorIndication, PDU and v2c.apiPDU.getErrorStatus(PDU) or 0, PDU and v2c.apiPDU.getErrorIndex(PDU, muteErrors=True) or 0, - PDU and v2c.apiPDU.getVarBinds(PDU) or (), - cbCtx) - - def sendVarBinds(self, - snmpEngine, - targetName, - contextEngineId, - contextName, - varBinds, - cbFun, - cbCtx=None): + PDU and v2c.apiPDU.getVarBinds(PDU) or (), cbCtx) + + def sendVarBinds(self, snmpEngine, targetName, contextEngineId, + contextName, varBinds, cbFun, cbCtx=None): reqPDU = v2c.GetRequestPDU() v2c.apiPDU.setDefaults(reqPDU) v2c.apiPDU.setVarBinds(reqPDU, varBinds) - return self.sendPdu(snmpEngine, - targetName, - contextEngineId, - contextName, - reqPDU, - self.processResponseVarBinds, + return self.sendPdu(snmpEngine, targetName, contextEngineId, + contextName, reqPDU, self.processResponseVarBinds, (cbFun, cbCtx)) class SetCommandGenerator(CommandGenerator): - def processResponseVarBinds(self, - snmpEngine, - sendRequestHandle, - errorIndication, - PDU, - cbCtx): + def processResponseVarBinds(self, snmpEngine, sendRequestHandle, + errorIndication, PDU, cbCtx): cbFun, cbCtx = cbCtx - cbFun(snmpEngine, - sendRequestHandle, - errorIndication, + cbFun(snmpEngine, sendRequestHandle, errorIndication, PDU and v2c.apiPDU.getErrorStatus(PDU) or 0, PDU and v2c.apiPDU.getErrorIndex(PDU, muteErrors=True) or 0, - PDU and v2c.apiPDU.getVarBinds(PDU) or (), - cbCtx) - - def sendVarBinds(self, - snmpEngine, - targetName, - contextEngineId, - contextName, - varBinds, - cbFun, - cbCtx=None): + PDU and v2c.apiPDU.getVarBinds(PDU) or (), cbCtx) + + def sendVarBinds(self, snmpEngine, targetName, contextEngineId, + contextName, varBinds, cbFun, cbCtx=None): reqPDU = v2c.SetRequestPDU() v2c.apiPDU.setDefaults(reqPDU) v2c.apiPDU.setVarBinds(reqPDU, varBinds) - return self.sendPdu(snmpEngine, - targetName, - contextEngineId, - contextName, - reqPDU, - self.processResponseVarBinds, - (cbFun, cbCtx)) + return self.sendPdu(snmpEngine, targetName, contextEngineId, + contextName, reqPDU, + self.processResponseVarBinds, (cbFun, cbCtx)) class NextCommandGeneratorSingleRun(CommandGenerator): - def processResponseVarBinds(self, - snmpEngine, - sendRequestHandle, - errorIndication, - PDU, - cbCtx): + def processResponseVarBinds(self, snmpEngine, sendRequestHandle, + errorIndication, PDU, cbCtx): targetName, contextEngineId, contextName, reqPDU, cbFun, cbCtx = cbCtx - cbFun(snmpEngine, - sendRequestHandle, - errorIndication, + cbFun(snmpEngine, sendRequestHandle, errorIndication, PDU and v2c.apiPDU.getErrorStatus(PDU) or 0, PDU and v2c.apiPDU.getErrorIndex(PDU, muteErrors=True) or 0, - PDU and v2c.apiPDU.getVarBinds(PDU) or (), - cbCtx) - - def sendVarBinds(self, - snmpEngine, - targetName, - contextEngineId, - contextName, - varBinds, - cbFun, - cbCtx=None): + PDU and v2c.apiPDU.getVarBinds(PDU) or (), cbCtx) + + def sendVarBinds(self, snmpEngine, targetName, contextEngineId, + contextName, varBinds, cbFun, cbCtx=None): reqPDU = v2c.GetNextRequestPDU() v2c.apiPDU.setDefaults(reqPDU) v2c.apiPDU.setVarBinds(reqPDU, varBinds) - return self.sendPdu(snmpEngine, - targetName, - contextEngineId, - contextName, - reqPDU, - self.processResponseVarBinds, + return self.sendPdu(snmpEngine, targetName, contextEngineId, + contextName, reqPDU, self.processResponseVarBinds, (targetName, contextEngineId, contextName, reqPDU, cbFun, cbCtx)) class NextCommandGenerator(NextCommandGeneratorSingleRun): - def processResponseVarBinds(self, - snmpEngine, - sendRequestHandle, - errorIndication, - PDU, - cbCtx): + def processResponseVarBinds(self, snmpEngine, sendRequestHandle, + errorIndication, PDU, cbCtx): targetName, contextEngineId, contextName, reqPDU, cbFun, cbCtx = cbCtx if errorIndication: - cbFun(snmpEngine, - sendRequestHandle, - errorIndication, - 0, 0, (), - cbCtx) + cbFun(snmpEngine, sendRequestHandle, errorIndication, + 0, 0, (), cbCtx) return varBindTable = v2c.apiPDU.getVarBindTable(reqPDU, PDU) @@ -398,13 +262,10 @@ class NextCommandGenerator(NextCommandGeneratorSingleRun): varBindTable[-1], v2c.apiPDU.getVarBinds(reqPDU) ) - if not cbFun(snmpEngine, - sendRequestHandle, - errorIndication, + if not cbFun(snmpEngine, sendRequestHandle, errorIndication, v2c.apiPDU.getErrorStatus(PDU), v2c.apiPDU.getErrorIndex(PDU, muteErrors=True), - varBindTable, - cbCtx): + varBindTable, cbCtx): debug.logger & debug.flagApp and debug.logger('processResponseVarBinds: sendRequestHandle %s, app says to stop walking' % sendRequestHandle) return # app says enough @@ -415,11 +276,8 @@ class NextCommandGenerator(NextCommandGeneratorSingleRun): v2c.apiPDU.setVarBinds(reqPDU, varBinds) try: - self.sendPdu(snmpEngine, - targetName, - contextEngineId, - contextName, - reqPDU, + self.sendPdu(snmpEngine, targetName, contextEngineId, + contextName, reqPDU, self.processResponseVarBinds, (targetName, contextEngineId, contextName, reqPDU, cbFun, cbCtx)) @@ -427,39 +285,24 @@ class NextCommandGenerator(NextCommandGeneratorSingleRun): except StatusInformation: statusInformation = sys.exc_info()[1] debug.logger & debug.flagApp and debug.logger('sendVarBinds: sendPduHandle %s: sendPdu() failed with %r' % (sendRequestHandle, statusInformation)) - cbFun(snmpEngine, - sendRequestHandle, + cbFun(snmpEngine, sendRequestHandle, statusInformation['errorIndication'], 0, 0, (), cbCtx) class BulkCommandGeneratorSingleRun(CommandGenerator): - def processResponseVarBinds(self, - snmpEngine, - sendRequestHandle, - errorIndication, - PDU, - cbCtx): - targetName, nonRepeaters, maxRepetitions, \ - contextEngineId, contextName, reqPDU, cbFun, cbCtx = cbCtx - - cbFun(snmpEngine, - sendRequestHandle, - errorIndication, + def processResponseVarBinds(self, snmpEngine, sendRequestHandle, + errorIndication, PDU, cbCtx): + (targetName, nonRepeaters, maxRepetitions, + contextEngineId, contextName, reqPDU, cbFun, cbCtx) = cbCtx + + cbFun(snmpEngine, sendRequestHandle, errorIndication, PDU and v2c.apiPDU.getErrorStatus(PDU) or 0, PDU and v2c.apiPDU.getErrorIndex(PDU, muteErrors=True) or 0, - PDU and v2c.apiPDU.getVarBinds(PDU) or (), - cbCtx) - - def sendVarBinds(self, - snmpEngine, - targetName, - contextEngineId, - contextName, - nonRepeaters, - maxRepetitions, - varBinds, - cbFun, - cbCtx=None): + PDU and v2c.apiPDU.getVarBinds(PDU) or (), cbCtx) + + def sendVarBinds(self, snmpEngine, targetName, contextEngineId, + contextName, nonRepeaters, maxRepetitions, + varBinds, cbFun, cbCtx=None): reqPDU = v2c.GetBulkRequestPDU() v2c.apiBulkPDU.setDefaults(reqPDU) @@ -468,32 +311,22 @@ class BulkCommandGeneratorSingleRun(CommandGenerator): v2c.apiBulkPDU.setVarBinds(reqPDU, varBinds) - return self.sendPdu(snmpEngine, - targetName, - contextEngineId, - contextName, - reqPDU, + return self.sendPdu(snmpEngine, targetName, contextEngineId, + contextName, reqPDU, self.processResponseVarBinds, (targetName, nonRepeaters, maxRepetitions, contextEngineId, contextName, reqPDU, cbFun, cbCtx)) class BulkCommandGenerator(BulkCommandGeneratorSingleRun): - def processResponseVarBinds(self, - snmpEngine, - sendRequestHandle, - errorIndication, - PDU, - cbCtx): - targetName, nonRepeaters, maxRepetitions, \ - contextEngineId, contextName, reqPDU, cbFun, cbCtx = cbCtx + def processResponseVarBinds(self, snmpEngine, sendRequestHandle, + errorIndication, PDU, cbCtx): + (targetName, nonRepeaters, maxRepetitions, + contextEngineId, contextName, reqPDU, cbFun, cbCtx) = cbCtx if errorIndication: - cbFun(snmpEngine, - sendRequestHandle, - errorIndication, - 0, 0, (), - cbCtx) + cbFun(snmpEngine, sendRequestHandle, errorIndication, + 0, 0, (), cbCtx) return varBindTable = v2c.apiBulkPDU.getVarBindTable(reqPDU, PDU) @@ -510,9 +343,7 @@ class BulkCommandGenerator(BulkCommandGeneratorSingleRun): if nonRepeaters: varBinds = v2c.apiBulkPDU.getVarBinds(reqPDU)[:int(nonRepeaters)] + varBinds[int(nonRepeaters):] - if not cbFun(snmpEngine, - sendRequestHandle, - errorIndication, + if not cbFun(snmpEngine, sendRequestHandle, errorIndication, v2c.apiBulkPDU.getErrorStatus(PDU), v2c.apiBulkPDU.getErrorIndex(PDU, muteErrors=True), varBindTable, cbCtx): @@ -527,11 +358,8 @@ class BulkCommandGenerator(BulkCommandGeneratorSingleRun): try: - self.sendPdu(snmpEngine, - targetName, - contextEngineId, - contextName, - reqPDU, + self.sendPdu(snmpEngine, targetName, contextEngineId, + contextName, reqPDU, self.processResponseVarBinds, (targetName, nonRepeaters, maxRepetitions, contextEngineId, contextName, reqPDU, cbFun, cbCtx)) @@ -539,65 +367,31 @@ class BulkCommandGenerator(BulkCommandGeneratorSingleRun): except StatusInformation: statusInformation = sys.exc_info()[1] debug.logger & debug.flagApp and debug.logger('processResponseVarBinds: sendPduHandle %s: _sendPdu() failed with %r' % (sendRequestHandle, statusInformation)) - cbFun(snmpEngine, - sendRequestHandle, - statusInformation['errorIndication'], - 0, 0, (), cbCtx) + cbFun(snmpEngine, sendRequestHandle, + statusInformation['errorIndication'], 0, 0, (), cbCtx) # # Obsolete, compatibility interfaces. # -def __sendReqCbFun(snmpEngine, - sendRequestHandle, - errorIndication, - errorStatus, - errorIndex, - varBinds, - cbCtx): +def __sendReqCbFun(snmpEngine, sendRequestHandle, errorIndication, + errorStatus, errorIndex, varBinds, cbCtx): cbFun, cbCtx = cbCtx - return cbFun(sendRequestHandle, - errorIndication, - errorStatus, - errorIndex, - varBinds, - cbCtx) - -def _sendReq(self, - snmpEngine, - targetName, - varBinds, - cbFun, - cbCtx=None, - contextEngineId=None, - contextName=''): - return self.sendVarBinds(snmpEngine, - targetName, - contextEngineId, - contextName, - varBinds, - __sendReqCbFun, + return cbFun(sendRequestHandle, errorIndication, errorStatus, + errorIndex, varBinds, cbCtx) + +def _sendReq(self, snmpEngine, targetName, varBinds, cbFun, + cbCtx=None, contextEngineId=None, contextName=''): + return self.sendVarBinds(snmpEngine, targetName, contextEngineId, + contextName, varBinds, __sendReqCbFun, (cbFun, cbCtx)) -def _sendBulkReq(self, - snmpEngine, - targetName, - nonRepeaters, - maxRepetitions, - varBinds, - cbFun, - cbCtx=None, - contextEngineId=None, +def _sendBulkReq(self, snmpEngine, targetName, nonRepeaters, maxRepetitions, + varBinds, cbFun, cbCtx=None, contextEngineId=None, contextName=''): - return self.sendVarBinds(snmpEngine, - targetName, - contextEngineId, - contextName, - nonRepeaters, - maxRepetitions, - varBinds, - __sendReqCbFun, - (cbFun, cbCtx)) + return self.sendVarBinds(snmpEngine, targetName, contextEngineId, + contextName, nonRepeaters, maxRepetitions, + varBinds, __sendReqCbFun, (cbFun, cbCtx)) # install compatibility wrappers GetCommandGenerator.sendReq = _sendReq diff --git a/pysnmp/entity/rfc3413/cmdrsp.py b/pysnmp/entity/rfc3413/cmdrsp.py index dfe9ec13..2b30e8e8 100644 --- a/pysnmp/entity/rfc3413/cmdrsp.py +++ b/pysnmp/entity/rfc3413/cmdrsp.py @@ -136,31 +136,31 @@ class CommandResponderBase: # PDU-level SMI errors except pysnmp.smi.error.NoAccessError: - errorStatus, errorIndex = 'noAccess', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'noAccess', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.WrongTypeError: - errorStatus, errorIndex = 'wrongType', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'wrongType', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.WrongLengthError: - errorStatus, errorIndex = 'wrongLength', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'wrongLength', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.WrongEncodingError: - errorStatus, errorIndex='wrongEncoding', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'wrongEncoding', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.WrongValueError: - errorStatus, errorIndex = 'wrongValue', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'wrongValue', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.NoCreationError: - errorStatus, errorIndex = 'noCreation', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'noCreation', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.InconsistentValueError: - errorStatus, errorIndex = 'inconsistentValue', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'inconsistentValue', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.ResourceUnavailableError: - errorStatus, errorIndex = 'resourceUnavailable', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'resourceUnavailable', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.CommitFailedError: - errorStatus, errorIndex = 'commitFailed', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'commitFailed', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.UndoFailedError: - errorStatus, errorIndex = 'undoFailed', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'undoFailed', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.AuthorizationError: - errorStatus, errorIndex = 'authorizationError', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'authorizationError', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.NotWritableError: - errorStatus, errorIndex = 'notWritable', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'notWritable', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.InconsistentNameError: - errorStatus, errorIndex = 'inconsistentName', sys.exc_info()[1]['idx']+1 + errorStatus, errorIndex = 'inconsistentName', sys.exc_info()[1]['idx'] + 1 except pysnmp.smi.error.SmiError: errorStatus, errorIndex = 'genErr', len(varBinds) and 1 or 0 except pysnmp.error.PySnmpError: diff --git a/pysnmp/entity/rfc3413/config.py b/pysnmp/entity/rfc3413/config.py index 8add3901..5e0ccdb1 100644 --- a/pysnmp/entity/rfc3413/config.py +++ b/pysnmp/entity/rfc3413/config.py @@ -11,7 +11,7 @@ def getTargetAddr(snmpEngine, snmpTargetAddrName): cache = snmpEngine.getUserContext('getTargetAddr') if cache is None: - cache = { 'id': -1 } + cache = {'id': -1} snmpEngine.setUserContext(getTargetAddr=cache) if cache['id'] != snmpTargetAddrEntry.branchVersionId: @@ -94,7 +94,7 @@ def getTargetParams(snmpEngine, paramsName): cache = snmpEngine.getUserContext('getTargetParams') if cache is None: - cache = { 'id': -1 } + cache = {'id': -1} snmpEngine.setUserContext(getTargetParams=cache) if cache['id'] != snmpTargetParamsEntry.branchVersionId: @@ -225,7 +225,7 @@ def getTargetNames(snmpEngine, tag): 'snmpTargetAddrTagList' ) targetNames = [] - mibNode = snmpTargetAddrTagList + mibNode = snmpTargetAddrTagList while True: try: mibNode = snmpTargetAddrTagList.getNextNode(mibNode.name) diff --git a/pysnmp/entity/rfc3413/context.py b/pysnmp/entity/rfc3413/context.py index 9a2f12fd..565bb3c2 100644 --- a/pysnmp/entity/rfc3413/context.py +++ b/pysnmp/entity/rfc3413/context.py @@ -6,7 +6,7 @@ from pysnmp import debug class SnmpContext: def __init__(self, snmpEngine, contextEngineId=None): - snmpEngineId,= snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB', 'snmpEngineID') + snmpEngineId, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB', 'snmpEngineID') if contextEngineId is None: # Default to local snmpEngineId self.contextEngineId = snmpEngineId.syntax diff --git a/pysnmp/entity/rfc3413/mibvar.py b/pysnmp/entity/rfc3413/mibvar.py index 969d7ab7..65b4653c 100644 --- a/pysnmp/entity/rfc3413/mibvar.py +++ b/pysnmp/entity/rfc3413/mibvar.py @@ -10,7 +10,7 @@ from pysnmp.smi.error import NoSuchObjectError def mibNameToOid(mibView, name): if isinstance(name[0], tuple): - f = lambda x='',y='': (x,y) + f = lambda x='', y='': (x, y) modName, symName = f(*name[0]) if modName: # load module if needed mibView.mibBuilder.loadModules(modName) diff --git a/pysnmp/entity/rfc3413/ntforg.py b/pysnmp/entity/rfc3413/ntforg.py index 42274069..a57397fb 100644 --- a/pysnmp/entity/rfc3413/ntforg.py +++ b/pysnmp/entity/rfc3413/ntforg.py @@ -184,7 +184,7 @@ class NotificationOriginator: debug.logger & debug.flagApp and debug.logger('sendVarBinds: notificationHandle %s, notifyTag %s, notifyType %s' % (notificationHandle, notifyTag, notifyType)) - varBinds = [(v2c.ObjectIdentifier(x),y) for x,y in varBinds] + varBinds = [(v2c.ObjectIdentifier(x), y) for x, y in varBinds] # 3.3.2 & 3.3.3 snmpTrapOID, sysUpTime = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMPv2-MIB', 'snmpTrapOID', 'sysUpTime') diff --git a/pysnmp/entity/rfc3413/oneliner/cmdgen.py b/pysnmp/entity/rfc3413/oneliner/cmdgen.py index 63ea6976..827ca08b 100644 --- a/pysnmp/entity/rfc3413/oneliner/cmdgen.py +++ b/pysnmp/entity/rfc3413/oneliner/cmdgen.py @@ -31,25 +31,17 @@ class AsynCommandGenerator: self.lcd.unconfigure(self.snmpEngine) def cfgCmdGen(self, authData, transportTarget): - return self.lcd.configure( - self.snmpEngine, authData, transportTarget - ) + return self.lcd.configure(self.snmpEngine, authData, transportTarget) def uncfgCmdGen(self, authData=None): - return self.lcd.unconfigure( - self.snmpEngine, authData - ) + return self.lcd.unconfigure(self.snmpEngine, authData) # compatibility stub def makeReadVarBinds(self, varNames): - return self.makeVarBinds( - [ (x, self._null) for x in varNames ] - ) + return self.makeVarBinds([(x, self._null) for x in varNames]) def makeVarBinds(self, varBinds): - return self.vbProcessor.makeVarBinds( - self.snmpEngine, varBinds - ) + return self.vbProcessor.makeVarBinds(self.snmpEngine, varBinds) def unmakeVarBinds(self, varBinds, lookupNames, lookupValues): return self.vbProcessor.unmakeVarBinds( @@ -73,8 +65,7 @@ class AsynCommandGenerator: contextName = authData.contextName return getCmd( - self.snmpEngine, - authData, transportTarget, + self.snmpEngine, authData, transportTarget, ContextData(contextEngineId, contextName), *[(x, self._null) for x in varNames], **dict(cbFun=__cbFun, cbCtx=cbInfo, @@ -101,10 +92,8 @@ class AsynCommandGenerator: return setCmd( - self.snmpEngine, - authData, transportTarget, - ContextData(contextEngineId, contextName), - *varBinds, + self.snmpEngine, authData, transportTarget, + ContextData(contextEngineId, contextName), *varBinds, **dict(cbFun=__cbFun, cbCtx=cbInfo, lookupMib=lookupNames or lookupValues) ) @@ -128,8 +117,7 @@ class AsynCommandGenerator: contextName = authData.contextName return nextCmd( - self.snmpEngine, - authData, transportTarget, + self.snmpEngine, authData, transportTarget, ContextData(contextEngineId, contextName), *[(x, self._null) for x in varNames], **dict(cbFun=__cbFun, cbCtx=cbInfo, @@ -156,8 +144,7 @@ class AsynCommandGenerator: contextName = authData.contextName return bulkCmd( - self.snmpEngine, - authData, transportTarget, + self.snmpEngine, authData, transportTarget, ContextData(contextEngineId, contextName), nonRepeaters, maxRepetitions, *[(x, self._null) for x in varNames], @@ -185,7 +172,7 @@ class CommandGenerator: in sync.getCmd(self.snmpEngine, authData, transportTarget, ContextData(kwargs.get('contextEngineId'), kwargs.get('contextName', null)), - *[ (x, self._null) for x in varNames ], + *[(x, self._null) for x in varNames], **kwargs): break return errorIndication, errorStatus, errorIndex, varBinds @@ -223,7 +210,7 @@ class CommandGenerator: in sync.nextCmd(self.snmpEngine, authData, transportTarget, ContextData(kwargs.get('contextEngineId'), kwargs.get('contextName', null)), - *[ (x, self._null) for x in varNames ], + *[(x, self._null) for x in varNames], **kwargs): if errorIndication or errorStatus: return errorIndication, errorStatus, errorIndex, varBinds @@ -250,7 +237,7 @@ class CommandGenerator: ContextData(kwargs.get('contextEngineId'), kwargs.get('contextName', null)), nonRepeaters, maxRepetitions, - *[ (x, self._null) for x in varNames ], + *[(x, self._null) for x in varNames], **kwargs): if errorIndication or errorStatus: return errorIndication, errorStatus, errorIndex, varBinds diff --git a/pysnmp/hlapi/asyncio/cmdgen.py b/pysnmp/hlapi/asyncio/cmdgen.py index edee7a93..50388f30 100644 --- a/pysnmp/hlapi/asyncio/cmdgen.py +++ b/pysnmp/hlapi/asyncio/cmdgen.py @@ -127,23 +127,17 @@ def getCmd(snmpEngine, authData, transportTarget, contextData, if future.cancelled(): return future.set_result( - (errorIndication, errorStatus, errorIndex, - vbProcessor.unmakeVarBinds(snmpEngine, varBinds, lookupMib)) + (errorIndication, errorStatus, errorIndex, vbProcessor.unmakeVarBinds(snmpEngine, varBinds, lookupMib)) ) - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) future = asyncio.Future() cmdgen.GetCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, + snmpEngine, addrName, contextData.contextEngineId, contextData.contextName, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, + vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), future) ) return future @@ -230,23 +224,17 @@ def setCmd(snmpEngine, authData, transportTarget, contextData, if future.cancelled(): return future.set_result( - (errorIndication, errorStatus, errorIndex, - vbProcessor.unmakeVarBinds(snmpEngine, varBinds, lookupMib)) + (errorIndication, errorStatus, errorIndex, vbProcessor.unmakeVarBinds(snmpEngine, varBinds, lookupMib)) ) - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) future = asyncio.Future() cmdgen.SetCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, + snmpEngine, addrName, contextData.contextEngineId, contextData.contextName, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, + vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), future) ) return future @@ -337,23 +325,17 @@ def nextCmd(snmpEngine, authData, transportTarget, contextData, if future.cancelled(): return future.set_result( - (errorIndication, errorStatus, errorIndex, - [ vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable ]) + (errorIndication, errorStatus, errorIndex, [vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable]) ) - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) future = asyncio.Future() cmdgen.NextCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, + snmpEngine, addrName, contextData.contextEngineId, contextData.contextName, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, + vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), future) ) return future @@ -455,25 +437,17 @@ def bulkCmd(snmpEngine, authData, transportTarget, contextData, if future.cancelled(): return future.set_result( - (errorIndication, errorStatus, errorIndex, - [ vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable ]) + (errorIndication, errorStatus, errorIndex, [vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable]) ) - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) future = asyncio.Future() cmdgen.BulkCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, - contextData.contextName, - nonRepeaters, - maxRepetitions, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, + snmpEngine, addrName, contextData.contextEngineId, + contextData.contextName, nonRepeaters, maxRepetitions, + vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), future) ) return future diff --git a/pysnmp/hlapi/asyncio/ntforg.py b/pysnmp/hlapi/asyncio/ntforg.py index 8136af42..208942d8 100644 --- a/pysnmp/hlapi/asyncio/ntforg.py +++ b/pysnmp/hlapi/asyncio/ntforg.py @@ -140,8 +140,7 @@ def sendNotification(snmpEngine, authData, transportTarget, contextData, if future.cancelled(): return future.set_result( - (errorIndication, errorStatus, errorIndex, - vbProcessor.unmakeVarBinds(snmpEngine, varBinds, lookupMib)) + (errorIndication, errorStatus, errorIndex, vbProcessor.unmakeVarBinds(snmpEngine, varBinds, lookupMib)) ) notifyName = lcd.configure( diff --git a/pysnmp/hlapi/asyncio/transport.py b/pysnmp/hlapi/asyncio/transport.py index b51d874e..655454ce 100644 --- a/pysnmp/hlapi/asyncio/transport.py +++ b/pysnmp/hlapi/asyncio/transport.py @@ -49,7 +49,7 @@ class UdpTransportTarget(AbstractTransportTarget): socket.SOCK_DGRAM, socket.IPPROTO_UDP)[0][4][:2] except socket.gaierror: - raise PySnmpError('Bad IPv4/UDP transport address %s: %s' % ('@'.join([ str(x) for x in transportAddr ]), sys.exc_info()[1])) + raise PySnmpError('Bad IPv4/UDP transport address %s: %s' % ('@'.join([str(x) for x in transportAddr]), sys.exc_info()[1])) class Udp6TransportTarget(AbstractTransportTarget): """Creates UDP/IPv6 configuration entry and initialize socket API if needed. @@ -107,4 +107,4 @@ class Udp6TransportTarget(AbstractTransportTarget): socket.SOCK_DGRAM, socket.IPPROTO_UDP)[0][4][:2] except socket.gaierror: - raise PySnmpError('Bad IPv6/UDP transport address %s: %s' % ('@'.join([ str(x) for x in transportAddr ]), sys.exc_info()[1])) + raise PySnmpError('Bad IPv6/UDP transport address %s: %s' % ('@'.join([str(x) for x in transportAddr]), sys.exc_info()[1])) diff --git a/pysnmp/hlapi/asyncore/cmdgen.py b/pysnmp/hlapi/asyncore/cmdgen.py index 586cc0eb..ed1c7830 100644 --- a/pysnmp/hlapi/asyncore/cmdgen.py +++ b/pysnmp/hlapi/asyncore/cmdgen.py @@ -107,29 +107,18 @@ def getCmd(snmpEngine, authData, transportTarget, contextData, varBinds, cbCtx): lookupMib, cbFun, cbCtx = cbCtx if cbFun: - return cbFun( - snmpEngine, - sendRequestHandle, - errorIndication, - errorStatus, - errorIndex, - vbProcessor.unmakeVarBinds( - snmpEngine, varBinds, lookupMib - ), - cbCtx - ) - - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + return cbFun(snmpEngine, sendRequestHandle, errorIndication, + errorStatus, errorIndex, + vbProcessor.unmakeVarBinds( + snmpEngine, varBinds, lookupMib + ), cbCtx) + + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) return cmdgen.GetCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, + snmpEngine, addrName, contextData.contextEngineId, contextData.contextName, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, + vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), options.get('cbFun'), options.get('cbCtx')) ) @@ -227,31 +216,19 @@ def setCmd(snmpEngine, authData, transportTarget, contextData, errorIndication, errorStatus, errorIndex, varBinds, cbCtx): lookupMib, cbFun, cbCtx = cbCtx - return cbFun( - snmpEngine, - sendRequestHandle, - errorIndication, - errorStatus, - errorIndex, - vbProcessor.unmakeVarBinds( - snmpEngine, varBinds, lookupMib - ), - cbCtx - ) - - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + return cbFun(snmpEngine, sendRequestHandle, errorIndication, + errorStatus, errorIndex, + vbProcessor.unmakeVarBinds( + snmpEngine, varBinds, lookupMib + ), cbCtx) + + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) return cmdgen.SetCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, - contextData.contextName, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, - (options.get('lookupMib', True), - options.get('cbFun'), options.get('cbCtx')) + snmpEngine, addrName, contextData.contextEngineId, + contextData.contextName, vbProcessor.makeVarBinds(snmpEngine, varBinds), + __cbFun, (options.get('lookupMib', True), + options.get('cbFun'), options.get('cbCtx')) ) def nextCmd(snmpEngine, authData, transportTarget, contextData, @@ -345,31 +322,21 @@ def nextCmd(snmpEngine, authData, transportTarget, contextData, >>> """ - def __cbFun(snmpEngine, sendRequestHandle, - errorIndication, errorStatus, errorIndex, - varBindTable, cbCtx): + def __cbFun(snmpEngine, sendRequestHandle, errorIndication, + errorStatus, errorIndex, varBindTable, cbCtx): lookupMib, cbFun, cbCtx = cbCtx - return cbFun( - snmpEngine, - sendRequestHandle, - errorIndication, - errorStatus, - errorIndex, - [ vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable ], - cbCtx - ) - - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + return cbFun(snmpEngine, sendRequestHandle, errorIndication, + errorStatus, errorIndex, + [vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable], + cbCtx) + + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) return cmdgen.NextCommandGenerator().sendVarBinds( - snmpEngine, - addrName, + snmpEngine, addrName, contextData.contextEngineId, contextData.contextName, vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, - (options.get('lookupMib', True), - options.get('cbFun'), options.get('cbCtx')) + __cbFun, (options.get('lookupMib', True), + options.get('cbFun'), options.get('cbCtx')) ) def bulkCmd(snmpEngine, authData, transportTarget, contextData, @@ -478,27 +445,15 @@ def bulkCmd(snmpEngine, authData, transportTarget, contextData, errorIndication, errorStatus, errorIndex, varBindTable, cbCtx): lookupMib, cbFun, cbCtx = cbCtx - return cbFun( - snmpEngine, - sendRequestHandle, - errorIndication, - errorStatus, - errorIndex, - [ vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable ], - cbCtx - ) - - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + return cbFun(snmpEngine, sendRequestHandle, errorIndication, + errorStatus, errorIndex, + [vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable], cbCtx) + + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) return cmdgen.BulkCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, - contextData.contextName, - nonRepeaters, maxRepetitions, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, + snmpEngine, addrName, contextData.contextEngineId, + contextData.contextName, nonRepeaters, maxRepetitions, + vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), options.get('cbFun'), options.get('cbCtx')) ) diff --git a/pysnmp/hlapi/asyncore/ntforg.py b/pysnmp/hlapi/asyncore/ntforg.py index 8f56c2a1..c5adf97e 100644 --- a/pysnmp/hlapi/asyncore/ntforg.py +++ b/pysnmp/hlapi/asyncore/ntforg.py @@ -123,19 +123,15 @@ def sendNotification(snmpEngine, authData, transportTarget, contextData, errorStatus, errorIndex, varBinds, cbCtx): lookupMib, cbFun, cbCtx = cbCtx return cbFun and cbFun( - snmpEngine, - sendRequestHandle, - errorIndication, + snmpEngine, sendRequestHandle, errorIndication, errorStatus, errorIndex, vbProcessor.unmakeVarBinds( snmpEngine, varBinds, lookupMib - ), - cbCtx + ), cbCtx ) - notifyName = lcd.configure( - snmpEngine, authData, transportTarget, notifyType - ) + notifyName = lcd.configure(snmpEngine, authData, transportTarget, + notifyType) return ntforg.NotificationOriginator().sendVarBinds( snmpEngine, notifyName, diff --git a/pysnmp/hlapi/asyncore/sync/cmdgen.py b/pysnmp/hlapi/asyncore/sync/cmdgen.py index df131526..25a63c0e 100644 --- a/pysnmp/hlapi/asyncore/sync/cmdgen.py +++ b/pysnmp/hlapi/asyncore/sync/cmdgen.py @@ -88,15 +88,10 @@ def getCmd(snmpEngine, authData, transportTarget, contextData, while True: if varBinds: - cmdgen.getCmd( - snmpEngine, - authData, - transportTarget, - contextData, - *varBinds, + cmdgen.getCmd(snmpEngine, authData, transportTarget, + contextData, *varBinds, **dict(cbFun=cbFun, cbCtx=cbCtx, - lookupMib=options.get('lookupMib', True)) - ) + lookupMib=options.get('lookupMib', True))) snmpEngine.transportDispatcher.runDispatcher() @@ -108,7 +103,7 @@ def getCmd(snmpEngine, authData, transportTarget, contextData, errorIndication = errorStatus = errorIndex = None varBinds = [] - varBinds = ( yield errorIndication, errorStatus, errorIndex, varBinds ) + varBinds = (yield errorIndication, errorStatus, errorIndex, varBinds) if not varBinds: break @@ -196,12 +191,8 @@ def setCmd(snmpEngine, authData, transportTarget, contextData, while True: if varBinds: - cmdgen.setCmd( - snmpEngine, - authData, - transportTarget, - contextData, - *varBinds, + cmdgen.setCmd(snmpEngine, authData, transportTarget, + contextData, *varBinds, **dict(cbFun=cbFun, cbCtx=cbCtx, lookupMib=options.get('lookupMib', True)) ) @@ -216,7 +207,7 @@ def setCmd(snmpEngine, authData, transportTarget, contextData, errorIndication = errorStatus = errorIndex = None varBinds = [] - varBinds = ( yield errorIndication, errorStatus, errorIndex, varBinds ) + varBinds = (yield errorIndication, errorStatus, errorIndex, varBinds) if not varBinds: break @@ -331,17 +322,14 @@ def nextCmd(snmpEngine, authData, transportTarget, contextData, vbProcessor = CommandGeneratorVarBinds() - initialVars = [ x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds) ] + initialVars = [x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds)] totalRows = totalCalls = 0 while True: if varBinds: - cmdgen.nextCmd(snmpEngine, - authData, - transportTarget, - contextData, - *[ (x[0], Null()) for x in varBinds ], + cmdgen.nextCmd(snmpEngine, authData, transportTarget, contextData, + *[(x[0], Null()) for x in varBinds], **dict(cbFun=cbFun, cbCtx=cbCtx, lookupMib=options.get('lookupMib', True))) @@ -382,13 +370,12 @@ def nextCmd(snmpEngine, authData, transportTarget, contextData, errorIndication = errorStatus = errorIndex = None varBinds = [] - initialVarBinds = ( yield errorIndication, errorStatus,\ - errorIndex, varBinds ) + initialVarBinds = (yield errorIndication, errorStatus,\ + errorIndex, varBinds) if initialVarBinds: varBinds = initialVarBinds - initialVars = [ x[0] for x in vbProcessor.makeVarBinds(snmpEngine, - varBinds) ] + initialVars = [x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds)] if maxRows and totalRows >= maxRows or \ maxCalls and totalCalls >= maxCalls: @@ -518,8 +505,8 @@ def bulkCmd(snmpEngine, authData, transportTarget, contextData, vbProcessor = CommandGeneratorVarBinds() - initialVars = [ x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds) ] - nullVarBinds = [ False ] * len(initialVars) + initialVars = [x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds)] + nullVarBinds = [False] * len(initialVars) totalRows = totalCalls = 0 stopFlag = False @@ -528,12 +515,9 @@ def bulkCmd(snmpEngine, authData, transportTarget, contextData, if maxRows and totalRows < maxRows: maxRepetitions = min(maxRepetitions, maxRows-totalRows) - cmdgen.bulkCmd(snmpEngine, - authData, - transportTarget, - contextData, + cmdgen.bulkCmd(snmpEngine, authData, transportTarget, contextData, nonRepeaters, maxRepetitions, - *[ (x[0], Null()) for x in varBinds ], + *[(x[0], Null()) for x in varBinds], **dict(cbFun=cbFun, cbCtx=cbCtx, lookupMib=options.get('lookupMib', True))) @@ -596,9 +580,9 @@ def bulkCmd(snmpEngine, authData, transportTarget, contextData, stopFlag = True for varBinds in varBindTable: - initialVarBinds = ( yield errorIndication, errorStatus,\ - errorIndex, varBinds ) + initialVarBinds = (yield errorIndication, errorStatus,\ + errorIndex, varBinds) if initialVarBinds: varBinds = initialVarBinds - initialVars = [ x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds) ] + initialVars = [x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds)] diff --git a/pysnmp/hlapi/asyncore/sync/compat/cmdgen.py b/pysnmp/hlapi/asyncore/sync/compat/cmdgen.py index 754166f1..879eeac1 100644 --- a/pysnmp/hlapi/asyncore/sync/compat/cmdgen.py +++ b/pysnmp/hlapi/asyncore/sync/compat/cmdgen.py @@ -26,15 +26,9 @@ def getCmd(snmpEngine, authData, transportTarget, contextData, cbCtx = {} if varBinds: - cmdgen.getCmd( - snmpEngine, - authData, - transportTarget, - contextData, - *varBinds, - **dict(cbFun=cbFun, cbCtx=cbCtx, - lookupMib=options.get('lookupMib', True)) - ) + cmdgen.getCmd(snmpEngine, authData, transportTarget, contextData, + *varBinds, **dict(cbFun=cbFun, cbCtx=cbCtx, + lookupMib=options.get('lookupMib', True))) snmpEngine.transportDispatcher.runDispatcher() @@ -62,15 +56,9 @@ def setCmd(snmpEngine, authData, transportTarget, contextData, cbCtx = {} while True: - cmdgen.setCmd( - snmpEngine, - authData, - transportTarget, - contextData, - *varBinds, - **dict(cbFun=cbFun, cbCtx=cbCtx, - lookupMib=options.get('lookupMib', True)) - ) + cmdgen.setCmd(snmpEngine, authData, transportTarget, contextData, + *varBinds, **dict(cbFun=cbFun, cbCtx=cbCtx, + lookupMib=options.get('lookupMib', True))) snmpEngine.transportDispatcher.runDispatcher() @@ -101,16 +89,13 @@ def nextCmd(snmpEngine, authData, transportTarget, contextData, vbProcessor = CommandGeneratorVarBinds() - initialVars = [ x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds) ] + initialVars = [x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds)] totalRows = totalCalls = 0 while True: - cmdgen.nextCmd(snmpEngine, - authData, - transportTarget, - contextData, - *[ (x[0], Null()) for x in varBinds ], + cmdgen.nextCmd(snmpEngine, authData, transportTarget, contextData, + *[(x[0], Null()) for x in varBinds], **dict(cbFun=cbFun, cbCtx=cbCtx, lookupMib=options.get('lookupMib', True))) @@ -175,8 +160,8 @@ def bulkCmd(snmpEngine, authData, transportTarget, contextData, vbProcessor = CommandGeneratorVarBinds() - initialVars = [ x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds) ] - nullVarBinds = [ False ] * len(initialVars) + initialVars = [x[0] for x in vbProcessor.makeVarBinds(snmpEngine, varBinds)] + nullVarBinds = [False] * len(initialVars) totalRows = totalCalls = 0 stopFlag = False @@ -185,12 +170,9 @@ def bulkCmd(snmpEngine, authData, transportTarget, contextData, if maxRows and totalRows < maxRows: maxRepetitions = min(maxRepetitions, maxRows-totalRows) - cmdgen.bulkCmd(snmpEngine, - authData, - transportTarget, - contextData, + cmdgen.bulkCmd(snmpEngine, authData, transportTarget, contextData, nonRepeaters, maxRepetitions, - *[ (x[0], Null()) for x in varBinds ], + *[(x[0], Null()) for x in varBinds], **dict(cbFun=cbFun, cbCtx=cbCtx, lookupMib=options.get('lookupMib', True))) diff --git a/pysnmp/hlapi/asyncore/sync/compat/ntforg.py b/pysnmp/hlapi/asyncore/sync/compat/ntforg.py index 92b32b33..605b37b4 100644 --- a/pysnmp/hlapi/asyncore/sync/compat/ntforg.py +++ b/pysnmp/hlapi/asyncore/sync/compat/ntforg.py @@ -26,16 +26,9 @@ def sendNotification(snmpEngine, authData, transportTarget, contextData, cbCtx = {} if varBinds: - ntforg.sendNotification( - snmpEngine, - authData, - transportTarget, - contextData, - notifyType, - varBinds, - cbFun, cbCtx, - options.get('lookupMib', True) - ) + ntforg.sendNotification(snmpEngine, authData, transportTarget, + contextData, notifyType, varBinds, + cbFun, cbCtx, options.get('lookupMib', True)) snmpEngine.transportDispatcher.runDispatcher() diff --git a/pysnmp/hlapi/asyncore/sync/ntforg.py b/pysnmp/hlapi/asyncore/sync/ntforg.py index 3902ea9f..1f16e7a4 100644 --- a/pysnmp/hlapi/asyncore/sync/ntforg.py +++ b/pysnmp/hlapi/asyncore/sync/ntforg.py @@ -95,15 +95,9 @@ def sendNotification(snmpEngine, authData, transportTarget, contextData, while True: if varBinds: - ntforg.sendNotification( - snmpEngine, - authData, - transportTarget, - contextData, - notifyType, - varBinds, - cbFun, cbCtx, - lookupMib=options.get('lookupMib', True) + ntforg.sendNotification(snmpEngine, authData, transportTarget, + contextData, notifyType, varBinds, + cbFun, cbCtx, lookupMib=options.get('lookupMib', True) ) snmpEngine.transportDispatcher.runDispatcher() @@ -116,7 +110,7 @@ def sendNotification(snmpEngine, authData, transportTarget, contextData, errorIndication = errorStatus = errorIndex = None varBinds = [] - varBinds = ( yield errorIndication, errorStatus, errorIndex, varBinds ) + varBinds = (yield errorIndication, errorStatus, errorIndex, varBinds) if not varBinds: break diff --git a/pysnmp/hlapi/asyncore/transport.py b/pysnmp/hlapi/asyncore/transport.py index f2b38bbd..75958009 100644 --- a/pysnmp/hlapi/asyncore/transport.py +++ b/pysnmp/hlapi/asyncore/transport.py @@ -49,7 +49,7 @@ class UdpTransportTarget(AbstractTransportTarget): socket.SOCK_DGRAM, socket.IPPROTO_UDP)[0][4][:2] except socket.gaierror: - raise error.PySnmpError('Bad IPv4/UDP transport address %s: %s' % ('@'.join([ str(x) for x in transportAddr ]), sys.exc_info()[1])) + raise error.PySnmpError('Bad IPv4/UDP transport address %s: %s' % ('@'.join([str(x) for x in transportAddr]), sys.exc_info()[1])) class Udp6TransportTarget(AbstractTransportTarget): """Creates UDP/IPv6 configuration entry and initialize socket API if needed. @@ -104,7 +104,7 @@ class Udp6TransportTarget(AbstractTransportTarget): socket.SOCK_DGRAM, socket.IPPROTO_UDP)[0][4][:2] except socket.gaierror: - raise error.PySnmpError('Bad IPv6/UDP transport address %s: %s' % ('@'.join([ str(x) for x in transportAddr ]), sys.exc_info()[1])) + raise error.PySnmpError('Bad IPv6/UDP transport address %s: %s' % ('@'.join([str(x) for x in transportAddr]), sys.exc_info()[1])) class UnixTransportTarget(AbstractTransportTarget): transportDomain = unix.domainName diff --git a/pysnmp/hlapi/auth.py b/pysnmp/hlapi/auth.py index ec73b8fc..246c445d 100644 --- a/pysnmp/hlapi/auth.py +++ b/pysnmp/hlapi/auth.py @@ -76,11 +76,8 @@ class CommunityData: # Autogenerate communityIndex if not specified if communityIndex is None: self.communityIndex = self.securityName = 's%s' % hash( - ( self.communityName, - self.mpModel, - self.contextEngineId, - self.contextName, - self.tag ) + (self.communityName, self.mpModel, self.contextEngineId, + self.contextName, self.tag) ) else: self.communityIndex = communityIndex diff --git a/pysnmp/hlapi/lcd.py b/pysnmp/hlapi/lcd.py index 9fa078fa..f6cfbf45 100644 --- a/pysnmp/hlapi/lcd.py +++ b/pysnmp/hlapi/lcd.py @@ -3,7 +3,7 @@ from pysnmp import nextid, error from pysnmp.hlapi.auth import * __all__ = ['CommandGeneratorLcdConfigurator', - 'NotificationOriginatorLcdConfigurator' ] + 'NotificationOriginatorLcdConfigurator'] class AbstractLcdConfigurator: nextID = nextid.Integer(0xffffffff) @@ -12,7 +12,7 @@ class AbstractLcdConfigurator: cacheId = self.__class__.__name__ cache = snmpEngine.getUserContext(cacheId) if cache is None: - cache = dict([(x,{}) for x in self.cacheKeys]) + cache = dict([(x, {}) for x in self.cacheKeys]) snmpEngine.setUserContext(**{cacheId: cache}) return cache @@ -82,10 +82,9 @@ class CommandGeneratorLcdConfigurator(AbstractLcdConfigurator): ) cache['tran'][transportTarget.transportDomain] = transport, 1 - transportKey = ( paramsName, - transportTarget.transportDomain, - transportTarget.transportAddr, - transportTarget.tagList ) + transportKey = (paramsName, transportTarget.transportDomain, + transportTarget.transportAddr, + transportTarget.tagList) if transportKey in cache['addr']: addrName, useCount = cache['addr'][transportKey] @@ -115,7 +114,7 @@ class CommandGeneratorLcdConfigurator(AbstractLcdConfigurator): else: raise error.PySnmpError('Unsupported authentication object') if authDataKey in cache['auth']: - authDataKeys = ( authDataKey, ) + authDataKeys = (authDataKey,) else: raise error.PySnmpError('Unknown authData %s' % (authData,)) else: @@ -157,7 +156,7 @@ class CommandGeneratorLcdConfigurator(AbstractLcdConfigurator): else: raise error.PySnmpError('Unknown target %s' % (paramsKey,)) - addrKeys = [ x for x in cache['addr'] if x[0] == paramsName ] + addrKeys = [x for x in cache['addr'] if x[0] == paramsName] for addrKey in addrKeys: addrName, useCount = cache['addr'][addrKey] @@ -219,14 +218,10 @@ class NotificationOriginatorLcdConfigurator(AbstractLcdConfigurator): authDataX, subTree, useCount = cache['auth'][authDataKey] cache['auth'][authDataKey] = authDataX, subTree, useCount + 1 else: - subTree = (1,3,6) - config.addTrapUser( - snmpEngine, - authData.securityModel, - authData.securityName, - authData.securityLevel, - subTree - ) + subTree = (1, 3, 6) + config.addTrapUser(snmpEngine, authData.securityModel, + authData.securityName, authData.securityLevel, + subTree) cache['auth'][authDataKey] = authData, subTree, 1 return notifyName @@ -236,7 +231,7 @@ class NotificationOriginatorLcdConfigurator(AbstractLcdConfigurator): if authData: authDataKey = authData.securityName, authData.securityModel if authDataKey in cache['auth']: - authDataKeys = ( authDataKey, ) + authDataKeys = (authDataKey,) else: raise error.PySnmpError('Unknown authData %s' % (authData,)) else: @@ -244,7 +239,7 @@ class NotificationOriginatorLcdConfigurator(AbstractLcdConfigurator): addrNames, paramsNames = self._cmdGenLcdCfg.unconfigure(snmpEngine, authData) - notifyAndParamsNames = [ (cache['name'][x], x) for x in cache['name'].keys() if x[0] in paramsNames ] + notifyAndParamsNames = [(cache['name'][x], x) for x in cache['name'].keys() if x[0] in paramsNames] for (notifyName, paramsName, useCount), notifyNameKey in notifyAndParamsNames: useCount -= 1 @@ -263,11 +258,8 @@ class NotificationOriginatorLcdConfigurator(AbstractLcdConfigurator): cache['auth'][authDataKey] = authDataX, subTree, useCount else: config.delTrapUser( - snmpEngine, - authDataX.securityModel, - authDataX.securityName, - authDataX.securityLevel, + snmpEngine, authDataX.securityModel, + authDataX.securityName, authDataX.securityLevel, subTree ) del cache['auth'][authDataKey] - diff --git a/pysnmp/hlapi/twisted/cmdgen.py b/pysnmp/hlapi/twisted/cmdgen.py index b7265d93..b4a9d157 100644 --- a/pysnmp/hlapi/twisted/cmdgen.py +++ b/pysnmp/hlapi/twisted/cmdgen.py @@ -114,19 +114,14 @@ def getCmd(snmpEngine, authData, transportTarget, contextData, vbProcessor.unmakeVarBinds(snmpEngine, varBinds, lookupMib)) ) - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) deferred = Deferred() cmdgen.GetCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, + snmpEngine, addrName, contextData.contextEngineId, contextData.contextName, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, + vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), deferred) ) return deferred @@ -230,19 +225,14 @@ def setCmd(snmpEngine, authData, transportTarget, contextData, vbProcessor.unmakeVarBinds(snmpEngine, varBinds, lookupMib)) ) - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) deferred = Deferred() cmdgen.SetCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, + snmpEngine, addrName, contextData.contextEngineId, contextData.contextName, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, + vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), deferred) ) return deferred @@ -347,22 +337,17 @@ def nextCmd(snmpEngine, authData, transportTarget, contextData, else: deferred.callback( (errorStatus, errorIndex, - [ vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable ]) + [vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable]) ) - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) deferred = Deferred() cmdgen.NextCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, + snmpEngine, addrName, contextData.contextEngineId, contextData.contextName, - vbProcessor.makeVarBinds(snmpEngine, varBinds), - __cbFun, + vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), deferred) ) return deferred @@ -478,22 +463,16 @@ def bulkCmd(snmpEngine, authData, transportTarget, contextData, else: deferred.callback( (errorStatus, errorIndex, - [ vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable ]) + [vbProcessor.unmakeVarBinds(snmpEngine, varBindTableRow, lookupMib) for varBindTableRow in varBindTable]) ) - addrName, paramsName = lcd.configure( - snmpEngine, authData, transportTarget - ) + addrName, paramsName = lcd.configure(snmpEngine, authData, transportTarget) deferred = Deferred() cmdgen.BulkCommandGenerator().sendVarBinds( - snmpEngine, - addrName, - contextData.contextEngineId, - contextData.contextName, - nonRepeaters, - maxRepetitions, + snmpEngine, addrName, contextData.contextEngineId, + contextData.contextName, nonRepeaters, maxRepetitions, vbProcessor.makeVarBinds(snmpEngine, varBinds), __cbFun, (options.get('lookupMib', True), deferred) diff --git a/pysnmp/hlapi/twisted/transport.py b/pysnmp/hlapi/twisted/transport.py index b8b0c7d5..1af1d2df 100644 --- a/pysnmp/hlapi/twisted/transport.py +++ b/pysnmp/hlapi/twisted/transport.py @@ -49,4 +49,4 @@ class UdpTransportTarget(AbstractTransportTarget): socket.SOCK_DGRAM, socket.IPPROTO_UDP)[0][4][:2] except socket.gaierror: - raise PySnmpError('Bad IPv4/UDP transport address %s: %s' % ('@'.join([ str(x) for x in transportAddr ]), sys.exc_info()[1])) + raise PySnmpError('Bad IPv4/UDP transport address %s: %s' % ('@'.join([str(x) for x in transportAddr]), sys.exc_info()[1])) diff --git a/pysnmp/hlapi/varbinds.py b/pysnmp/hlapi/varbinds.py index 90b92bcb..420ba942 100644 --- a/pysnmp/hlapi/varbinds.py +++ b/pysnmp/hlapi/varbinds.py @@ -34,7 +34,7 @@ class CommandGeneratorVarBinds(AbstractVarBinds): def unmakeVarBinds(self, snmpEngine, varBinds, lookupMib=True): if lookupMib: mibViewController = self.getMibViewController(snmpEngine) - varBinds = [ ObjectType(ObjectIdentity(x[0]), x[1]).resolveWithMib(mibViewController) for x in varBinds ] + varBinds = [ObjectType(ObjectIdentity(x[0]), x[1]).resolveWithMib(mibViewController) for x in varBinds] return varBinds @@ -57,6 +57,6 @@ class NotificationOriginatorVarBinds(AbstractVarBinds): def unmakeVarBinds(self, snmpEngine, varBinds, lookupMib=False): if lookupMib: mibViewController = self.getMibViewController(snmpEngine) - varBinds = [ ObjectType(ObjectIdentity(x[0]), x[1]).resolveWithMib(mibViewController) for x in varBinds ] + varBinds = [ObjectType(ObjectIdentity(x[0]), x[1]).resolveWithMib(mibViewController) for x in varBinds] return varBinds diff --git a/pysnmp/proto/acmod/rfc3415.py b/pysnmp/proto/acmod/rfc3415.py index bcbb9bba..5538800e 100644 --- a/pysnmp/proto/acmod/rfc3415.py +++ b/pysnmp/proto/acmod/rfc3415.py @@ -95,7 +95,7 @@ class Vacm: if vacmViewTreeFamilyMask.syntax: mask = [] for c in vacmViewTreeFamilyMask.syntax.asNumbers(): - mask = mask + [ b&c for b in __powOfTwoSeq ] + mask = mask + [b&c for b in __powOfTwoSeq] m = len(mask)-1 idx = l-1 while idx: diff --git a/pysnmp/proto/api/__init__.py b/pysnmp/proto/api/__init__.py index f6e4bae9..47782bf2 100644 --- a/pysnmp/proto/api/__init__.py +++ b/pysnmp/proto/api/__init__.py @@ -3,6 +3,6 @@ from pysnmp.proto.api import v1, v2c, verdec # Protocol versions protoVersion1 = 0 protoVersion2c = 1 -protoModules = { protoVersion1: v1, protoVersion2c: v2c } +protoModules = {protoVersion1: v1, protoVersion2c: v2c} decodeMessageVersion = verdec.decodeMessageVersion diff --git a/pysnmp/proto/api/v1.py b/pysnmp/proto/api/v1.py index a7618784..2dbb7c94 100644 --- a/pysnmp/proto/api/v1.py +++ b/pysnmp/proto/api/v1.py @@ -133,7 +133,7 @@ apiPDU = PDUAPI() class TrapPDUAPI: _networkAddress = None - _entOid = ObjectIdentifier((1,3,6,1,4,1,20408)) + _entOid = ObjectIdentifier((1, 3, 6, 1, 4, 1, 20408)) _genericTrap = rfc1157._genericTrap.clone('coldStart') _zeroInt = univ.Integer(0) _zeroTime = TimeTicks(0) @@ -147,7 +147,7 @@ class TrapPDUAPI: self._networkAddress = NetworkAddress().setComponentByPosition(0, agentAddress) pdu.setComponentByPosition(0, self._entOid, verifyConstraints=False) pdu.setComponentByPosition(1, self._networkAddress, verifyConstraints=False) - pdu.setComponentByPosition(2, self._genericTrap,verifyConstraints=False) + pdu.setComponentByPosition(2, self._genericTrap, verifyConstraints=False) pdu.setComponentByPosition(3, self._zeroInt, verifyConstraints=False) pdu.setComponentByPosition(4, self._zeroTime, verifyConstraints=False) pdu.setComponentByPosition(5) diff --git a/pysnmp/proto/api/v2c.py b/pysnmp/proto/api/v2c.py index 5dbb1beb..807d1b06 100644 --- a/pysnmp/proto/api/v2c.py +++ b/pysnmp/proto/api/v2c.py @@ -92,8 +92,8 @@ class BulkPDUAPI(PDUAPI): def getMaxRepetitions(self, pdu): return pdu.getComponentByPosition(2) - def setMaxRepetitions(self,pdu,value): - pdu.setComponentByPosition(2,value) + def setMaxRepetitions(self, pdu, value): + pdu.setComponentByPosition(2, value) def getVarBindTable(self, reqPDU, rspPDU): nonRepeaters = self.getNonRepeaters(reqPDU) @@ -123,13 +123,13 @@ class BulkPDUAPI(PDUAPI): apiBulkPDU = BulkPDUAPI() class TrapPDUAPI(v1.PDUAPI): - sysUpTime = (1,3,6,1,2,1,1,3,0) - snmpTrapAddress = (1,3,6,1,6,3,18,1,3,0) - snmpTrapCommunity = (1,3,6,1,6,3,18,1,4,0) - snmpTrapOID = (1,3,6,1,6,3,1,1,4,1,0) - snmpTrapEnterprise = (1,3,6,1,6,3,1,1,4,3,0) + sysUpTime = (1, 3, 6, 1, 2, 1, 1, 3, 0) + snmpTrapAddress = (1, 3, 6, 1, 6, 3, 18, 1, 3, 0) + snmpTrapCommunity = (1, 3, 6, 1, 6, 3, 18, 1, 4, 0) + snmpTrapOID = (1, 3, 6, 1, 6, 3, 1, 1, 4, 1, 0) + snmpTrapEnterprise = (1, 3, 6, 1, 6, 3, 1, 1, 4, 3, 0) _zeroTime = TimeTicks(0) - _genTrap = ObjectIdentifier((1,3,6,1,6,3,1,1,5,1)) + _genTrap = ObjectIdentifier((1, 3, 6, 1, 6, 3, 1, 1, 5, 1)) def setDefaults(self, pdu): v1.PDUAPI.setDefaults(self, pdu) varBinds = [(self.sysUpTime, self._zeroTime), diff --git a/pysnmp/proto/proxy/rfc2576.py b/pysnmp/proto/proxy/rfc2576.py index 7ba050bd..61110656 100644 --- a/pysnmp/proto/proxy/rfc2576.py +++ b/pysnmp/proto/proxy/rfc2576.py @@ -51,21 +51,21 @@ __v2ToV1PduMap = { # Trap map __v1ToV2TrapMap = { - 0: (1,3,6,1,6,3,1,1,5,1), - 1: (1,3,6,1,6,3,1,1,5,2), - 2: (1,3,6,1,6,3,1,1,5,3), - 3: (1,3,6,1,6,3,1,1,5,4), - 4: (1,3,6,1,6,3,1,1,5,5), - 5: (1,3,6,1,6,3,1,1,5,6) + 0: (1, 3, 6, 1, 6, 3, 1, 1, 5, 1), + 1: (1, 3, 6, 1, 6, 3, 1, 1, 5, 2), + 2: (1, 3, 6, 1, 6, 3, 1, 1, 5, 3), + 3: (1, 3, 6, 1, 6, 3, 1, 1, 5, 4), + 4: (1, 3, 6, 1, 6, 3, 1, 1, 5, 5), + 5: (1, 3, 6, 1, 6, 3, 1, 1, 5, 6) } __v2ToV1TrapMap = { - (1,3,6,1,6,3,1,1,5,1): 0, - (1,3,6,1,6,3,1,1,5,2): 1, - (1,3,6,1,6,3,1,1,5,3): 2, - (1,3,6,1,6,3,1,1,5,4): 3, - (1,3,6,1,6,3,1,1,5,5): 4, - (1,3,6,1,6,3,1,1,5,6): 5 + (1, 3, 6, 1, 6, 3, 1, 1, 5, 1): 0, + (1, 3, 6, 1, 6, 3, 1, 1, 5, 2): 1, + (1, 3, 6, 1, 6, 3, 1, 1, 5, 3): 2, + (1, 3, 6, 1, 6, 3, 1, 1, 5, 4): 3, + (1, 3, 6, 1, 6, 3, 1, 1, 5, 5): 4, + (1, 3, 6, 1, 6, 3, 1, 1, 5, 6): 5 } # 4.3 diff --git a/pysnmp/proto/rfc1157.py b/pysnmp/proto/rfc1157.py index 9b147d36..2b584b75 100644 --- a/pysnmp/proto/rfc1157.py +++ b/pysnmp/proto/rfc1157.py @@ -63,7 +63,7 @@ class PDUs(univ.Choice): namedtype.NamedType('trap', TrapPDU()) ) -_version = univ.Integer(namedValues = namedval.NamedValues(('version-1', 0))) +_version = univ.Integer(namedValues=namedval.NamedValues(('version-1', 0))) class Message(univ.Sequence): componentType = namedtype.NamedTypes( diff --git a/pysnmp/proto/rfc1901.py b/pysnmp/proto/rfc1901.py index 48f55a61..86e757d0 100644 --- a/pysnmp/proto/rfc1901.py +++ b/pysnmp/proto/rfc1901.py @@ -1,7 +1,7 @@ from pyasn1.type import univ, namedtype, namedval from pysnmp.proto import rfc1905 -_version = univ.Integer(namedValues = namedval.NamedValues(('version-2c', 1))) +_version = univ.Integer(namedValues=namedval.NamedValues(('version-2c', 1))) class Message(univ.Sequence): componentType = namedtype.NamedTypes( diff --git a/pysnmp/proto/rfc1902.py b/pysnmp/proto/rfc1902.py index 229f29eb..76052cf7 100644 --- a/pysnmp/proto/rfc1902.py +++ b/pysnmp/proto/rfc1902.py @@ -617,7 +617,7 @@ class Bits(OctetString): names.append(name) j -= 1 i += 1 - return ', '.join([ str(x) for x in names ]) + return ', '.join([str(x) for x in names]) def clone(self, value=None, tagSet=None, subtypeSpec=None, encoding=None, binValue=None, hexValue=None, diff --git a/pysnmp/proto/secmod/eso/priv/des3.py b/pysnmp/proto/secmod/eso/priv/des3.py index 76f0a086..8a48d444 100644 --- a/pysnmp/proto/secmod/eso/priv/des3.py +++ b/pysnmp/proto/secmod/eso/priv/des3.py @@ -82,11 +82,11 @@ class Des3(base.AbstractEncryptionService): return des3Key.asOctets(), \ univ.OctetString(salt).asOctets(), \ - univ.OctetString(map(lambda x,y:x^y, salt, preIV.asNumbers())).asOctets() + univ.OctetString(map(lambda x, y: x^y, salt, preIV.asNumbers())).asOctets() def __getDecryptionKey(self, privKey, salt): return privKey[:24].asOctets(), \ - univ.OctetString(map(lambda x,y:x^y, salt.asNumbers(), privKey[24:32].asNumbers())).asOctets() + univ.OctetString(map(lambda x, y: x^y, salt.asNumbers(), privKey[24:32].asNumbers())).asOctets() # 5.1.1.2 def encryptData(self, encryptKey, privParameters, dataToEncrypt): @@ -105,12 +105,12 @@ class Des3(base.AbstractEncryptionService): privParameters = univ.OctetString(salt) - plaintext = dataToEncrypt + univ.OctetString((0,) * (8 - len(dataToEncrypt) % 8)).asOctets() + plaintext = dataToEncrypt + univ.OctetString((0,) * (8 - len(dataToEncrypt) % 8)).asOctets() cipherblock = iv ciphertext = null while plaintext: cipherblock = des3Obj.encrypt( - univ.OctetString(map(lambda x,y:x^y, univ.OctetString(cipherblock).asNumbers(), univ.OctetString(plaintext[:8]).asNumbers())).asOctets() + univ.OctetString(map(lambda x, y: x^y, univ.OctetString(cipherblock).asNumbers(), univ.OctetString(plaintext[:8]).asNumbers())).asOctets() ) ciphertext = ciphertext + cipherblock plaintext = plaintext[8:] @@ -143,7 +143,7 @@ class Des3(base.AbstractEncryptionService): ciphertext = encryptedData.asOctets() cipherblock = iv while ciphertext: - plaintext = plaintext + univ.OctetString(map(lambda x,y: x^y, univ.OctetString(cipherblock).asNumbers(), univ.OctetString(des3Obj.decrypt(ciphertext[:8])).asNumbers())).asOctets() + plaintext = plaintext + univ.OctetString(map(lambda x, y: x ^ y, univ.OctetString(cipherblock).asNumbers(), univ.OctetString(des3Obj.decrypt(ciphertext[:8])).asNumbers())).asOctets() cipherblock = ciphertext[:8] ciphertext = ciphertext[8:] diff --git a/pysnmp/proto/secmod/rfc2576.py b/pysnmp/proto/secmod/rfc2576.py index 8d0d0d4d..f7aba191 100644 --- a/pysnmp/proto/secmod/rfc2576.py +++ b/pysnmp/proto/secmod/rfc2576.py @@ -242,7 +242,7 @@ class SnmpV1SecurityModel(base.AbstractSecurityModel): # 5.2.1 (row selection in snmpCommunityTable) # Picks first match but favors entries already in targets table if candidateSecurityNames: - candidateSecurityNames.sort(key=lambda x,m=self.__nameToModelMap,v=self.securityModelID: (not int(x[0] in m and v in m[x[0]]), str(x[0]))) + candidateSecurityNames.sort(key=lambda x, m=self.__nameToModelMap, v=self.securityModelID: (not int(x[0] in m and v in m[x[0]]), str(x[0]))) chosenSecurityName = candidateSecurityNames[0] # min() debug.logger & debug.flagSM and debug.logger('_com2sec: securityName candidates for communityName \'%s\' are %s; choosing securityName \'%s\'' % (communityName, candidateSecurityNames, chosenSecurityName[0])) return chosenSecurityName diff --git a/pysnmp/proto/secmod/rfc3414/auth/hmacmd5.py b/pysnmp/proto/secmod/rfc3414/auth/hmacmd5.py index a6779352..97b1c7e0 100644 --- a/pysnmp/proto/secmod/rfc3414/auth/hmacmd5.py +++ b/pysnmp/proto/secmod/rfc3414/auth/hmacmd5.py @@ -45,14 +45,14 @@ class HmacMd5(base.AbstractAuthenticationService): # 6.3.1.2c k1 = univ.OctetString( - map(lambda x,y: x^y, extendedAuthKey, self.__ipad) - ) + map(lambda x, y: x^y, extendedAuthKey, self.__ipad) + ) # 6.3.1.2d --> noop # 6.3.1.2e k2 = univ.OctetString( - map(lambda x,y: x^y, extendedAuthKey, self.__opad) + map(lambda x, y: x^y, extendedAuthKey, self.__opad) ) # 6.3.1.3 @@ -88,14 +88,14 @@ class HmacMd5(base.AbstractAuthenticationService): # 6.3.2.4c k1 = univ.OctetString( - map(lambda x,y: x^y, extendedAuthKey, self.__ipad) + map(lambda x, y: x^y, extendedAuthKey, self.__ipad) ) # 6.3.2.4d --> noop # 6.3.2.4e k2 = univ.OctetString( - map(lambda x,y: x^y, extendedAuthKey, self.__opad) + map(lambda x, y: x^y, extendedAuthKey, self.__opad) ) # 6.3.2.5a diff --git a/pysnmp/proto/secmod/rfc3414/auth/hmacsha.py b/pysnmp/proto/secmod/rfc3414/auth/hmacsha.py index 3006e550..2e1298a4 100644 --- a/pysnmp/proto/secmod/rfc3414/auth/hmacsha.py +++ b/pysnmp/proto/secmod/rfc3414/auth/hmacsha.py @@ -44,14 +44,14 @@ class HmacSha(base.AbstractAuthenticationService): # 7.3.1.2c k1 = univ.OctetString( - map(lambda x,y: x^y, extendedAuthKey, self.__ipad) + map(lambda x, y: x^y, extendedAuthKey, self.__ipad) ) # 7.3.1.2d -- noop # 7.3.1.2e k2 = univ.OctetString( - map(lambda x,y: x^y, extendedAuthKey, self.__opad) + map(lambda x, y: x^y, extendedAuthKey, self.__opad) ) # 7.3.1.3 @@ -87,14 +87,14 @@ class HmacSha(base.AbstractAuthenticationService): # 7.3.2.4c k1 = univ.OctetString( - map(lambda x,y: x^y, extendedAuthKey, self.__ipad) + map(lambda x, y: x^y, extendedAuthKey, self.__ipad) ) # 7.3.2.4d --> noop # 7.3.2.4e k2 = univ.OctetString( - map(lambda x,y: x^y, extendedAuthKey, self.__opad) + map(lambda x, y: x^y, extendedAuthKey, self.__opad) ) # 7.3.2.5a diff --git a/pysnmp/proto/secmod/rfc3414/priv/des.py b/pysnmp/proto/secmod/rfc3414/priv/des.py index 39b66aaa..19057492 100644 --- a/pysnmp/proto/secmod/rfc3414/priv/des.py +++ b/pysnmp/proto/secmod/rfc3414/priv/des.py @@ -61,15 +61,15 @@ class Des(base.AbstractEncryptionService): if self._localInt == 0xffffffff: self._localInt = 0 else: - self._localInt = self._localInt + 1 + self._localInt += 1 return (desKey.asOctets(), univ.OctetString(salt).asOctets(), - univ.OctetString(map(lambda x,y:x^y,salt,preIV.asNumbers())).asOctets()) + univ.OctetString(map(lambda x, y: x^y, salt, preIV.asNumbers())).asOctets()) def __getDecryptionKey(self, privKey, salt): return (privKey[:8].asOctets(), - univ.OctetString(map(lambda x,y:x^y, salt.asNumbers(), privKey[8:16].asNumbers())).asOctets()) + univ.OctetString(map(lambda x, y: x^y, salt.asNumbers(), privKey[8:16].asNumbers())).asOctets()) # 8.2.4.1 def encryptData(self, encryptKey, privParameters, dataToEncrypt): @@ -90,7 +90,7 @@ class Des(base.AbstractEncryptionService): # 8.1.1.2 desObj = DES.new(desKey, DES.MODE_CBC, iv) - plaintext = dataToEncrypt + univ.OctetString((0,) * (8 - len(dataToEncrypt) % 8)).asOctets() + plaintext = dataToEncrypt + univ.OctetString((0,) * (8 - len(dataToEncrypt) % 8)).asOctets() ciphertext = desObj.encrypt(plaintext) # 8.3.1.3 & 4 diff --git a/pysnmp/proto/secmod/rfc3414/service.py b/pysnmp/proto/secmod/rfc3414/service.py index bf244b92..8445bd29 100644 --- a/pysnmp/proto/secmod/rfc3414/service.py +++ b/pysnmp/proto/secmod/rfc3414/service.py @@ -35,7 +35,7 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): aes.Aes.serviceID: aes.Aes(), aes192.Aes192.serviceID: aes192.Aes192(), aes256.Aes256.serviceID: aes256.Aes256(), - nopriv.NoPriv.serviceID: nopriv.NoPriv() } + nopriv.NoPriv.serviceID: nopriv.NoPriv()} def __init__(self): AbstractSecurityModel.__init__(self) self.__securityParametersSpec = UsmSecurityParameters() @@ -44,7 +44,7 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): self.__expirationTimer = 0 self.__paramsBranchId = -1 - def __sec2usr(self, snmpEngine, securityName, securityEngineID=None): + def __sec2usr(self, snmpEngine, securityName, securityEngineID=None): usmUserEngineID, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('SNMP-USER-BASED-SM-MIB', 'usmUserEngineID') if self.__paramsBranchId != usmUserEngineID.branchVersionId: usmUserName, usmUserSecurityName = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('SNMP-USER-BASED-SM-MIB', 'usmUserName', 'usmUserSecurityName') @@ -167,7 +167,7 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): securityEngineID) else: raise error.StatusInformation( - errorIndication = errind.unsupportedAuthProtocol + errorIndication=errind.unsupportedAuthProtocol ) if localAuthKey is not None: pysnmpUsmKeyAuthLocalized.syntax = pysnmpUsmKeyAuthLocalized.syntax.clone(localAuthKey) @@ -226,7 +226,7 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): try: (usmUserName, usmUserSecurityName, usmUserAuthProtocol, usmUserAuthKeyLocalized, usmUserPrivProtocol, - usmUserPrivKeyLocalized ) = self.__getUserInfo( + usmUserPrivKeyLocalized) = self.__getUserInfo( snmpEngine.msgAndPduDsp.mibInstrumController, securityEngineID, self.__sec2usr(snmpEngine, securityName, securityEngineID) @@ -739,7 +739,7 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): if msgAuthoritativeEngineID in self.__timeline: (snmpEngineBoots, snmpEngineTime, latestReceivedEngineTime, - latestUpdateTimestamp ) = self.__timeline[ + latestUpdateTimestamp) = self.__timeline[ msgAuthoritativeEngineID ] # time passed since last talk with this SNMP engine diff --git a/pysnmp/smi/builder.py b/pysnmp/smi/builder.py index aa2f626c..7792d74d 100644 --- a/pysnmp/smi/builder.py +++ b/pysnmp/smi/builder.py @@ -135,15 +135,15 @@ class ZipMibSource(__AbstractMibSource): return DirMibSource(self._srcName).init() def _parseDosTime(self, dosdate, dostime): - t = ( ((dosdate >> 9) & 0x7f) + 1980, # year - ((dosdate >> 5) & 0x0f), # month - dosdate & 0x1f, # mday - (dostime >> 11) & 0x1f, # hour - (dostime >> 5) & 0x3f, # min - (dostime & 0x1f) * 2, # sec - -1, # wday - -1, # yday - -1 ) # dst + t = (((dosdate >> 9) & 0x7f) + 1980, # year + ((dosdate >> 5) & 0x0f), # month + dosdate & 0x1f, # mday + (dostime >> 11) & 0x1f, # hour + (dostime >> 5) & 0x3f, # min + (dostime & 0x1f) * 2, # sec + -1, # wday + -1, # yday + -1) # dst return time.mktime(t) def _listdir(self): @@ -158,9 +158,8 @@ class ZipMibSource(__AbstractMibSource): p = os.path.join(self._srcName, f) if p in self.__loader._files: return self._parseDosTime( - self.__loader._files[p][6], - self.__loader._files[p][5] - ) + self.__loader._files[p][6], self.__loader._files[p][5] + ) else: raise IOError(ENOENT, 'No such file in ZIP archive', p) @@ -243,12 +242,12 @@ class MibBuilder: # MIB modules management def addMibSources(self, *mibSources): - self.__mibSources.extend([ s.init() for s in mibSources ]) + self.__mibSources.extend([s.init() for s in mibSources]) debug.logger & debug.flagBld and debug.logger('addMibSources: new MIB sources %s' % (self.__mibSources,)) def setMibSources(self, *mibSources): - self.__mibSources = [ s.init() for s in mibSources ] + self.__mibSources = [s.init() for s in mibSources] debug.logger & debug.flagBld and debug.logger('setMibSources: new MIB sources %s' % (self.__mibSources,)) def getMibSources(self): @@ -256,17 +255,17 @@ class MibBuilder: # Legacy/compatibility methods (won't work for .eggs) def setMibPath(self, *mibPaths): - self.setMibSources(*[ DirMibSource(x) for x in mibPaths ]) + self.setMibSources(*[DirMibSource(x) for x in mibPaths]) def getMibPath(self): paths = () for mibSource in self.getMibSources(): if isinstance(mibSource, DirMibSource): - paths += ( mibSource.fullPath(), ) + paths += (mibSource.fullPath(),) else: raise error.MibLoadError( 'MIB source is not a plain directory: %s' % (mibSource,) - ) + ) return paths def loadModule(self, modName, **userCtx): @@ -288,16 +287,16 @@ class MibBuilder: debug.logger & debug.flagBld and debug.logger('loadModule: evaluating %s' % modPath) - g = { 'mibBuilder': self, - 'userCtx': userCtx } + g = {'mibBuilder': self, 'userCtx': userCtx} try: exec(modData, g) + except Exception: del self.__modPathsSeen[modPath] raise error.MibLoadError( 'MIB module \"%s\" load error: %s' % (modPath, traceback.format_exception(*sys.exc_info())) - ) + ) self.__modSeen[modName] = modPath @@ -347,7 +346,7 @@ class MibBuilder: if modName not in self.mibSymbols: raise error.MibNotFoundError( 'No module %s at %s' % (modName, self) - ) + ) self.unexportSymbols(modName) del self.__modPathsSeen[self.__modSeen[modName]] del self.__modSeen[modName] @@ -368,11 +367,11 @@ class MibBuilder: if modName not in self.mibSymbols: raise error.MibNotFoundError( 'No module %s loaded at %s' % (modName, self) - ) + ) if symName not in self.mibSymbols[modName]: raise error.SmiError( 'No symbol %s::%s at %s' % (modName, symName, self) - ) + ) r = r + (self.mibSymbols[modName][symName],) return r @@ -389,7 +388,7 @@ class MibBuilder: if symName in mibSymbols: raise error.SmiError( 'Symbol %s already exported at %s' % (symName, modName) - ) + ) if symName != self.moduleID and \ not isinstance(symObj, classTypes): @@ -407,9 +406,7 @@ class MibBuilder: def unexportSymbols(self, modName, *symNames): if modName not in self.mibSymbols: - raise error.SmiError( - 'No module %s at %s' % (modName, self) - ) + raise error.SmiError('No module %s at %s' % (modName, self)) mibSymbols = self.mibSymbols[modName] if not symNames: symNames = list(mibSymbols.keys()) @@ -417,7 +414,7 @@ class MibBuilder: if symName not in mibSymbols: raise error.SmiError( 'No symbol %s::%s at %s' % (modName, symName, self) - ) + ) del mibSymbols[symName] debug.logger & debug.flagBld and debug.logger('unexportSymbols: symbol %s::%s' % (modName, symName)) diff --git a/pysnmp/smi/compiler.py b/pysnmp/smi/compiler.py index 0f62c0dc..3bd59019 100644 --- a/pysnmp/smi/compiler.py +++ b/pysnmp/smi/compiler.py @@ -5,8 +5,7 @@ import os import sys -defaultSources = [ 'file:///usr/share/snmp/mibs', - 'file:///usr/share/mibs' ] +defaultSources = ['file:///usr/share/snmp/mibs', 'file:///usr/share/mibs'] if sys.platform[:3] == 'win': defaultDest = os.path.join(os.path.expanduser("~"), @@ -40,25 +39,16 @@ else: if kwargs.get('ifNotAdded') and mibBuilder.getMibCompiler(): return - compiler = MibCompiler( - parserFactory(**smiV1Relaxed)(), - PySnmpCodeGen(), - PyFileWriter(kwargs.get('destination') or defaultDest) - ) + compiler = MibCompiler(parserFactory(**smiV1Relaxed)(), + PySnmpCodeGen(), + PyFileWriter(kwargs.get('destination') or defaultDest)) compiler.addSources(*getReadersFromUrls(*kwargs.get('sources') or defaultSources)) - compiler.addSearchers( - StubSearcher(*baseMibs) # XXX - ) - compiler.addSearchers( - *[ PyPackageSearcher(x.fullPath()) for x in mibBuilder.getMibSources() ] - ) - compiler.addBorrowers( - *[ PyFileBorrower(x, genTexts=mibBuilder.loadTexts) for x in getReadersFromUrls(*kwargs.get('borrowers') or defaultBorrowers, **dict(lowcaseMatching=False)) ] - ) + compiler.addSearchers(StubSearcher(*baseMibs)) + compiler.addSearchers(*[PyPackageSearcher(x.fullPath()) for x in mibBuilder.getMibSources()]) + compiler.addBorrowers(*[PyFileBorrower(x, genTexts=mibBuilder.loadTexts) for x in getReadersFromUrls(*kwargs.get('borrowers') or defaultBorrowers, **dict(lowcaseMatching=False))]) mibBuilder.setMibCompiler( compiler, kwargs.get('destination') or defaultDest ) - diff --git a/pysnmp/smi/indices.py b/pysnmp/smi/indices.py index 504a0143..a7fddc13 100644 --- a/pysnmp/smi/indices.py +++ b/pysnmp/smi/indices.py @@ -54,7 +54,7 @@ class OrderedDict(dict): return [(k, self[k]) for k in self.__keys] def update(self, d): - [self.__setitem__(k, v) for k,v in d.items()] + [self.__setitem__(k, v) for k, v in d.items()] def sortingFun(self, keys): keys.sort() @@ -95,7 +95,7 @@ class OidOrderedDict(OrderedDict): if isinstance(key, tuple): self.__keysCache[key] = key else: - self.__keysCache[key] = [ int(x) for x in key.split('.') if x ] + self.__keysCache[key] = [int(x) for x in key.split('.') if x] OrderedDict.__setitem__(self, key, value) def __delitem__(self, key): diff --git a/pysnmp/smi/instrum.py b/pysnmp/smi/instrum.py index 080592b1..fe7334eb 100644 --- a/pysnmp/smi/instrum.py +++ b/pysnmp/smi/instrum.py @@ -4,7 +4,7 @@ import traceback from pysnmp.smi import error from pysnmp import debug -__all__ = [ 'AbstractMibInstrumController', 'MibInstrumController' ] +__all__ = ['AbstractMibInstrumController', 'MibInstrumController'] class AbstractMibInstrumController: def readVars(self, vars, acInfo=(None, None)): diff --git a/pysnmp/smi/mibs/SNMPv2-SMI.py b/pysnmp/smi/mibs/SNMPv2-SMI.py index 86380ac3..8bae08cf 100644 --- a/pysnmp/smi/mibs/SNMPv2-SMI.py +++ b/pysnmp/smi/mibs/SNMPv2-SMI.py @@ -33,7 +33,7 @@ Opaque = rfc1902.Opaque Counter64 = rfc1902.Counter64 class ExtUTCTime(OctetString): - subtypeSpec = OctetString.subtypeSpec+ConstraintsUnion(ValueSizeConstraint(11,11), ValueSizeConstraint(13,13)) + subtypeSpec = OctetString.subtypeSpec+ConstraintsUnion(ValueSizeConstraint(11, 11), ValueSizeConstraint(13, 13)) # MIB tree foundation class @@ -113,7 +113,7 @@ MODULE-IDENTITY\n\ self.getOrganization(), self.getContactInfo(), self.getDescription(), - ''.join([ "REVISION \"%s\"\n" % x for x in self.getRevisions() ])) + ''.join(["REVISION \"%s\"\n" % x for x in self.getRevisions()])) class ObjectIdentity(MibNode): def getStatus(self): @@ -185,10 +185,10 @@ NOTIFICATION-TYPE\n\ STATUS %s\n\ DESCRIPTION \"%s\"\n\ %s\ -' % (', '.join([ x for x in self.getObjects() ]), +' % (', '.join([x for x in self.getObjects()]), self.getStatus(), self.getDescription(), - ''.join([ "REVISION \"%s\"\n" % x for x in self.getRevisions() ])) + ''.join(["REVISION \"%s\"\n" % x for x in self.getRevisions()])) class MibIdentifier(MibNode): def asn1Print(self): @@ -371,7 +371,7 @@ class MibTree(ObjectType): if name == self.name: if acFun: if self.maxAccess not in ('readonly', - 'readwrite','readcreate') or \ + 'readwrite', 'readcreate') or \ acFun(name, self.syntax, idx, 'read', acCtx): raise error.NoAccessError(idx=idx, name=name) else: @@ -1108,7 +1108,7 @@ class MibTableRow(MibTree): self.branchVersionId += 1 self.__delegate('Cleanup', name, val, idx, acInfo) - def writeUndo(self, name, val, idx, acInfo): + def writeUndo(self, name, val, idx, acInfo): self.__delegate('Undo', name, val, idx, acInfo) # Table row management @@ -1178,7 +1178,7 @@ class MibTable(MibTree): def __init__(self, name): MibTree.__init__(self, name) -zeroDotZero = ObjectIdentity((0,0)) +zeroDotZero = ObjectIdentity((0, 0)) #dot = MibTree() iso = MibTree((1,)) @@ -1202,7 +1202,7 @@ snmpModules = MibIdentifier(snmpV2.name +(3,)) mibBuilder.exportSymbols( 'SNMPv2-SMI', MibNode=MibNode, Integer32=Integer32, Bits=Bits, IpAddress=IpAddress, - Counter32=Counter32, Gauge32=Gauge32, Unsigned32=Unsigned32, + Counter32=Counter32, Gauge32=Gauge32, Unsigned32=Unsigned32, TimeTicks=TimeTicks, Opaque=Opaque, Counter64=Counter64, ExtUTCTime=ExtUTCTime, ModuleIdentity=ModuleIdentity, ObjectIdentity=ObjectIdentity, diff --git a/pysnmp/smi/mibs/SNMPv2-TM.py b/pysnmp/smi/mibs/SNMPv2-TM.py index 0c6c7499..81397d4d 100644 --- a/pysnmp/smi/mibs/SNMPv2-TM.py +++ b/pysnmp/smi/mibs/SNMPv2-TM.py @@ -5,15 +5,15 @@ try: from socket import inet_ntop, inet_pton, AF_INET except ImportError: from socket import inet_ntoa, inet_aton, AF_INET - inet_ntop = lambda x,y: inet_ntoa(y) - inet_pton = lambda x,y: inet_aton(y) + inet_ntop = lambda x, y: inet_ntoa(y) + inet_pton = lambda x, y: inet_aton(y) from pyasn1.compat.octets import int2oct, oct2int -( OctetString, ) = mibBuilder.importSymbols('ASN1', 'OctetString') -( ConstraintsIntersection, ConstraintsUnion, SingleValueConstraint, ValueRangeConstraint, ValueSizeConstraint, ) = mibBuilder.importSymbols("ASN1-REFINEMENT", "ConstraintsIntersection", "ConstraintsUnion", "SingleValueConstraint", "ValueRangeConstraint", "ValueSizeConstraint") -( ModuleIdentity, MibIdentifier, ObjectIdentity, snmpModules, snmpDomains, snmpProxys ) = mibBuilder.importSymbols('SNMPv2-SMI', 'ModuleIdentity', 'MibIdentifier', 'ObjectIdentity', 'snmpModules', 'snmpDomains', 'snmpProxys') -( TextualConvention, ) = mibBuilder.importSymbols('SNMPv2-TC', 'TextualConvention') +(OctetString,) = mibBuilder.importSymbols('ASN1', 'OctetString') +(ConstraintsIntersection, ConstraintsUnion, SingleValueConstraint, ValueRangeConstraint, ValueSizeConstraint) = mibBuilder.importSymbols("ASN1-REFINEMENT", "ConstraintsIntersection", "ConstraintsUnion", "SingleValueConstraint", "ValueRangeConstraint", "ValueSizeConstraint") +(ModuleIdentity, MibIdentifier, ObjectIdentity, snmpModules, snmpDomains, snmpProxys) = mibBuilder.importSymbols('SNMPv2-SMI', 'ModuleIdentity', 'MibIdentifier', 'ObjectIdentity', 'snmpModules', 'snmpDomains', 'snmpProxys') +(TextualConvention,) = mibBuilder.importSymbols('SNMPv2-TC', 'TextualConvention') snmpv2tm = ModuleIdentity(snmpModules.name + (19,)).setRevisions(("2002-10-16 00:00",)) diff --git a/pysnmp/smi/rfc1902.py b/pysnmp/smi/rfc1902.py index 7052d4ce..cf8e5a50 100644 --- a/pysnmp/smi/rfc1902.py +++ b/pysnmp/smi/rfc1902.py @@ -79,7 +79,7 @@ class ObjectIdentity: self.__kwargs = kwargs self.__mibSourcesToAdd = self.__modNamesToLoad = None self.__asn1SourcesToAdd = self.__asn1SourcesOptions = None - self.__state = self.stDirty + self.__state = self.stDirty def getMibSymbol(self): """Returns MIB variable symbolic identification. @@ -290,7 +290,7 @@ class ObjectIdentity: if self.__mibSourcesToAdd is not None: debug.logger & debug.flagMIB and debug.logger('adding MIB sources %s' % ', '.join(self.__mibSourcesToAdd)) mibViewController.mibBuilder.addMibSources( - *[ ZipMibSource(x) for x in self.__mibSourcesToAdd ] + *[ZipMibSource(x) for x in self.__mibSourcesToAdd] ) self.__mibSourcesToAdd = None @@ -352,7 +352,7 @@ class ObjectIdentity: if suffix: try: - suffix = tuple([ int(x) for x in suffix ]) + suffix = tuple([int(x) for x in suffix]) except ValueError: raise SmiError('Unknown object name component %r' % (suffix,)) self.__oid = rfc1902.ObjectName(prefix + suffix) @@ -389,10 +389,10 @@ class ObjectIdentity: self.__indices = rowNode.getIndicesFromInstId(suffix) elif isinstance(mibNode, MibScalar): # scalar if suffix: - self.__indices = ( rfc1902.ObjectName(suffix), ) + self.__indices = (rfc1902.ObjectName(suffix),) else: if suffix: - self.__indices = ( rfc1902.ObjectName(suffix), ) + self.__indices = (rfc1902.ObjectName(suffix),) self.__state |= self.stClean debug.logger & debug.flagMIB and debug.logger('resolved indices are %r' % (self.__indices,)) @@ -448,10 +448,10 @@ class ObjectIdentity: elif self.__args[2:]: # any other kind of MIB node with indices if self.__args[2:]: instId = rfc1902.ObjectName( - '.'.join([ str(x) for x in self.__args[2:] ]) + '.'.join([str(x) for x in self.__args[2:]]) ) self.__oid += instId - self.__indices = ( instId, ) + self.__indices = (instId,) self.__state |= self.stClean debug.logger & debug.flagMIB and debug.logger('resolved indices are %r' % (self.__indices,)) @@ -467,13 +467,13 @@ class ObjectIdentity: self.__modName, self.__symName, self.__indices and '.' or '', '.'.join([x.isSuperTypeOf(s) and '"%s"' % x.prettyPrint() - or x.prettyPrint() for x in self.__indices ]) + or x.prettyPrint() for x in self.__indices]) ) else: raise SmiError('%s object not fully initialized' % self.__class__.__name__) def __repr__(self): - return '%s(%s)' % (self.__class__.__name__, ', '.join([ repr(x) for x in self.__args])) + return '%s(%s)' % (self.__class__.__name__, ', '.join([repr(x) for x in self.__args])) # Redirect some attrs access to the OID object to behave alike @@ -634,7 +634,7 @@ class ObjectType: def __init__(self, objectIdentity, objectSyntax=rfc1905.unSpecified): if not isinstance(objectIdentity, ObjectIdentity): raise SmiError('initializer should be ObjectIdentity instance, not %r' % (objectIdentity,)) - self.__args = [ objectIdentity, objectSyntax ] + self.__args = [objectIdentity, objectSyntax] self.__state = self.stDirty def __getitem__(self, i): @@ -647,7 +647,7 @@ class ObjectType: return self.prettyPrint() def __repr__(self): - return '%s(%s)' % (self.__class__.__name__, ', '.join([ repr(x) for x in self.__args])) + return '%s(%s)' % (self.__class__.__name__, ', '.join([repr(x) for x in self.__args])) def isFullyResolved(self): return self.__state & self.stClean @@ -814,7 +814,7 @@ class NotificationType: self.__objects = objects self.__varBinds = [] self.__additionalVarBinds = [] - self.__state = self.stDirty + self.__state = self.stDirty def __getitem__(self, i): if self.__state & self.stClean: @@ -948,6 +948,6 @@ class NotificationType: def prettyPrint(self): if self.__state & self.stClean: - return ' '.join([ '%s = %s' % (x[0].prettyPrint(), x[1].prettyPrint()) for x in self.__varBinds]) + return ' '.join(['%s = %s' % (x[0].prettyPrint(), x[1].prettyPrint()) for x in self.__varBinds]) else: raise SmiError('%s object not fully initialized' % self.__class__.__name__) diff --git a/pysnmp/smi/view.py b/pysnmp/smi/view.py index df28c2cb..eeb7f8e2 100644 --- a/pysnmp/smi/view.py +++ b/pysnmp/smi/view.py @@ -180,7 +180,7 @@ class MibViewController: nodeName[:-1], oidToLabelIdx, labelToOidIdx ) suffix = suffix + nodeName[-1:] - resLabel = label + tuple([ str(x) for x in suffix ]) + resLabel = label + tuple([str(x) for x in suffix]) if resLabel in labelToOidIdx: return labelToOidIdx[resLabel], resLabel, () resOid = oid + suffix |