mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-28 09:42:41 +01:00
516ba5e6c5
Summary: Ref T10121. If a user sends mail with duplicate headers, like: ``` X-Duplicate: A X-Duplicate: B ``` ...and we process it with `mail_handler.php`, we may end up with `array('A', 'B')` as the header value. When we try to write this back into an error response mail, it fails. Test Plan: - Generated a message with duplicate headers. - Piped it into `mail_handler.php` with `--process-duplicates` and `--trace` to get a look at it. - Faked an exception. - Before patch: bad error email. - After patch: clean error email showing multiple header values. ``` $ ./bin/mail show-outbound --id 12386 PROPERTIES ID: 12386 Status: queued Related PHID: Message: PARAMETERS sensitive: 1 is-error: 1 force: 1 subject: Error Processing Mail (Exception) raw-to: ["epriestley@phacility.com"] HEADERS X-Phabricator-Sent-This-Message: Yes X-Mail-Transport-Agent: MetaMTA X-Auto-Response-Suppress: All TEXT BODY Your email to Phabricator was not processed, because an error occurred while trying to handle it: Exception: TEST -- Original Message Body ----------------------------------------------------- testy testy -- Original Message Headers -------------------------------------------------- from: Evan Priestley <epriestley@phacility.com> content-type: text/plain; charset=us-ascii content-transfer-encoding: 7bit x-smtp-server: smtp.gmail.com:epriestley@phacility.com subject: test outbound mail message-id: 7isvptmllqvdvtdxthvdwzg3woj5au7csyuh3hopypjv6y6hqb32qm4bcrd4jtid x-universally-unique-identifier: 4E489E20-F674-49B2-94BA-0DE44F504EAA date: Mon, 11 Jan 2016 09:50:12 -0800 date: Mon, 11 Jan 2016 09:50:13 -0800 date: Mon, 11 Jan 2016 09:50:14 -0800 date: Mon, 11 Jan 2016 09:50:15 -0800 to: epriestley@yghe.net mime-version: 1.0 (Mac OS X Mail 8.2 \(2104\)) HTML BODY (This message has no HTML body.) ``` Reviewers: chad Reviewed By: chad Maniphest Tasks: T10121 Differential Revision: https://secure.phabricator.com/D14996 |
||
---|---|---|
.. | ||
action | ||
adapter | ||
application | ||
applicationpanel | ||
command | ||
constants | ||
contentsource | ||
controller | ||
edge | ||
editor | ||
exception | ||
garbagecollector | ||
herald | ||
management | ||
parser | ||
phid | ||
query | ||
receiver | ||
replyhandler | ||
storage | ||
typeahead | ||
view | ||
PhabricatorMetaMTAWorker.php |