summaryrefslogtreecommitdiff
path: root/sleekxmpp/features
diff options
context:
space:
mode:
authorLance Stout <lancestout@gmail.com>2012-01-18 11:51:00 -0800
committerLance Stout <lancestout@gmail.com>2012-01-18 11:51:00 -0800
commit1e01903072927917cf5c64ceb7bb1aac3770ea5c (patch)
treed0ae471cc15183ea4e40721fc8a31441faddb021 /sleekxmpp/features
parent3672856ab47900a8bf505cea3ea401eec8253318 (diff)
downloadslixmpp-1e01903072927917cf5c64ceb7bb1aac3770ea5c.tar.gz
slixmpp-1e01903072927917cf5c64ceb7bb1aac3770ea5c.tar.bz2
slixmpp-1e01903072927917cf5c64ceb7bb1aac3770ea5c.tar.xz
slixmpp-1e01903072927917cf5c64ceb7bb1aac3770ea5c.zip
Revert "Remove stream feature handlers on session_start."
This reverts commit 4274f49ada77d709b931f65e34d3a64e75b81638. The SASL mech was choking on this, so let's send it back for some more refining.
Diffstat (limited to 'sleekxmpp/features')
-rw-r--r--sleekxmpp/features/feature_mechanisms/mechanisms.py19
-rw-r--r--sleekxmpp/features/feature_starttls/starttls.py20
2 files changed, 9 insertions, 30 deletions
diff --git a/sleekxmpp/features/feature_mechanisms/mechanisms.py b/sleekxmpp/features/feature_mechanisms/mechanisms.py
index 86dbb361..deff5d30 100644
--- a/sleekxmpp/features/feature_mechanisms/mechanisms.py
+++ b/sleekxmpp/features/feature_mechanisms/mechanisms.py
@@ -63,17 +63,6 @@ class feature_mechanisms(base_plugin):
self.xmpp.register_stanza(stanza.Challenge)
self.xmpp.register_stanza(stanza.Response)
- self.xmpp.add_event_handler('stream_start',
- self._handle_stream_start)
- self.xmpp.add_event_handler('session_start',
- self._handle_session_start)
-
- self.xmpp.register_feature('mechanisms',
- self._handle_sasl_auth,
- restart=True,
- order=self.config.get('order', 100))
-
- def _handle_stream_start(self, root):
self.xmpp.register_handler(
Callback('SASL Success',
MatchXPath(stanza.Success.tag_name()),
@@ -91,10 +80,10 @@ class feature_mechanisms(base_plugin):
MatchXPath(stanza.Challenge.tag_name()),
self._handle_challenge))
- def _handle_session_start(self, e):
- self.xmpp.remove_handler('SASL Success')
- self.xmpp.remove_handler('SASL Failure')
- self.xmpp.remove_handler('SASL Challenge')
+ self.xmpp.register_feature('mechanisms',
+ self._handle_sasl_auth,
+ restart=True,
+ order=self.config.get('order', 100))
def _handle_sasl_auth(self, features):
"""
diff --git a/sleekxmpp/features/feature_starttls/starttls.py b/sleekxmpp/features/feature_starttls/starttls.py
index a7f048b1..4e2b6621 100644
--- a/sleekxmpp/features/feature_starttls/starttls.py
+++ b/sleekxmpp/features/feature_starttls/starttls.py
@@ -27,30 +27,20 @@ class feature_starttls(base_plugin):
self.description = "STARTTLS Stream Feature"
self.stanza = stanza
+ self.xmpp.register_handler(
+ Callback('STARTTLS Proceed',
+ MatchXPath(stanza.Proceed.tag_name()),
+ self._handle_starttls_proceed,
+ instream=True))
self.xmpp.register_feature('starttls',
self._handle_starttls,
restart=True,
order=self.config.get('order', 0))
- self.xmpp.add_event_handler('stream_start',
- self._handle_stream_start)
- self.xmpp.add_event_handler('session_start',
- self._handle_session_start)
-
self.xmpp.register_stanza(stanza.Proceed)
self.xmpp.register_stanza(stanza.Failure)
register_stanza_plugin(StreamFeatures, stanza.STARTTLS)
- def _handle_stream_start(self, root):
- self.xmpp.register_handler(
- Callback('STARTTLS Proceed',
- MatchXPath(stanza.Proceed.tag_name()),
- self._handle_starttls_proceed,
- instream=True))
-
- def _handle_session_start(self, e):
- self.xmpp.remove_handler('STARTTLS Proceed')
-
def _handle_starttls(self, features):
"""
Handle notification that the server supports TLS.