Commit Graph

200 Commits (master)

Author SHA1 Message Date
Ilya Etingof 0c0d054e8e
Refactor MIB state machine into asynchronous operations (#210)
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.
2018-10-24 10:14:33 +02:00
Ilya Etingof 534a5bb810
Convert to async MIB instrumentation API (#209)
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.
2018-10-13 20:21:31 +02:00
Ilya Etingof 1537699336 Simplify SNMPv3 TRAP receiver example 2018-09-02 08:45:31 +02:00
Ilya Etingof ac0b956d00
Add `hlapi.v1arch` API (#186)
* Add `hlapi.v1arch` API

Introduce new sub-package `pysnmp.hlapi.v1arch` which
wraps otherwise very detailed packet-level SNMP
messaging into a handful of convenience functions.

As a side effect, the `pysnmp.hlapi.*` sub-packages
moved under `pysnmp.hlapi.v3arch` though `pysnmp.hlapi`
still exposes `pysnmp.hlappi.v3arch.*` symbols to
retain some degree of backward compatibility.

The signature of the hlapi `.sendNotification()` call
has changed to accept `*varBinds` instead of a sequence
of `varBinds`. The rationale is to unify this method
call with similar methods of CommandGenerator.

* Add v1arch docs and reshuffle hlapi docs
2018-08-12 17:22:58 +02:00
Ilya Etingof a93241007b
Remove `pysnmp.carrier.asynsock` sub-package (#166)
Legacy `pysnmp.carrier.asynsock` backward-compatible
wrapper over `pysnmp.carrier.asyncore` is gone
2018-07-08 12:59:49 +02:00
Ilya Etingof 8dbc28d360 Fix BULKWALK examples
Avoid sending out extra GETBULK on EOM condition
2018-07-08 09:49:44 +02:00
Ilya Etingof 7f65dde49a Fix typos 2018-07-03 08:05:23 +02:00
Ilya Etingof da4539e34c
Overhaul SMI/MIB instrumentation API (#161)
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.
2018-06-30 20:14:57 +02:00
Ilya Etingof 0a29dd1f35 many backward-compatibility aids dropped 2018-02-25 00:08:01 +01:00
Ilya Etingof 114e90414d skip printing out non-initialized MIB objects in example MIB walk 2017-12-03 20:21:05 +01:00
Ilya Etingof 9f6230113e
encode IPv6 requirement into example scripts names (#102) 2017-11-06 14:32:00 +01:00
Ilya Etingof 1065d25a16 make sure to pass an initializer to ASN.1 Null()
This is a prerequisite for pyasn1 0.4.x
2017-10-18 11:45:02 +02:00
Ilya Etingof c383f2de5b Sphinx theme changed to Alabaster, minor documentation tweaks 2017-10-06 18:39:51 +02:00
Ilya Etingof 9d35779f1c NotificationReceiver reports SNMPv1 TRAP community string 2017-10-05 23:21:30 +02:00
Ilya Etingof 9c55a5293c fail gracefully when sha2 suite is not available 2017-08-03 23:52:48 +02:00
Ilya Etingof 04bc906d29 added SHA2 auth protocol into the list of available ones 2017-08-03 22:44:43 +02:00
Ilya Etingof c196de621f minor pep8 improvements 2017-05-27 09:01:56 +02:00
Ilya Etingof 708062acde More twisted examples (#47)
* twisted inline callback example
2017-03-18 13:23:38 +01:00
Ilya Etingof f42801b22a fix to v1arch example to accommodate pyasn1 change 2017-02-09 02:01:13 +01:00
Gerrat Rickert d27e528dd2 Fixed some typos in arguments with previous commit 2016-12-21 17:48:46 -05:00
Gerrat Rickert 7023d87738 Removed tuple unpacking in function signatures in twisted since removed in Python 3 2016-12-21 17:01:43 -05:00
Ilya Etingof f63149c938 updated IP address for demo.snmplabs.com in examples 2016-07-30 23:30:35 +02:00
Ilya Etingof 91a1292067 converted to new-style classes 2016-06-12 14:07:24 +02:00
Ilya Etingof 93bdedf1fd include SMI examples 2016-05-11 22:40:21 +02:00
Ilya Etingof f96e5db5fb better examples on MIB compiler 2016-05-11 12:50:44 +02:00
Ilya Etingof 5d43d5f36a fixes to end-of-docstring sentinel 2016-04-08 08:23:42 +02:00
Ilya Etingof aa91642cc3 pep8 reformatted 2016-04-05 23:06:55 +02:00
Ilya Etingof 020791a972 pep8 reformatted 2016-04-01 22:58:56 +02:00
Ilya Etingof 9541f201e3 pep8 reformatted 2016-04-01 01:08:28 +02:00
Ilya Etingof 18f39e2228 brief description added 2016-04-01 01:02:36 +02:00
Ilya Etingof 002bb632e8 pep8 fixes 2016-03-31 00:04:43 +02:00
Ilya Etingof e4c4e37631 pep8 fixes 2016-03-30 23:56:16 +02:00
Ilya Etingof 929eb1b533 pep8 fixes 2016-03-30 23:47:36 +02:00
Ilya Etingof 8e655f46e3 pep8 fixes 2016-03-30 23:29:55 +02:00
Ilya Etingof d524518183 highlighing fixes 2016-03-12 10:47:48 +01:00
Ilya Etingof 6f0ba0a5fc more fixes to test scripts 2016-03-12 10:42:48 +01:00
Ilya Etingof 84001b6939 example on implicit notification objects initialization improved 2016-03-08 22:13:34 +01:00
elie 3b505486fe missing securityEngineId 2015-12-19 21:40:47 +00:00
elie 912c8fe4dc changed/removed quotes 2015-12-19 21:23:46 +00:00
elie 986c0a7f58 notification origination examples debugged and adjusted to work
with demo.snmplabs.com out-of-the-box
2015-12-19 21:07:51 +00:00
elie ac82aea8e9 fix to snmptrap c/l 2015-12-19 13:34:00 +00:00
elie fef6965a41 more fixes to trap destination 2015-12-14 07:11:03 +00:00
elie 1090a68028 notification originator examples re-pointed to Notification Receiver
at demo.snmplabs.com
2015-12-13 12:05:03 +00:00
elie b3b58faee3 missing import 2015-11-12 20:30:32 +00:00
elie c77a232368 asyncio examples documented 2015-09-27 17:29:37 +00:00
elie 120a39ce88 var-bindings passing in asyncore API aligned with others 2015-09-27 15:27:20 +00:00
elie 5d5673dfcd * Asyncore and asyncio-based APIs reworked to become functions.
* Asyncio and Twisted API moved entirely into high-level domain to
  be aligned with other high-level APIs. This WILL BREAK backward
  compatibility for those apps that use Twisted API.
2015-09-27 10:26:25 +00:00
elie b0fd0d6dea post-move documentation and code fixes 2015-09-21 18:35:05 +00:00
elie a0d0d36ca6 more adjustments followed layout changes 2015-09-21 06:32:31 +00:00
elie 9cabcd7b81 proper markup and fixes 2015-09-17 19:55:00 +00:00