Welcome to mirror list, hosted at ThFree Co, Russian Federation.

dev.gajim.org/gajim/python-nbxmpp.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nbxmpp/client_nb.py7
-rw-r--r--nbxmpp/tls_nb.py7
-rw-r--r--nbxmpp/transports_nb.py2
3 files changed, 10 insertions, 6 deletions
diff --git a/nbxmpp/client_nb.py b/nbxmpp/client_nb.py
index c4b1ed2..556321c 100644
--- a/nbxmpp/client_nb.py
+++ b/nbxmpp/client_nb.py
@@ -495,9 +495,10 @@ class NonBlockingClient:
self._channel_binding = None
if self.connected in ('ssl', 'tls'):
try:
- self._channel_binding = self.Connection.NonBlockingTLS.get_channel_binding()
- # TLS handshake is finished so channel binding data muss exist
- assert (self._channel_binding != None)
+ if self.protocol_type != 'BOSH':
+ self._channel_binding = self.Connection.NonBlockingTLS.get_channel_binding()
+ # TLS handshake is finished so channel binding data muss exist
+ assert (self._channel_binding != None)
except NotImplementedError:
pass
if auth_mechs == None:
diff --git a/nbxmpp/tls_nb.py b/nbxmpp/tls_nb.py
index 25be057..f7cb63e 100644
--- a/nbxmpp/tls_nb.py
+++ b/nbxmpp/tls_nb.py
@@ -508,7 +508,10 @@ class NonBlockingTLS(PlugIn):
Get channel binding data. RFC 5929
"""
sslObj = self._owner._sslObj
- try:
- return sslObj.get_channel_binding()
+ try:
+ if USE_PYOPENSSL:
+ return sslObj.get_finished()
+ else:
+ return sslObj.get_channel_binding()
except AttributeError:
raise NotImplementedError
diff --git a/nbxmpp/transports_nb.py b/nbxmpp/transports_nb.py
index e9e8889..662b7eb 100644
--- a/nbxmpp/transports_nb.py
+++ b/nbxmpp/transports_nb.py
@@ -555,7 +555,7 @@ class NonBlockingTCP(NonBlockingTransport, IdleObject):
return None
self.sendbuff = self.sendqueue.pop(0)
try:
- send_count = self._send(self.sendbuff)
+ send_count = self._send(self.sendbuff.encode("utf-8"))
if send_count:
sent_data = self.sendbuff[:send_count]
self.sendbuff = self.sendbuff[send_count:]