diff options
author | Kim Alvefur <zash@zash.se> | 2024-02-21 21:29:16 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2024-02-21 21:29:16 +0100 |
commit | c0a302641495adfb6ddb5e0207c7c25c3dc09b51 (patch) | |
tree | ff0ff68f7f3276e6396a8602c61e0564f6f9b05d /plugins | |
parent | 5764e73a65351f9284e309fe423b3001fc4265c9 (diff) | |
download | prosody-c0a302641495adfb6ddb5e0207c7c25c3dc09b51.tar.gz prosody-c0a302641495adfb6ddb5e0207c7c25c3dc09b51.zip |
mod_s2s_auth_certs: Handle potential string error
conn:ssl_peerverification() can now return a single error in case the
connection has been closed for whatever reason
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/mod_s2s_auth_certs.lua | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/plugins/mod_s2s_auth_certs.lua b/plugins/mod_s2s_auth_certs.lua index 3606a6a0..2517c95f 100644 --- a/plugins/mod_s2s_auth_certs.lua +++ b/plugins/mod_s2s_auth_certs.lua @@ -1,7 +1,6 @@ module:set_global(); local cert_verify_identity = require "prosody.util.x509".verify_identity; -local NULL = {}; local log = module._log; local measure_cert_statuses = module:metric("counter", "checked", "", "Certificate validation results", @@ -23,8 +22,12 @@ module:hook("s2s-check-certificate", function(event) -- Is there any interest in printing out all/the number of errors here? if not chain_valid then log("debug", "certificate chain validation result: invalid"); - for depth, t in pairs(errors or NULL) do - log("debug", "certificate error(s) at depth %d: %s", depth-1, table.concat(t, ", ")) + if type(errors) == "table" then + for depth, t in pairs(errors) do + log("debug", "certificate error(s) at depth %d: %s", depth-1, table.concat(t, ", ")); + end + else + log("debug", "certificate error: %s", errors); end session.cert_chain_status = "invalid"; session.cert_chain_errors = errors; |