Page MenuHomePhabricator

Inbound email processor reports "Unknown Sender"
Closed, InvalidPublic

Description

I have setup integration with Mailgun. Inbound emails are being parsed, but Phabricator is rejecting them.

When I reply to a task update, to comment on it, I get a failure message:

Error Processing Mail (Unknown Sender)
Your email to Phabricator was not processed, because an error occurred while trying to handle it:
This email was sent from "Alastair Battrick <Alastair.Battrick@----.co.uk>", but that address is not recognized by Phabricator and does not correspond to any known user account.

[I have redacted my work email]

We do not have metamta.insecure-auth-with-reply-to enabled

The users are populated by LDAP, and the email address does exist in my user details, when I go into settings.

I just updated phabricator and the issue persists.

Also, when I try and create a new task via email, I get:

Your email to Phabricator was not processed, because an error occurred while trying to handle it:
Phabricator can not process this mail because no application knows how to handle it. Check that the address you sent it to is correct.
(No concrete, enabled subclass of PhabricatorMailReceiver can accept this mail.)

I guess this is a different problem?

Event Timeline

ajbattrick raised the priority of this task from to Needs Triage.
ajbattrick updated the task description. (Show Details)
ajbattrick added projects: Maniphest, LDAP.
ajbattrick added a subscriber: ajbattrick.
btrahan claimed this task.
btrahan added a subscriber: btrahan.

These features work for the rest of our users and this installation, so this is very likely a configuration issue. I'm going to resolve this as "Invalid" under that theory as we're here to fix issues with the software and not provide configuration support. That said, here's some light configuration support, and please do let us know if you can prove this is a software bug with Phabricator.

Please make sure you've correctly followed the guide. https://secure.phabricator.com/book/phabricator/article/configuring_inbound_email/#configuring-phabricator

Also, when I try and create a new task via email, I get:

Your email to Phabricator was not processed, because an error occurred while trying to handle it:
Phabricator can not process this mail because no application knows how to handle it. Check that the address you sent it to is correct.
(No concrete, enabled subclass of PhabricatorMailReceiver can accept this mail.)

I guess this is a different problem?

Is this also happening on your instance or is this happening for you on this installation? If on your installation, please make sure you've configured application emails properly. e.g. https://secure.phabricator.com/applications/editemail/PhabricatorManiphestApplication/ is the URI to configure application emails for Maniphest on this install.

It is possible that this is caused by a combination of:

  • Old MySQL, causing collation issues (T7287);
  • the email address having uppercase letters; and
  • the inbound mail handler changing letter case.

You could test this theory by:

  • Verifying that you have a version of MySQL older than 5.5, then upgrading, running bin/storage adjust, and trying again; or
  • replacing the email address attached to your account with a lowercase version and trying again.

It is possible that this is caused by a combination of:

  • Old MySQL, causing collation issues (T7287);
  • the email address having uppercase letters; and
  • the inbound mail handler changing letter case.

You could test this theory by:

  • Verifying that you have a version of MySQL older than 5.5, then upgrading, running bin/storage adjust, and trying again; or
  • replacing the email address attached to your account with a lowercase version and trying again.

The email address is parsed via PhabricatorMailReceiver::getRawAddress, which does indeed normalize the email via PhutilEmailAddress and some phutil_utf8_strtolower action. The email->user mapping is then checked via PhabricatorUser::loadOneWithEmailAddress, which under the hood does a query like "address = $address".

So this is potentially a configuration issue with an old version of MySQL.

Yes, upgrading MySQL from 5.1 to 5.5 has resolved the first problem. Thank you.

Configuring Maniphest with an email address fixed the second problem. Thank you too

pasted_file (273×464 px, 184 KB)