Page MenuHomePhabricator

Improve Amazon SES code error handling behavior
ClosedPublic

Authored by epriestley on Apr 6 2016, 12:02 AM.
Tags
None
Referenced Files
F13236144: D15632.diff
Tue, May 21, 8:25 AM
F13226887: D15632.id37671.diff
Sun, May 19, 11:53 PM
F13221696: D15632.diff
Sun, May 19, 2:58 AM
F13204158: D15632.diff
Wed, May 15, 12:22 AM
F13186969: D15632.diff
Sat, May 11, 4:15 AM
Unknown Object (File)
Tue, May 7, 7:19 AM
Unknown Object (File)
Fri, May 3, 5:53 AM
Unknown Object (File)
Wed, May 1, 1:17 PM
Subscribers
None

Details

Summary

Fixes T10728. Fixes T10476. SES uses third-party code with unique, creative ideas about error handling.

  • Make the error handling behavior more correct, so it doesn't try to use undefined variables.
  • Simplify the error handling behavior (throw exceptions sooner, remove redundant code).
  • Explicitly test for -smtp misconfigurations. These can arise if you read the wrong column out of the table in the AWS docs, as in T10728.
  • Explicitly test for SimpleXML, to catch T10476 before it does damage.
Test Plan
  • Configured SES to use a bogus SMTP endpoint.
  • Faked past the SMTP check, hit sane error on the connection.
  • Undid faking, hit immediate hard stop on the STMP check.

Diff Detail

Repository
rP Phabricator
Branch
ses2
Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 11536
Build 14404: Run Core Tests
Build 14403: arc lint + arc unit