# HG changeset patch # User Kim Alvefur # Date 1640194451 -3600 # Node ID 8a5a9c1adb9021dc4751af85412ac8b0a9d51c3f # Parent c0cb8e86ad214a4ef002c0be45df2e6a0b6b74ab util.prosodyctl.cert: Copy SAN/wildcard certs only once diff -r c0cb8e86ad21 -r 8a5a9c1adb90 util/prosodyctl/cert.lua --- a/util/prosodyctl/cert.lua Wed Dec 22 15:32:04 2021 +0100 +++ b/util/prosodyctl/cert.lua Wed Dec 22 18:34:11 2021 +0100 @@ -223,10 +223,14 @@ local imported = {}; for _, host in ipairs(hostnames) do local paths = cm.find_cert_in_index(files_by_name, host); - if paths then + if paths and not imported[paths.certificate] then + -- One certificate, many mames! + table.insert(imported, host); + elseif paths then copy(paths.certificate, cert_basedir .. "/" .. host .. ".crt", nil, owner, group); copy(paths.key, cert_basedir .. "/" .. host .. ".key", "0377", owner, group); table.insert(imported, host); + imported[paths.certificate] = true; else -- TODO Say where we looked pctl.show_warning("No certificate for host "..host.." found :(");