aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2022-06-01 15:06:59 +0200
committerKim Alvefur <zash@zash.se>2022-06-01 15:06:59 +0200
commit8db7cdc71321f4a367338df87a7e90629e741ff9 (patch)
tree45f40cd893e881f90912c63013cd944ee8ee4a80 /net
parentdabdfc91be04257db5a5aae48cb03bcbfb274425 (diff)
downloadprosody-8db7cdc71321f4a367338df87a7e90629e741ff9.tar.gz
prosody-8db7cdc71321f4a367338df87a7e90629e741ff9.zip
mod_saslauth: Implement RFC 9266 'tls-exporter' channel binding (#1760)
Brings back SCRAM-SHA-*-PLUS from its hiatus brought on by the earlier channel binding method being undefined for TLS 1.3, and the increasing deployment of TLS 1.3. See 1bfd238e05ad and #1542 Requires future version of LuaSec, once support for this key material export method is merged. See https://github.com/brunoos/luasec/pull/187
Diffstat (limited to 'net')
-rw-r--r--net/server_epoll.lua8
1 files changed, 8 insertions, 0 deletions
diff --git a/net/server_epoll.lua b/net/server_epoll.lua
index a546e1e3..b269bd9c 100644
--- a/net/server_epoll.lua
+++ b/net/server_epoll.lua
@@ -649,6 +649,14 @@ function interface:ssl_peerfinished()
return sock:getpeerfinished();
end
+function interface:ssl_exportkeyingmaterial(label, len, context)
+ local sock = self.conn;
+ if sock.exportkeyingmaterial then
+ return sock:exportkeyingmaterial(label, len, context);
+ end
+end
+
+
function interface:starttls(tls_ctx)
if tls_ctx then self.tls_ctx = tls_ctx; end
self.starttls = false;