diff options
author | elie <elie> | 2013-05-18 13:26:49 +0000 |
---|---|---|
committer | elie <elie> | 2013-05-18 13:26:49 +0000 |
commit | b2d46549dd90a258b763291bf08d0e12f614bf59 (patch) | |
tree | dbbdc8938de9d1e1b7aeef82ead2c20a8bcf53d8 /pysnmp/proto/secmod | |
parent | 2ba0737a5164f6d33da63b8ed35f7d4cab772c4b (diff) | |
download | pysnmp-git-b2d46549dd90a258b763291bf08d0e12f614bf59.tar.gz |
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.
Diffstat (limited to 'pysnmp/proto/secmod')
-rw-r--r-- | pysnmp/proto/secmod/rfc3414/service.py | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/pysnmp/proto/secmod/rfc3414/service.py b/pysnmp/proto/secmod/rfc3414/service.py index 281c491c..bc44b158 100644 --- a/pysnmp/proto/secmod/rfc3414/service.py +++ b/pysnmp/proto/secmod/rfc3414/service.py @@ -98,6 +98,9 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): snmpEngineID.syntax, securityName ) # Get proto protocols + usmUserName = usmUserEntry.getNode( + usmUserEntry.name + (2,) + tblIdx1 + ) usmUserSecurityName = usmUserEntry.getNode( usmUserEntry.name + (3,) + tblIdx1 ) @@ -131,22 +134,28 @@ class SnmpUSMSecurityModel(AbstractSecurityModel): mibInstrumController.writeVars( ((usmUserEntry.name + (13,) + tblIdx2, 4),) ) - # Set protocols + + # Set usernames + usmUserEntry.getNode( + usmUserEntry.name + (2,) + tblIdx2 + ).syntax = usmUserName.syntax usmUserEntry.getNode( usmUserEntry.name + (3,) + tblIdx2 ).syntax = usmUserSecurityName.syntax + + # Store a reference to original row + usmUserEntry.getNode( + usmUserEntry.name + (4,) + tblIdx2 + ).syntax = usmUserCloneFrom.syntax.clone(tblIdx1) + + # Set protocols usmUserEntry.getNode( usmUserEntry.name + (5,) + tblIdx2 ).syntax = usmUserAuthProtocol.syntax usmUserEntry.getNode( usmUserEntry.name + (8,) + tblIdx2 ).syntax = usmUserPrivProtocol.syntax - - # Store a reference to original row - usmUserEntry.getNode( - usmUserEntry.name + (4,) + tblIdx2 - ).syntax = usmUserCloneFrom.syntax.clone(tblIdx1) - + # Localize and set keys pysnmpUsmKeyEntry, = mibInstrumController.mibBuilder.importSymbols( 'PYSNMP-USM-MIB', 'pysnmpUsmKeyEntry' |