summaryrefslogtreecommitdiff
path: root/sleekxmpp/util/sasl/mechanisms.py
diff options
context:
space:
mode:
Diffstat (limited to 'sleekxmpp/util/sasl/mechanisms.py')
-rw-r--r--sleekxmpp/util/sasl/mechanisms.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/sleekxmpp/util/sasl/mechanisms.py b/sleekxmpp/util/sasl/mechanisms.py
index 36fcb928..d341ed3e 100644
--- a/sleekxmpp/util/sasl/mechanisms.py
+++ b/sleekxmpp/util/sasl/mechanisms.py
@@ -532,6 +532,9 @@ else:
result = kerberos.authGSSClientStep(self.gss, b64_challenge)
if result != kerberos.AUTH_GSS_CONTINUE:
self.step = 1
+ elif not challenge:
+ kerberos.authGSSClientClean(self.gss)
+ return b''
elif self.step == 1:
username = self.credentials['username']
@@ -541,7 +544,7 @@ else:
resp = kerberos.authGSSClientResponse(self.gss)
except kerberos.GSSError as e:
- raise SASLCancelled('Kerberos error: %s' % e.message)
+ raise SASLCancelled('Kerberos error: %s' % e)
if not resp:
return b''
else: