git-send-email: use sanitized address when reading mbox body
commitc852531f451331eb9d5ba57d154b0e150246a438
authorCsókás, Bence <csokas.bence@prolan.hu>
Mon, 1 Jul 2024 09:01:16 +0000 (1 11:01 +0200)
committerJunio C Hamano <gitster@pobox.com>
Mon, 1 Jul 2024 18:38:29 +0000 (1 11:38 -0700)
tree7f8eef5d6a46f7929ee2f3a8104a74f35d62f033
parent786a3e4b8d754d2b14b1208b98eeb0a554ef19a8
git-send-email: use sanitized address when reading mbox body

Addresses that are mentioned on the trailers in the commit log
messages (e.g., "Reviewed-by") are added to the "Cc:" list by "git
send-email".  These hand-written addresses, however, may be
malformed (e.g., having unquoted "." and other punctutation marks in
the display-name part) and can upset MTA.

The code does use the sanitize_address() helper on these
address-looking strings to turn them into valid addresses, but it is
used only to see if the address should be suppressed.  The original
string taken from the message is added to the @cc list if the code
decides the address is not suppressed.

Because the addresses on trailer lines are hand-written and more
likely to contain malformed addresses, when adding to the @cc list,
use the result from sanitize_address, not the original.  Note that
we do not modify the behaviour for addresses taken from the e-mail
headers, as they are more likely to be machine generated and
well-formed.

Signed-off-by: Csókás, Bence <csokas.bence@prolan.hu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-send-email.perl
t/t9001-send-email.sh