| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
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`.
|
|
|
|
|
| |
Added optional `ignoreErrors` parameter to `ObjectType.resolveWithMib()`
to control that behaviour.
|
|
|
|
| |
Also fixes bug in `imp`-based initialization
|
| |
|
|
|
|
|
| |
Missing MIB condition has been ignored if MIB compiler is not
configured.
|
| |
|
|
|
|
| |
This patch massively reformats the whole codebase mainly wrapping
long lines and eliminating dundered private attributes.
|
| |
|
|
|
|
|
|
| |
Add the missing defaults (pyasn1 fault), add non-existing
'vacmContextStatus' MIB object which is required for table
management.
|
|
|
|
|
| |
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.
|
|
|
|
| |
To make them PEP8-compliant
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
| |
Added missing SNMP PDU error classes and their handling in
Command Responder
|
| |
|
|
|
|
|
| |
Also fixed crash on MIB load failure in case of directory
access error
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
Also, updated thr `.update` and `__init__` methods signatures to
match `dict` interface. Implementation details renewed.
|
|
|
|
|
|
| |
This change attaches the file name to the stack frames
what is helpful when reading traceback or debugging
interactively.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
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.
|
|
|
|
| |
This is a prerequisite for pyasn1 0.4.x
|
|
|
|
| |
This is a prerequisite for pyasn1 0.4.x
|
| |
|