Commit Graph

34 Commits (d5b3c90d29d9f0099c686e838a8731c6f2723088)

Author SHA1 Message Date
Ilya Etingof d5b3c90d29 email changed, copyright extended to the year 2017 2017-01-12 01:05:56 +01:00
Ilya Etingof 91a1292067 converted to new-style classes 2016-06-12 14:07:24 +02:00
Ilya Etingof 90bbf397ad pep8 reformatted 2016-04-02 23:43:14 +02:00
elie c50fe2a466 copyright updated 2015-12-29 20:34:33 +00:00
elie 87a7a35d1e copyright notice added to source code 2015-11-20 20:57:28 +00:00
elie 7ebcb3d0c1 multiple-statements-in-one-line linted out 2015-10-17 15:34:21 +00:00
elie 71dd5565a4 linted for trailing whitespaces 2015-10-17 09:54:53 +00:00
elie cd527959f8 public API moved to AbstractTransport 2015-10-16 17:35:33 +00:00
elie c317a13711 - The asyncore-based transport subsystem extended to support POSIX
sendmsg()/recvmsg() based socket communication what could be used,
  among other things, in the context of a transparent SNMP proxy
  application. Technically, the following features were brought
  into pysnmp with this update:
  * Sending SNMP packets from a non-local IP address
  * Receiving IP packets for non-local IP addresses
  * Responding to SNMP requests from exactly the same IP address
    the query was sent to. This proves to be useful when listening
    on both primary and secondary IP interfaces.
2015-01-20 16:57:59 +00:00
elie 0f3b10f3aa pylint'ed 2014-06-17 15:19:53 +00:00
elie 2b9faca109 * broadcast socket option can now be enabled with the .enableBroadcast()
call for any datagram-based transport (namely, UDP and UDP6)
* AbstractTransportDispatcher's jobStarted() and jobFinished() methods
  now accept optional 'count' parameter which is a way for an app to indicate
  how many responses are expected or have been processed in bulk
2013-12-12 18:47:52 +00:00
elie a96c812eb4 minor changes to transport dispatcher's recvId logic 2013-09-08 21:46:51 +00:00
elie a2b420912d no default data routing function anymore 2013-09-07 14:28:40 +00:00
elie 690ea8ee6a * A single instance of transport dispatcher can now serve multiple
receivers (identified by IDs) chosen by a public data routing method.
* SnmpEngine.[un]registerTransportDispatcher() methods now accept optional
  receiver ID token to be used by transport dispatcher's data router. This
  allows for multiple SNMP engines registration with a single transport
  dispatcher.
* Relevant example added
2013-09-07 14:20:04 +00:00
elie 9c7ed7cd8f move common methods to AbstractTransport 2013-06-30 15:23:26 +00:00
elie 2ea76b7bd3 disptacher vs transport compatibiilty verification moved into
base transport class
2013-06-21 06:34:22 +00:00
elie 7fc7d79936 fix of rounding error to base I/O dispatcher's next timer call calculation 2013-03-15 20:50:24 +00:00
elie 91d3d54b53 minor cosmetic changes 2012-06-25 23:29:43 +00:00
elie 89d72639ce catch missing transport 2011-12-05 21:52:52 +00:00
elie d8d32c4dcf * TimerCallable instances now use current timer resolution setting
as a default calling period.
* handleTimerTick() slightly optimized
2011-12-05 16:42:45 +00:00
elie 6051a4d86d transport dispatcher now provides its own time expressed in
fractions of second. SNMP engine uses this notion of time for
handling requests timeout to make packet flow time bound
2011-11-27 08:10:43 +00:00
elie f0406dd01c major overhawl aimed at Python 2.4 through 3.2 compatibility 2011-11-06 20:37:09 +00:00
elie 2d34d4d970 all dict.has_key() & dict.get() invocations replaced with modern syntax
(this breaks compatibility with Python 2.1 and older).
2011-01-20 17:11:43 +00:00
elie df20074873 AbstractTransportDispatcher now allows user application registering
multiple timer callbacks each with dedicated call period.
2010-04-20 13:03:08 +00:00
elie e8a56fc0a0 allow multiple callback timer functions 2008-11-22 18:48:31 +00:00
elie 1b53935c68 fixes to % formatting 2007-09-20 05:38:26 +00:00
elie 20cab65bfc timer ticks is now 1 sec discrete 2006-09-20 16:25:14 +00:00
elie 43b396f4fd AbstractTransportDispatcher.runDispatcher() now runs only when 1) unsent data
remains in buffers or 2) any app registers a job at dispatcher (e.g. it waits
for data to arrive). Otherwise, runDispatcher() terminates.
2005-07-25 15:08:36 +00:00
elie 35b544b7d0 startDispatcher() added 2005-07-12 10:42:37 +00:00
elie f501ae3ed5 converted to changed pyasn1 behaviour -- asn1 objects now hashes to their
python value
2005-06-27 07:40:51 +00:00
elie ba5d802621 closeTransports() does not exist 2005-06-24 14:57:27 +00:00
elie e8e6489e81 stopDispatcher() implemented 2005-06-23 22:30:33 +00:00
elie 8735aa5e5e * AbstractTransportDispatcher now allows transports de/registration at
runtime
* exceptions set reduced
2005-06-14 09:53:43 +00:00
elie 5895190d84 Moved from the top-level under the roof of v4 API 2004-11-12 14:21:27 +00:00