From: Phil Pennock Date: Fri, 13 Apr 2012 02:33:48 +0000 (-0700) Subject: Handle TAB, not just SP, in MAIL args. X-Git-Tag: exim-4_80_RC1~70^2 X-Git-Url: https://git.exim.org/users/heiko/exim.git/commitdiff_plain/7db8d07471d9e75fa506addff7f973c10a710895?hp=76ba6b0ad36260e9009b2d0861e222062589c514 Handle TAB, not just SP, in MAIL args. Analysis, diagnosis and variant patch by Todd Lyons. --- diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog index f24e1a8f9..ee63f414e 100644 --- a/doc/doc-txt/ChangeLog +++ b/doc/doc-txt/ChangeLog @@ -41,6 +41,10 @@ PP/10 Added dbmjz lookup type. PP/11 Let heimdal_gssapi authenticator take a SASL message without an authzid. +PP/12 MAIL args handles TAB as well as SP, for better interop with + non-compliant senders. + Analysis and variant patch by Todd Lyons. + Exim version 4.77 ----------------- diff --git a/src/src/smtp_in.c b/src/src/smtp_in.c index e79f0a202..476bbf0c2 100644 --- a/src/src/smtp_in.c +++ b/src/src/smtp_in.c @@ -983,7 +983,8 @@ if (*v != '=') return FALSE; n = v; while(isalpha(n[-1])) n--; -if (n[-1] != ' ') return FALSE; +/* RFC says SP, but TAB seen in wild and other major MTAs accept it */ +if (!isspace(n[-1])) return FALSE; n[-1] = 0; *name = n;