From: Jeremy Harris Date: Sat, 24 Mar 2018 13:53:50 +0000 (+0000) Subject: ARC: give more detail with "bad signing-spec" message X-Git-Url: https://git.exim.org/users/jgh/exim.git/commitdiff_plain/47dc3814944d1b0365e196e1f48190fe220c2a5f?ds=inline;hp=abc01b4f3ea60198b92c397df5aa8c5cc2c07fb2 ARC: give more detail with "bad signing-spec" message --- diff --git a/doc/doc-txt/experimental-spec.txt b/doc/doc-txt/experimental-spec.txt index 3389632a2..bc5bab77d 100644 --- a/doc/doc-txt/experimental-spec.txt +++ b/doc/doc-txt/experimental-spec.txt @@ -802,7 +802,8 @@ arc_sign = : : An option on the smtp transport, which constructs and prepends to the message an ARC set of headers. The textually-first Authentication-Results: header is used as a basis (you must have added one on entry to the ADMD). -Expanded; if unset, empty or forced-failure then no signing is done. +Expanded as a whole; if unset, empty or forced-failure then no signing is done. +If it is set, all three elements must be non-empty. diff --git a/src/src/arc.c b/src/src/arc.c index f4ae096bc..eb143b697 100644 --- a/src/src/arc.c +++ b/src/src/arc.c @@ -1536,7 +1536,8 @@ selector = string_nextinlist(&signspec, &sep, NULL, 0); if ( !*identity | !*selector || !(privkey = string_nextinlist(&signspec, &sep, NULL, 0)) || !*privkey) { - log_write(0, LOG_MAIN|LOG_PANIC, "ARC: bad signing-specification"); + log_write(0, LOG_MAIN|LOG_PANIC, "ARC: bad signing-specification (%s)", + !*identity ? "identity" : !*selector ? "selector" : "private-key"); return NULL; } if (*privkey == '/' && !(privkey = expand_file_big_buffer(privkey)))