diff options
author | elie <elie> | 2005-10-28 23:55:20 +0000 |
---|---|---|
committer | elie <elie> | 2005-10-28 23:55:20 +0000 |
commit | 587575e140f28ff7cb5fa65a45625cbe25e05103 (patch) | |
tree | 5258b2b18c48718f1743c8d9c7eb12ba04766cec | |
parent | 7f364dda6b861d1afaedf7ec0490357029d5c018 (diff) | |
download | pysnmp-587575e140f28ff7cb5fa65a45625cbe25e05103.tar.gz |
use most current specs when indexing by OID
-rw-r--r-- | pysnmp/smi/view.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/pysnmp/smi/view.py b/pysnmp/smi/view.py index 294bc23..fa65a42 100644 --- a/pysnmp/smi/view.py +++ b/pysnmp/smi/view.py @@ -43,6 +43,8 @@ class MibViewController: globMibMod = mibMod continue + __status = {} + # Types & MIB vars indices for n, v in self.mibBuilder.mibSymbols[modName].items(): if type(v) == ClassType: @@ -65,6 +67,13 @@ class MibViewController: if not globMibMod['varToNameIdx'].has_key(n): globMibMod['varToNameIdx'][n] = v.name mibMod['varToNameIdx'][n] = v.name + # Build OID->everything index using most up-to-date spec + if __status.has_key(v.name): + if __status[v.name] == 'current' or \ + __status[v.name] == 'mandatory': + continue + if hasattr(v, 'getStatus'): + __status[v.name] = v.getStatus() if not globMibMod['oidToModIdx'].has_key(v.name): globMibMod['oidToModIdx'][v.name] = modName mibMod['oidToModIdx'][v.name] = modName |