summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--slixmpp/xmlstream/xmlstream.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/slixmpp/xmlstream/xmlstream.py b/slixmpp/xmlstream/xmlstream.py
index 9fd21c58..4cb51b94 100644
--- a/slixmpp/xmlstream/xmlstream.py
+++ b/slixmpp/xmlstream/xmlstream.py
@@ -1140,9 +1140,12 @@ class XMLStream(asyncio.BaseProtocol):
if not self._always_send_everything and not self._session_started:
# Avoid circular imports
from slixmpp.stanza.rootstanza import RootStanza
- from slixmpp.stanza import Iq
- is_bind = isinstance(data, Iq) and data.get_plugin('bind', check=True)
- if isinstance(data, (RootStanza, str)) and not is_bind:
+ from slixmpp.stanza import Iq, Handshake
+ passthrough = (
+ (isinstance(data, Iq) and data.get_plugin('bind', check=True))
+ or isinstance(data, Handshake)
+ )
+ if isinstance(data, (RootStanza, str)) and not passthrough:
self.__queued_stanzas.append(data)
log.debug('NOT SENT: %s %s', type(data), data)
return