summaryrefslogtreecommitdiff
path: root/sleekxmpp/features/feature_mechanisms/mechanisms.py
AgeCommit message (Collapse)Author
2012-01-21Handle SASLCancelled and SASLError exceptions.Lance Stout
2012-01-20Allow attempting multiple SASL mechs during a single stream.Lance Stout
Instead of disconnecting when the first chosen mech fails, we will try all of them once.
2012-01-20Add an extra config dict to store SASL credentials.Lance Stout
We'll need extra things beyond just a password, such as api_key.
2012-01-18Revert "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-17Remove 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-06Add support for MSN with X-MESSENGER-OAUTH2 SASL support.Lance Stout
NOTE: This requires already having the access token. It does NOT perform any OAuth requests.
2011-11-19Tidy up logging calls.Lance Stout
2011-11-20This change stops sleekxmpp from spending huge amounts of time unnecessarily ↵Vijay Pandurangan
computing logging data that may never be used. This is a HUGE performance improvement; in some of my test runs, unnecessary string creation was accounting for > 60% of all CPU time. Note that using % in a string will _always_ perform the sting substitutions, because the strings are constructed before the function is called. So log.debug('%s' % expensiveoperation()) will take about the same CPU time whether or not the logging level is DEBUG or INFO. if you use , no substitutions are performed unless the string is actually logged
2011-08-09Enable forcing a specififc SASL mech:Lance Stout
xmpp = ClientXMPP(jid, password, { 'feature_mechanisms': {'use_mech':'PLAIN'}})
2011-08-04Cosmetic PEP8 fixes.Lance Stout
2011-08-03Integrate a modified version of Dave Cridland's Suelta SASL library.Lance Stout
2011-07-02SASL failure event now includes the failure stanza.Lance Stout
Broke SASL stanzas into separate files. Fixed typo in feature_bind.
2011-07-02It isn't 2010 anymore.Lance Stout
I keep forgetting to update the copyright on new code.
2011-07-02Use a set to track negotiated features.Lance Stout
Added guards to prevent renegotiating STARTTLS or SASL in cases where servers don't behave properly.
2011-07-02Simplify SASL mech registration.Lance Stout
Moved SASL registration completely to the feature plugin, instead of keeping a portion of it in ClientXMPP.
2011-07-02Finish cleaning up stream feature organization.Lance Stout
Fixed missing references that weren't caught due to leftover pyc file allowing tests to keep working when they shouldn't have.
2011-07-01Continued reorganization and streamlining.Lance Stout