Age | Commit message (Collapse) | Author | |
---|---|---|---|
2012-06-15 | Ensure that ssl_invalid_cert returns PEM formatted certifcate data. | Lance Stout | |
2012-06-13 | Prevent duplicate certificate expiration timers. | Lance Stout | |
2012-06-09 | Add extra check for the cert in the expiration handler. | Lance Stout | |
2012-06-09 | Fix SSL handshake handling when not using legacy SSL. | Lance Stout | |
Fixes issue #172 | |||
2012-06-09 | Ensure that all SSL cert error handling is overridable using event handlers. | Lance Stout | |
Relevant events: ssl_invalid_cert ssl_invalid_chain ssl_expired_cert | |||
2012-06-04 | Don't add cert expiration timer if no certs are being used. | Lance Stout | |
2012-06-01 | Fix syntax error in line continuation. | Lance Stout | |
2012-06-01 | Check that the session is still alive before sending data. | Lance Stout | |
Fixes issue #168 | |||
2012-05-31 | Preemptively mark threads as exited if calling disconnect(). | Lance Stout | |
2012-05-27 | Handle not being able to connect using IPv6 if the host does not support it. | Lance Stout | |
2012-05-22 | Add better certificate handling. | Lance Stout | |
Certificate host names are now matched (using DNS, SRV, XMPPAddr, and Common Name), along with expiration check. Scheduled event to reset the stream once the server's cert expires. Handle invalid cert trust chains gracefully now. | |||
2012-05-10 | Make the error message better regarding hanged threads. | Lance Stout | |
All event handlers which call disconnect() MUST be registered using `add_event_handler(..., threaded=True)` in order to prevent temporarily deadlocking until a timeout occurs. This is required because disconnect() waits for the main threads to exit before returning, including the event processing thread. Since handlers registered without `threaded=True` run in the event processing thread, the disconnect() call will deadlock. | |||
2012-04-29 | Add logging note about potential cause of disconnect() deadlock. | Lance Stout | |
2012-04-29 | Set a timeout when waiting for threads. | Lance Stout | |
If calling disconnect() from a non-threaded event handler, deadlock can happen as disconnect() is waiting for threads to close, but the event runner is blocked by a handler waiting for disconnect() to return. It is best to specify threaded=True for event handlers which may call disconnect(). | |||
2012-04-24 | Ensure that SSL errors are handled in Py3.3 | Lance Stout | |
2012-04-22 | Track threads to ensure all have exited when disconnecting. | Lance Stout | |
2012-04-21 | Count and track the main threads, so we can delay disconnecting until all ↵ | Lance Stout | |
have quit. | |||
2012-04-20 | Add _use_daemons flag to XMLStream to run all threads in daemon mode. | Lance Stout | |
This WILL make the Python interpreter produce exceptions on shutdown. | |||
2012-04-13 | Check for the stop event more aggressively in the send thread. | Lance Stout | |
2012-04-08 | Add a prefix to stanza ID values to ensure that they are unique per client. | Lance Stout | |
2012-04-06 | Correct the statemachine's ensure_any method. | Lance Stout | |
It had not been updated to use the new condition instead of the old threading event. | |||
2012-04-01 | Display IPv6 literal addresses in brackets. | Lance Stout | |
2012-03-30 | Improve connection handling by not delaying until all DNS records are tried. | Lance Stout | |
2012-03-30 | Add better DNS resolver wrapper. | Lance Stout | |
2012-03-28 | Fix sending data after </stream> | Lance Stout | |
Clearing the session_started_event before sending </stream> will pause the send loop so that we don't continue sending data after the </stream>. | |||
2012-03-27 | Improve handling disconnections. | Lance Stout | |
- Add option for disconnecting without sending </stream>: self.disconnect(send_close=False) - Optionally distinguish between session_end and disconnected based on if </stream> was sent. self.end_session_on_disconnect = False | |||
2012-03-27 | Simplify sending whitespace keepalives. | Lance Stout | |
Now that we have the send lock, we can use now=True. | |||
2012-03-21 | Correct handling of acks for XEP-0198 under heavy load. | Lance Stout | |
2012-03-21 | Respect reattempt=False setting when reconnecting. | Lance Stout | |
2012-03-20 | Correct connect() documentation, don't delay attempts if reattempt=False. | Lance Stout | |
See issue #152 | |||
2012-03-18 | Add out_sync filter category. | Lance Stout | |
Added option to XMLStream.send() to skip applying filters. Filters in the out_sync group are synced with placing stanza content either on the wire directly or into the send queue. Because of this, out_sync filters should not block. | |||
2012-03-12 | Add setting for maximum number of reconnection attempts. | Lance Stout | |
Setting self.reconnect_max_attempts to a non-None value will limit the number of times a connection attempt will be made before quiting and raising a 'connection_failed' event. | |||
2012-03-07 | Modify the cert event to provide the PEM encoded cert in all cases. | Lance Stout | |
2012-02-22 | Let disconnect() wait for its lock for a few seconds. | Lance Stout | |
This should eliminate most debug statements about not being able to acquire a lock during disconnect. | |||
2012-02-19 | xml.etree.ElementTree raises ExpatError instead of SyntaxError or ParseError. | Lance Stout | |
2012-02-18 | More pyflakes cleanup. | Lance Stout | |
2012-02-17 | Fix undeclared variable usage for reconnect. | Lance Stout | |
2012-02-16 | Fix fixing remove_stanza() | Lance Stout | |
Fixes issue #146 | |||
2012-02-16 | Don't retrieve cert until a connection is made. | Lance Stout | |
2012-02-16 | Fix remove_stanza(). | Lance Stout | |
Fixes issue #146 | |||
2012-02-10 | Don't shutdown completely after handling SyntaxError. | Lance Stout | |
The ``shutdown = True`` line was preventing the stream from reconnecting after handling the error. Fixes issues #101, #145 | |||
2012-02-10 | Fix undefined variable references when DNS timeouts. | Lance Stout | |
2012-02-10 | Fix IPv6 query logging. | Lance Stout | |
2012-02-09 | Add support for querying and connecting to IPv6 addresses. | Lance Stout | |
Tested using servers provided by Florian Jensen (flosoft.biz) during the 2012 FOSDEM XMPP Summit. Fixes issue #94. | |||
2012-02-04 | Add ssl_cert event (direct). | Lance Stout | |
The payload is a dictionary of parsed cert data, as provided by Python's getpeercert() socket method. It unfortunately does not provide much detail beyond basic info. | |||
2012-02-02 | Fix typo s/is_set/is_set() | Lance Stout | |
2012-01-28 | Make socket_error run as a direct event to ensure that it is handled. | Lance Stout | |
Socket errors that occur before stream processing begins could not be handled as the event loop would not be running yet. Resolves issue #142 | |||
2012-01-18 | Revert "Remove stream feature handlers on session_start." | Lance Stout | |
This reverts commit 4274f49ada77d709b931f65e34d3a64e75b81638. The SASL mech was choking on this, so let's send it back for some more refining. | |||
2012-01-17 | Remove stream feature handlers on session_start. | Lance Stout | |
Based on profiling, using around 35 stream handlers quarters the number of basic message stanzas that can be processed in a second, in comparison to only using the bare minimum of four handlers. To help, we can drop handlers for stream features once the session has started. So that we can re-enable these handlers when a stream must restart, the 'stream_start' event has been added which fires whenever a stream header is received. The 'stream_start' event is a more generic replacement for the existing start_stream_handler() method. | |||
2012-01-14 | Don't serialize XML unless we need to. | Lance Stout | |