summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLance Stout <lancestout@gmail.com>2012-02-09 22:01:11 -0800
committerLance Stout <lancestout@gmail.com>2012-02-09 22:01:11 -0800
commitc1357717d952999a0aca7d96bf15d72ada01e75b (patch)
tree17d30376742cfd95113cb9f66d771ae449b3a312
parentca5145c21064ec75f2c388dd4b6e3afee8da1a21 (diff)
downloadslixmpp-c1357717d952999a0aca7d96bf15d72ada01e75b.tar.gz
slixmpp-c1357717d952999a0aca7d96bf15d72ada01e75b.tar.bz2
slixmpp-c1357717d952999a0aca7d96bf15d72ada01e75b.tar.xz
slixmpp-c1357717d952999a0aca7d96bf15d72ada01e75b.zip
Use '=' as base64 value for empty string SASL results.
-rw-r--r--sleekxmpp/features/feature_mechanisms/stanza/auth.py5
-rw-r--r--sleekxmpp/features/feature_mechanisms/stanza/challenge.py5
-rw-r--r--sleekxmpp/features/feature_mechanisms/stanza/response.py5
3 files changed, 12 insertions, 3 deletions
diff --git a/sleekxmpp/features/feature_mechanisms/stanza/auth.py b/sleekxmpp/features/feature_mechanisms/stanza/auth.py
index d2a981f9..a366f72a 100644
--- a/sleekxmpp/features/feature_mechanisms/stanza/auth.py
+++ b/sleekxmpp/features/feature_mechanisms/stanza/auth.py
@@ -41,7 +41,10 @@ class Auth(StanzaBase):
def set_value(self, values):
if not self['mechanism'] in self.plain_mechs:
- self.xml.text = bytes(base64.b64encode(values)).decode('utf-8')
+ if values:
+ self.xml.text = bytes(base64.b64encode(values)).decode('utf-8')
+ else:
+ self.xml.text = '='
else:
self.xml.text = bytes(values).decode('utf-8')
diff --git a/sleekxmpp/features/feature_mechanisms/stanza/challenge.py b/sleekxmpp/features/feature_mechanisms/stanza/challenge.py
index 82af869f..342463e1 100644
--- a/sleekxmpp/features/feature_mechanisms/stanza/challenge.py
+++ b/sleekxmpp/features/feature_mechanisms/stanza/challenge.py
@@ -33,7 +33,10 @@ class Challenge(StanzaBase):
return base64.b64decode(bytes(self.xml.text))
def set_value(self, values):
- self.xml.text = bytes(base64.b64encode(values)).decode('utf-8')
+ if values:
+ self.xml.text = bytes(base64.b64encode(values)).decode('utf-8')
+ else:
+ self.xml.text = '='
def del_value(self):
self.xml.text = ''
diff --git a/sleekxmpp/features/feature_mechanisms/stanza/response.py b/sleekxmpp/features/feature_mechanisms/stanza/response.py
index 45bb8207..65f35888 100644
--- a/sleekxmpp/features/feature_mechanisms/stanza/response.py
+++ b/sleekxmpp/features/feature_mechanisms/stanza/response.py
@@ -33,7 +33,10 @@ class Response(StanzaBase):
return base64.b64decode(bytes(self.xml.text))
def set_value(self, values):
- self.xml.text = bytes(base64.b64encode(values)).decode('utf-8')
+ if values:
+ self.xml.text = bytes(base64.b64encode(values)).decode('utf-8')
+ else:
+ self.xml.text = '='
def del_value(self):
self.xml.text = ''