-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Exim: Failed to get envelope sender in "Return-path:" field #1354
Comments
Hi @dpc22 , Could you please show us the content (at least the subject and the body) of that " out of office message" ? |
I don't have a copy of the subject line. The out of office was generated by Exchange Online, so it will probably be of the form:
so:
The message content is recorded in the Sympa logs:
|
As a workaround, you may disable |
Don't people have to email sympa@mydomain in order to send email commands to the list? For example: From: David Carter dpc22@cam.ac.uk responses:
|
Exactly. The definition for this email address is included in setting of MTA as an alias, and may be removed if none uses mail commands. |
Hi @dpc22 , It turned out that, as of Sympa 6.2.13 or later, the response "No command found in message." was sent as DSN by Sympa (cf. the commit). Sympa won't send DSN as a response to the incoming message with null envelope sender. Additionally, Sympa won't process the message with null envelope sender: Instead it will be ignored with this log:
Thus, there seem no problem. |
Anyways it is worth sending the first response "Your message to the list 'XXX' has been forwarded to the moderator(s)" as an DSN: Legitimate autoresponders won't respond to DSNs. Please check the PR above. |
I'm puzzled by:
as Sympa 6.2.66 was definitely generating these "No command found in message" responses to out of office messages with null envelope sender earlier in the year. Does (#1508) change the behaviour in some way? It isn't immediately clear to me what that does. Thanks. |
Sympa 6.2.66 rejects such messages: sympa/src/lib/Sympa/Spindle/DoCommand.pm Lines 72 to 81 in b17e3bb
What is possible is that that out of office message did not have the null envelope sender.
No. This PR changes the first message described in above to the DSN. Thus auto-responder will not respond to the messages, i.e. out of office message will not be sent. |
The log entry that I quoted when I opened the ticket indicated a null envelope sender (the
I guess that it is possible that something else is going on here. I will do some testing. |
The following SMTP dialogue generates a "No command found in message" response to dpc22@cam.c.uk with Sympa 6.2.68:
You should be able to replicate that. I don't think that I have made any local changes which would affect this behaviour. |
Please show the log of Sympa from when the maili server accepted the message to when Sympa responded (or didn't respond) to that message. |
|
Envelope sender isn't passed from Postfix to Sympa. Expected log line is such as:
You probably set up Postfix with "virtual domain setting" described in the manual. If you did, review the setting in |
I am running Exim. Wouldn't "envelope_sender=" indicate an empty envelope sender address? "<>" is just quoting around the actual value. That certainly appears to be true of other email addresses which are quoted in the Sympa logs. There are never any "<" or ">" after the "envelope_sender=" clauses in my logs. Example: envelope_sender=dpc22@cam.ac.uk |
Oh sorry. On Exim, pipe transport(s) for Sympa should have |
Aha. If it is looking for a "Return-Path: " header in the message body that would explain things. |
Okay, I added return_path_add to my Exim configuration. That didn't fix the problem, although I agree that it should. After a lot of head scratching, I think that this is just because the header that Exim adds to the message is "Return-path" rather than "Return-Path" (note the case of "path"). The Exim source contains:
If I log "$serialized" in Sympa/Message.pm I see:
That doesn't match the following in Sympa/Message.pm:
I confess that I don't know what "\G" does in Perl regular expressions, but "Return-Path" rather than "Return-path" seems to be significant. Presumably we can use just add an "i" modifier to the end of "/cgs" |
@dpc22, thank you for investigation. The PR above will fix the problem. |
Exim: Failed to get envelope sender in "Return-path:" field (#1354)
Version
6.2.66
Installation method
My own rpm, derived from the "official" RHEL 7 rpms
Expected behavior
If someone sends a message to a moderated list, they receive a notification message as you would expect:
If they have also set up an out of office message on the mailbox which receives this notification then (at least when using Exchange Online) this out of office message is send to sympa@domain with an empty SMTP return path (the "<>" below):
I would not expect this to generate any further messages given the potential for confusion and mail loops.
Actual behavior
Sympa appears to fish a sending email address from the out of office message and complains:
I think that Sympa should test for the empty return path here before it attempts to process the message as a list of commands.
The text was updated successfully, but these errors were encountered: