]> git.ipfire.org Git - thirdparty/git.git/commit - mailinfo.h
mailinfo: warn if CRLF found in decoded base64/QP email
authorĐoàn Trần Công Danh <congdanhqx@gmail.com>
Sun, 9 May 2021 17:12:10 +0000 (00:12 +0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 10 May 2021 06:06:22 +0000 (15:06 +0900)
commit0b689562cafc05b1a36bdea3d025c9ecdf2514bd
treea98d6735ed5e8c33dd10fee6d4c5c1de9a8b56db
parentdd9323b7fbda92b988bbfe835fd75c179a3b4780
mailinfo: warn if CRLF found in decoded base64/QP email

When SMTP servers receive 8-bit email messages, possibly with only
LF as line ending, some of them decide to change said LF to CRLF.

Some mailing list softwares, when receive 8-bit email messages,
decide to encode those messages in base64 or quoted-printable.

If an email is transfered through above mail servers, then distributed
by such mailing list softwares, the recipients will receive an email
contains a patch mungled with CRLF encoded inside another encoding.

Thus, such CR (in CRLF) couldn't be dropped by "mailsplit".
Hence, the mailed patch couldn't be applied cleanly.
Such accidents have been observed in the wild [1].

Instead of silently rejecting those messages, let's give our users
some warnings if such CR (as part of CRLF) is found.

[1]: https://nmbug.notmuchmail.org/nmweb/show/m2lf9ejegj.fsf%40guru.guru-group.fi

Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
mailinfo.c
mailinfo.h
t/t5100-mailinfo.sh
t/t5100/quoted-cr-info [new file with mode: 0644]
t/t5100/quoted-cr-msg [new file with mode: 0644]
t/t5100/quoted-cr-patch [new file with mode: 0644]
t/t5100/quoted-cr.mbox [new file with mode: 0644]