summaryrefslogtreecommitdiff
path: root/pysnmp/smi
Commit message (Collapse)AuthorAgeFilesLines
* Fix malformed OBJECT-TYPE MAX-ACCESS constantsIlya Etingof2019-08-052-7/+7
|
* Do not store incomplete USM keys and improve debugIlya Etingof2019-08-051-1/+3
| | | | | | | | | | | | | This adds details debugging on USM initial configuration process and runtime USM user cloning. Besides that, this patch eliminates storing of incomplete USM keys (in case when master/localized keys are configured directly). On top of that, this commit fixes a bug in USM configuration which did not allow the same user names to be added under different security names.
* Add missing enumeration to `pysnmpUemKeyType`Ilya Etingof2019-08-041-36/+35
|
* Add USM master and localized keys configuration support (#295)Ilya Etingof2019-08-032-19/+69
| | | | | | | | | | | | Added new optional parameters to `addUsmUser()` and `hlapi.UsmUserData()` functions allowing specifying key material type being passed to the respective routines. Plain-text pass-phrase remains the default, while user can change that to `master` or `localized` types. Refer to RFC3414 for technical details on SNMP USM key localization algorithm.
* Make received MIB objects resolution more forgivingIlya Etingof2019-07-301-5/+11
| | | | | | | | | Previously, MIB resolution errors were ignored (whenever possible) for objects we were sending and receiving. This change tightens outgoing objects MIB compliance (send will fail), but tolerate non quite compliant objects we receive. Also, extend the same policy onto `NotificationOriginator`.
* Make MIB objects resolution more forgivingIlya Etingof2019-07-301-6/+21
| | | | | Added optional `ignoreErrors` parameter to `ObjectType.resolveWithMib()` to control that behaviour.
* Fix `importlib` use on Py27Ilya Etingof2019-04-121-5/+11
| | | | Also fixes bug in `imp`-based initialization
* Replace `imp` with `importlib` is availableIlya Etingof2019-04-021-23/+25
|
* Fix `MibBuilder.loadModules()` no respect missing MIB failureIlya Etingof2019-02-271-13/+15
| | | | | Missing MIB condition has been ignored if MIB compiler is not configured.
* Fix missing variable references in SMI instrumentationIlya Etingof2019-02-261-0/+4
|
* PEP-8 long lines and dunders (#245)Ilya Etingof2019-02-267-580/+908
| | | | This patch massively reformats the whole codebase mainly wrapping long lines and eliminating dundered private attributes.
* Fix typos in the docstringsIlya Etingof2019-02-221-3/+3
|
* Fix some of the rebuilt MIBsIlya Etingof2019-02-182-7/+32
| | | | | | Add the missing defaults (pyasn1 fault), add non-existing 'vacmContextStatus' MIB object which is required for table management.
* PEP-8 included MIB modules (#243)Ilya Etingof2019-02-1733-1980/+12211
| | | | | The base Pythonized MIBs being shipped with pysnmp have been rebuilt with the latest pysmi mainly for the purpose of making them PEP-8 compliant.
* PEP8 optimize imports (#242)Ilya Etingof2019-02-1211-37/+45
| | | | To make them PEP8-compliant
* Uppercase global constants (#238)Ilya Etingof2019-02-107-145/+148
| | | | | | | | | This is a massive patch essentially upper-casing global/class attributes that mean to be constants. Some previously exposed constants have been preserved for compatibility reasons (notably, in `hlapi`), though the rest might break user code relying on pysnmp 4.
* Drop Python < 2.6 except statement compatibility trickIlya Etingof2019-02-095-67/+53
|
* Drop Python < 2.6 kwargs expansion compatibility trickIlya Etingof2019-02-091-1/+1
|
* Add missing SNMP PDU error classesIlya Etingof2019-02-081-6/+23
| | | | | Added missing SNMP PDU error classes and their handling in Command Responder
* Uninitialized MibSclarInstance -> noSuchInstanceIlya Etingof2019-01-101-4/+4
|
* MIB loader ignores file and directory access errorsIlya Etingof2019-01-081-9/+13
| | | | | Also fixed crash on MIB load failure in case of directory access error
* Fix Pythonized MIB load in source formIlya Etingof2018-12-301-21/+34
|
* Extend copyright notice to year 2019Ilya Etingof2018-12-3040-40/+40
|
* Fix undefined names in `TRANSPORT-ADDRESS-MIB.py`Ilya Etingof2018-12-301-3/+3
|
* Redesigned SMI objects management model (#214)Ilya Etingof2018-12-298-634/+2770
| | | | | | | | | | | | | | The primary motivation behind this redesign is to allow asynchronous operations between SNMP responder and the data source feeding its MIB. This is achieved by redesigning all `read*`, `write*`, `create*` and `destroy*` methods of the `SNMPv2-SMI` MIB objects to return immediately and deliver their results via a call back. This modification brings significant and backward incompatible changes to the low-level MIB operations. The pysnmp MIB modules compiled for older pysnmp remain compatible.
* Fix wrong `set()` member deletion in `MibBuilder`Ilya Etingof2018-12-251-2/+2
|
* Fix possible duplicate key condition in `OrderedDict`Ilya Etingof2018-12-251-36/+37
| | | | | Also, updated thr `.update` and `__init__` methods signatures to match `dict` interface. Implementation details renewed.
* Use `compile()` before `exec` of MIB modulesIlya Etingof2018-10-261-4/+4
| | | | | | This change attaches the file name to the stack frames what is helpful when reading traceback or debugging interactively.
* Refactor MIB state machine into asynchronous operations (#210)Ilya Etingof2018-10-241-86/+135
| | | | | | | | | | | | | | Convert to async MIB instrumentation API (#210) MIB instrumentation API changed to allow for asynchronous managed objects access. The MIB instrumentation methods called by the state machine now return immediately and resume once the callback is called. The built-in SNMPv2-SMI objects are still synchronous. This change is a prerequisite for fully asynchronous managed objects implementation.
* Convert to async MIB instrumentation API (#209)Ilya Etingof2018-10-131-9/+21
| | | | | | | | | | | | | | | | MIB instrumentation API changed to allow for asynchronous managed objects access. Although built-in SNMPv2-SMI objects are still synchronous, the MIB instrumentation API is async what allows users to replace default MIB instrumentation with their own, potentially asynchronous. CommandResponder refactored to facilitate asynchronous MIB instrumentation routines. The `readVars`, `readNextVars` and `writeVars` MIB controller methods return immediately and deliver their results via a call back. SMI/MIB managed objects API overhauled for simplicity and flexibility breaking backward compatibility.
* VACM contextName memory leak fixIlya Etingof2018-08-061-1/+5
|
* Fix typosIlya Etingof2018-07-031-1/+1
|
* Overhaul SMI/MIB instrumentation API (#161)Ilya Etingof2018-06-302-252/+404
| | | | | | | | | | | Overhaul SMI/MIB instrumentation API SMI/MIB managed objects API overhauled for simplicity and flexibility breaking backward compatibility. This change would allow way more control over custom MIB managed objects and also is the prerequisite for asynchronous MIB instrumentation.
* better InetAddressType rendering fixIlya Etingof2018-04-212-3/+5
|
* fix InetAddressType renderingIlya Etingof2018-04-192-3/+3
|
* typo fix in RFC1158::snmpOutReadOnlysIlya Etingof2018-04-131-1/+1
|
* fix to MibBuilder.version formatIlya Etingof2018-02-251-1/+1
|
* many backward-compatibility aids droppedIlya Etingof2018-02-253-30/+3
|
* Some documentation clarifications (#125)Mike C. Fletcher2018-01-131-0/+2
| | | | | | | | | | | | | | | | | * Doc Update: in resolveWithMib docstring, document getting controller * Expand on the "use mibbuilder" comment as to *how* to use it Basically how to make the modules you compile with mibbuilder available to your application via MibBuilder settings * Add a note explaining that "ASN.1 MIB" means the textual format Users of the library seeing "ASN.1" may assume (as I did) that the meaning is "ASN.1 encoded binary version of the MIB" (i.e. a precompiled version of the MIB in compact internal format). * Describe how to configure all OIDs to use the ASN.1 mib directories
* copyright notice extendedv4.4.4Ilya Etingof2018-01-0340-40/+40
|
* migrated references from SourceForge (#110)Ilya Etingof2017-11-1741-64/+64
|
* missing get/setReference() added to SNMPv2-SMI::NotificationTypeIlya Etingof2017-11-111-8/+29
|
* added support for some more fields of SMIv2 MACRO typesIlya Etingof2017-11-062-19/+79
|
* fix to pysnmp version type at MibBuilderIlya Etingof2017-11-061-1/+1
|
* make pysnmp version available at MibBuilderIlya Etingof2017-11-051-1/+7
|
* the `append` option added to .setObjects()Ilya Etingof2017-11-052-9/+21
|
* Fix non-implied-OID-to-index conversion (#98)Eugene M. Kim2017-10-231-1/+1
| | | | | Non-implied OIDs, when laid in index, should be prefixed with the length of the OID, but the current code erroneously uses len(self.name), that is, the length of the MibTableRow's name instead.
* make sure not to pass `None` to SMI .setValue()Ilya Etingof2017-10-182-0/+15
| | | | This is a prerequisite for pyasn1 0.4.x
* make sure to pass an initializer to ASN.1 Null()Ilya Etingof2017-10-181-1/+1
| | | | This is a prerequisite for pyasn1 0.4.x
* fixed TestAndIncr implementationIlya Etingof2017-10-181-1/+1
|