opendkim: only display last sigerror

This commit is contained in:
missytake
2025-12-12 10:25:27 +01:00
committed by holger krekel
parent 40fd62c562
commit 70da217442

View File

@@ -10,7 +10,7 @@ if nsigs == nil then
end end
local valid = false local valid = false
local sigerrors = "" local error_msg = "No valid DKIM signature found."
for i = 1, nsigs do for i = 1, nsigs do
sig = odkim.get_sighandle(ctx, i - 1) sig = odkim.get_sighandle(ctx, i - 1)
sigres = odkim.sig_result(sig) sigres = odkim.sig_result(sig)
@@ -23,7 +23,7 @@ for i = 1, nsigs do
if sigres == 0 then if sigres == 0 then
valid = true valid = true
else else
sigerrors = sigerrors .. " " .. tostring(sigres) error_msg = "DKIM signature is invalid, error code " .. tostring(sigres) .. ", search https://github.com/trusteddomainproject/OpenDKIM/blob/master/libopendkim/dkim.h#L108"
end end
end end
@@ -34,7 +34,7 @@ if valid then
odkim.del_header(ctx, "DKIM-Signature", i) odkim.del_header(ctx, "DKIM-Signature", i)
end end
else else
odkim.set_reply(ctx, "554", "5.7.1", "No valid DKIM signature found. Search https://github.com/trusteddomainproject/OpenDKIM/blob/master/libopendkim/dkim.h#L108 for " .. sigerrors) odkim.set_reply(ctx, "554", "5.7.1", error_msg)
odkim.set_result(ctx, SMFIS_REJECT) odkim.set_result(ctx, SMFIS_REJECT)
end end