diff options
author | elie <elie> | 2013-05-21 06:03:15 +0000 |
---|---|---|
committer | elie <elie> | 2013-05-21 06:03:15 +0000 |
commit | 20d54b60747b2aa3b103e98a15ff99dad901cf05 (patch) | |
tree | 8f26da8d4dea78a612985c6f741ebe54aec17fd2 | |
parent | 01032dc67fcb188d386c3f807d6ad5c423f895a3 (diff) | |
download | pysnmp-20d54b60747b2aa3b103e98a15ff99dad901cf05.tar.gz |
contextEngineId parameter of auth.UsmUserData() renamed into
securityEngineId as it's semantically correct
-rw-r--r-- | CHANGES | 4 | ||||
-rw-r--r-- | examples/v3arch/oneliner/manager/cmdgen/set-v3-with-custom-contextengineid.py | 2 | ||||
-rw-r--r-- | pysnmp/entity/rfc3413/oneliner/auth.py | 17 | ||||
-rw-r--r-- | pysnmp/entity/rfc3413/oneliner/cmdgen.py | 8 |
4 files changed, 19 insertions, 12 deletions
@@ -38,8 +38,8 @@ Revision 4.2.5rc2 - SNMP credentials management reworked to allow multiple securityNames's in snmpCommunityEntry and usmUserEntry tables. Changes made to addV1System(), addV3User() functions as well as to their oneliner's wrappers. -- The contextEngineId parameter of config.addV3User() renamed into - securityEngineId as it's semantically correct. +- The contextEngineId parameter of config.addV3User() and auth.UsmUserData() + renamed into securityEngineId as it's semantically correct - AsynNotificationOriginator.cfgCmdGen() does not take into account securityModel & securityLevel when reducing LCD access via addTrapUser(). This improves LCD consistency on sparse add/del operatons but also diff --git a/examples/v3arch/oneliner/manager/cmdgen/set-v3-with-custom-contextengineid.py b/examples/v3arch/oneliner/manager/cmdgen/set-v3-with-custom-contextengineid.py index f0c949e..8a5242f 100644 --- a/examples/v3arch/oneliner/manager/cmdgen/set-v3-with-custom-contextengineid.py +++ b/examples/v3arch/oneliner/manager/cmdgen/set-v3-with-custom-contextengineid.py @@ -17,7 +17,7 @@ cmdGen = cmdgen.CommandGenerator() errorIndication, errorStatus, errorIndex, varBinds = cmdGen.setCmd( cmdgen.UsmUserData( 'usr-md5-des', 'authkey1', 'privkey1', - contextEngineId=rfc1902.OctetString(hexValue='8000000004030201') + securityEngineId=rfc1902.OctetString(hexValue='8000000004030201') ), cmdgen.UdpTransportTarget(('demo.snmplabs.com', 161)), (cmdgen.MibVariable('SNMPv2-MIB', 'sysORDescr', 1), 'new system name'), diff --git a/pysnmp/entity/rfc3413/oneliner/auth.py b/pysnmp/entity/rfc3413/oneliner/auth.py index 575f0cb..56333d6 100644 --- a/pysnmp/entity/rfc3413/oneliner/auth.py +++ b/pysnmp/entity/rfc3413/oneliner/auth.py @@ -58,7 +58,10 @@ class UsmUserData: def __init__(self, securityName, authKey=None, privKey=None, authProtocol=None, privProtocol=None, - contextEngineId=None, contextName=None): + securityEngineId=None, + # deprecated parameters follow + contextName=None, + contextEngineId=None): self.securityName = securityName if authKey is not None: @@ -80,7 +83,12 @@ class UsmUserData: else: self.privProtocol = privProtocol - self.contextEngineId = contextEngineId + # the contextEngineId parameter is actually a securityEngineId + if securityEngineId is None: + securityEngineId = contextEngineId + self.contextEngineId = self.securityEngineId = securityEngineId + + # the contextName parameter should never be used here if contextName is not None: self.contextName = contextName @@ -88,11 +96,10 @@ class UsmUserData: raise TypeError('%s is not hashable' % self.__class__.__name__) def __repr__(self): - return '%s("%s", <AUTHKEY>, <PRIVKEY>, %r, %r, %r, %r)' % ( + return '%s("%s", <AUTHKEY>, <PRIVKEY>, %r, %r, %r)' % ( self.__class__.__name__, self.securityName, self.authProtocol, self.privProtocol, - self.contextEngineId, - self.contextName + self.securityEngineId ) diff --git a/pysnmp/entity/rfc3413/oneliner/cmdgen.py b/pysnmp/entity/rfc3413/oneliner/cmdgen.py index 65918df..7566896 100644 --- a/pysnmp/entity/rfc3413/oneliner/cmdgen.py +++ b/pysnmp/entity/rfc3413/oneliner/cmdgen.py @@ -56,14 +56,14 @@ class AsynCommandGenerator: ) self.__knownAuths[authData.communityIndex] = authData elif isinstance(authData, UsmUserData): - authDataKey = authData.securityName, authData.contextEngineId + authDataKey = authData.securityName, authData.securityEngineId if authDataKey not in self.__knownAuths: config.addV3User( self.snmpEngine, authData.securityName, authData.authProtocol, authData.authKey, authData.privProtocol, authData.privKey, - authData.contextEngineId + authData.securityEngineId ) self.__knownAuths[authDataKey] = authData else: @@ -121,7 +121,7 @@ class AsynCommandGenerator: if isinstance(authData, CommunityData): authDataKey = authData.communityIndex elif isinstance(authData, UsmUserData): - authDataKey = authData.securityName, authData.contextEngineId + authDataKey = authData.securityName, authData.securityEngineId else: raise error.PySnmpError('Unsupported authentication object') if authDataKey in self.__knownAuths: @@ -145,7 +145,7 @@ class AsynCommandGenerator: config.delV3User( self.snmpEngine, authDataX.securityName, - authDataX.contextEngineId + authDataX.securityEngineId ) else: raise error.PySnmpError('Unsupported authentication object') |