[Tickets #12990] Re: SMTP error message not included in IMP Compose error message for SMTP 550
noreply at bugs.horde.org
noreply at bugs.horde.org
Thu Mar 6 23:53:34 UTC 2014
DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.
Ticket URL: http://bugs.horde.org/ticket/12990
------------------------------------------------------------------------------
Ticket | 12990
Updated By | Michael Slusarz <slusarz at horde.org>
Summary | SMTP error message not included in IMP Compose error
| message for SMTP 550
Queue | Horde Framework Packages
Version | Git master
Type | Enhancement
State | Resolved
Priority | 1. Low
Milestone |
Patch |
Owners | Michael Slusarz
------------------------------------------------------------------------------
Michael Slusarz <slusarz at horde.org> (2014-03-06 16:53) wrote:
> The recent commit changing the message text still doesn't help in
> identifying the faulty address. It ends up intentionally hiding
> information from the end-user; information they need in order to fix
> their typo.
550 errors have nothing to do with "typos". That *may* be a cause,
but it certainly isn't the only cause. And it almost certainly isn't
the most common cause since the vast majority of SMTP servers do NOT
do mailbox verification during negotiation.
> It's not a problem with only one destination address, but when a
> user types an adhoc To/CC list including 10+ local users, typos do
> happen. WIth remote addresses, these just bounce later (with
> non-translated errors); but with local addresses, the message does
> not send until the error is corrected.
Again, 550 errors have nothing to do with typos. It may trigger one,
but 550 != invalid e-mail address.
> Not telling the user WHICH address is the problem is a bad idea, and
> that's just what hiding this message does.
I believe your issue is that you are expecting/wanting SMTP to do
email validation. Most people don't want this ... since it is
entirely site dependent.
>> And we shouldn't be showing the response text from the SMTP server to
>> the users if at all possible, since for non-english speakers it's not
>> going to make any sense.
>
> I understand the desire to translate everything in the UI, but the
> translation of "Mailbox unavailable", without any details, will help
> nobody; while "<test at example.com>... User unknown" (even
> untranslated) will at least tell the user WHERE the issue is.
Again... you are assuming this is an issue with e-mail addresses
format and/or existence. But most 550 errors have nothing to do with
this.
A far more common issue would be a DNS glitch. i.e. you send to
foo at example.com, but for some reason example.com is not resolvable at
the minute. By definition, this is a permanent error (example.com
doesn't exist) so this would be a 550.
So you obviously can't tell a user that their e-mail can't be sent
because foo at example.com is invalid or is mistyped because that is
simply an incorrect statement. And since there is no way of knowing
why the message transmission failed, you can't be any more specific
than that.
Which is why almost every SMTP server doesn't try to validate at the
submission stage anymore, since transient errors like the DNS issue
can be fixed without further user intervention (or the user even
knowing something was wrong).
If you want to be doing e-mail validation (for, say, local addresses),
there is an IMP hook for precisely these kind of purposes:
'compose_addr'.
More information about the bugs
mailing list