aboutsummaryrefslogtreecommitdiff
path: root/modules/sasl.py
diff options
context:
space:
mode:
authorGravatar jesopo2018-09-07 16:04:37 +0100
committerGravatar jesopo2018-09-07 16:04:37 +0100
commit66e10ba11d7063c2b733ce5180efa217116f5ff8 (patch)
treef05ab3986dfa0c79904ca032da0f20745f3f6548 /modules/sasl.py
parentSupport CAP 3.2 (diff)
signature
Only "finish" a sasl handshake when we get a 900
Diffstat (limited to 'modules/sasl.py')
-rw-r--r--modules/sasl.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/modules/sasl.py b/modules/sasl.py
index 8df4b3c9..f9d0b124 100644
--- a/modules/sasl.py
+++ b/modules/sasl.py
@@ -7,6 +7,7 @@ class Module(object):
events.on("received.cap.ls").hook(self.on_cap)
events.on("received.cap.ack").hook(self.on_cap_ack)
events.on("received.authenticate").hook(self.on_authenticate)
+ events.on("received.numeric.900").hook(self.sasl_success)
def preprocess_connect(self, event):
sasl = event["server"].get_setting("sasl")
@@ -39,4 +40,6 @@ class Module(object):
auth_text = base64.b64encode(auth_text.encode("utf8"))
auth_text = auth_text.decode("utf8")
event["server"].send_authenticate(auth_text)
+
+ def sasl_success(self, event):
event["server"].capability_done("sasl")