Software / code / prosody
File
util/sasl/external.lua @ 11804:22825cb5dcd8
net.server_epoll: Don't immediately destroy upon getting closed on read
Instead try to write any remaining buffered data. If the write attempt
also fails with "closed" then there's nothing we can do and the socket
is gone.
This reverts what appears to be a mistakenly included part of c8aa66595072
Thanks jonas’ for noticing
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Wed, 15 Sep 2021 18:39:37 +0200 |
| parent | 8555:4f0f5b49bb03 |
| child | 12975:d10957394a3c |
line wrap: on
line source
local saslprep = require "util.encodings".stringprep.saslprep; local _ENV = nil; -- luacheck: std none local function external(self, message) message = saslprep(message); local state self.username, state = self.profile.external(message); if state == false then return "failure", "account-disabled"; elseif state == nil then return "failure", "not-authorized"; elseif state == "expired" then return "false", "credentials-expired"; end return "success"; end local function init(registerMechanism) registerMechanism("EXTERNAL", {"external"}, external); end return { init = init; }