Discussion:
Envelope sender is empty; exim
(too old to reply)
Peter Pearson
2017-03-19 16:37:35 UTC
Permalink
I'm suddenly having trouble with my SMTP provider refusing
to accept my outgoing email. I *think* it's because my
envelope sender field is empty, and I haven't succeeded in
getting my MTA, exim4, to use the correct value.

There are two reasons why I think the envelope sender field is
empty. First, when exim attempts to send a message, it reports
this conversation with the SMTP server (comments in []):

SMTP<< 220 mailfront10.runbox.com ESMTP Exim 4.82 [snip]
SMTP>> EHLO pisaster.localdomain
SMTP<< 250-mailfront10.runbox.com Hello 71-84-9-95 [snip]
250-SIZE 136314880
250-8BITMIME
250-PIPELINING
250-AUTH PLAIN LOGIN
250-STARTTLS
250 HELP
SMTP>> STARTTLS
SMTP<< 220 TLS go ahead
SMTP>> EHLO pisaster.localdomain
SMTP<< 250-mailfront10.runbox.com Hello 71-84-9-95 [snip]
250-SIZE 136314880
250-8BITMIME
250-PIPELINING
250-AUTH PLAIN LOGIN
250 HELP
SMTP>> MAIL FROM:<> SIZE=4391 [*** Note the <>]
SMTP>> RCPT TO:<***@runbox.com>
SMTP>> DATA
SMTP<< 250 OK
SMTP<< 550 71.84.9.95 is listed at zen.spamhaus.org
SMTP<< 503-All RCPT commands were rejected with this error:
503-71.84.9.95 is listed at zen.spamhaus.org
503 Valid RCPT command must precede DATA
SMTP>> QUIT

(zen.spamhaus.org is reporting that my ISP, Charter, urges that nobody
but Charter should provide SMTP service to this IP address. Charter's
SMTP service is atrocious, so I use Runbox's SMTP service. Runbox says
that zen.spamhaus.org would not be consulted if my email were
"configured properly". I infer that it's the "MAIL FROM:<>" causing the
trouble.)

Secondly, when I list the queue of waiting-to-go-out messages,
I see this:

$ sudo mailq -v
13h 1.5K 1cpQmP-0006iu-1K <> *** frozen ***
***@runbox.com

10h 1.5K 1cpTYV-0007BK-6I <> *** frozen ***
***@runbox.com

10h 1.6K 1cpTmP-0007DE-H6 <> *** frozen ***
***@runbox.com

As I understand it, the "<>" is supposed to be the envelope sender
address. If so, the value is not getting correctly set.

I have created files named

/etc/exim4/conf.d/main/000_localmacros
/etc/exim4/exim4.conf.localmacros

containing the line

MAIN_TRUSTED_USERS = uucp:peter

Also, the files

./exim4.conf.template
./conf.d/main/02_exim4-config_options

contain the line

untrusted_set_sender = *

and my .muttrc contains the line

set sendmail="/usr/lib/sendmail -oi -***@runbox.com"

and I can't think of anything more I can do to get the correct
envelope sender address into play.

I'm sorry for the length of this post, and for the feeling that this
might be more of an exim question than a mutt question. Any guidance
would be much appreciated.
--
To email me, substitute nowhere->runbox, invalid->com.
Jorgen Grahn
2017-03-19 17:12:10 UTC
Permalink
Post by Peter Pearson
I'm suddenly having trouble with my SMTP provider refusing
to accept my outgoing email. I *think* it's because my
envelope sender field is empty, and I haven't succeeded in
getting my MTA, exim4, to use the correct value.
There are two reasons why I think the envelope sender field is
empty. First, when exim attempts to send a message, it reports
...
Post by Peter Pearson
SMTP>> MAIL FROM:<> SIZE=4391 [*** Note the <>]
That's an envelope sender alright, and it's empty. That's not what
people generally want it to be: it's there so that a bounce mail can
be generated if SMTP fails somewhere further along the path.

I think only bounce mails themselves should go without an envelope
sender. Although I haven't played much with SMTP in recent years.

...
Post by Peter Pearson
I'm sorry for the length of this post, and for the feeling that this
might be more of an exim question than a mutt question. Any guidance
would be much appreciated.
Sorry; I have no more immediate help to offer. I don't use Exim, just
Postfix and (more recently) OpenBSD's smtpd.

You're right though that the things involved are:
- the mail Mutt pipes into sendmail(8)
- the sendmail(8) flags Mutt uses (I keep mine at the defaults)
- your Exim config

You can cut Mutt out of the equation by saving a mail you think looks fine,
and feed it into sendmail manually.

/Jorgen
--
// Jorgen Grahn <grahn@ Oo o. . .
\X/ snipabacken.se> O o .
Peter Pearson
2017-03-19 17:34:44 UTC
Permalink
Post by Jorgen Grahn
Sorry; I have no more immediate help to offer. I don't use Exim, just
Postfix and (more recently) OpenBSD's smtpd.
- the mail Mutt pipes into sendmail(8)
- the sendmail(8) flags Mutt uses (I keep mine at the defaults)
- your Exim config
You can cut Mutt out of the equation by saving a mail you think looks fine,
and feed it into sendmail manually.
Thank you for your prompt reply and insightful suggestions. I've made a
note to look at OpenBSD's smtpd if a change of MTA looks advisable.

My problem has become much less urgent, as I will post shortly.

Ever since sendmail, it has seemed that configuring an MTA for my
simple needs is more difficult than writing one.
--
To email me, substitute nowhere->runbox, invalid->com.
Ian Zimmerman
2017-03-20 19:28:32 UTC
Permalink
Post by Peter Pearson
Ever since sendmail, it has seemed that configuring an MTA for my
simple needs is more difficult than writing one.
Why not ask in the exim-users mailing list? It seems to be the proper
place for this issue. And we're very friendly there :-)

https://lists.exim.org/mailman/listinfo/exim-users
--
Please *no* private Cc: on mailing lists and newsgroups
Personal signed mail: please _encrypt_ and sign
Don't clear-text sign: http://cr.yp.to/smtp/8bitmime.html
Peter Pearson
2017-03-19 17:45:18 UTC
Permalink
Post by Peter Pearson
I'm suddenly having trouble with my SMTP provider refusing
to accept my outgoing email. I *think* it's because my
envelope sender field is empty, and I haven't succeeded in
getting my MTA, exim4, to use the correct value.
Although I haven't solved the problem of getting a non-null envelope
sender field, I *have* found that if I give my MTA the correct login
information for my SMTP provider, then the successful login makes my
SMTP provider tolerant of the null envelope sender field, and it will
now accept my mail.

TLDR: The question remains unanswered, but is no longer urgent.
--
To email me, substitute nowhere->runbox, invalid->com.
Jorgen Grahn
2017-03-19 20:29:25 UTC
Permalink
Post by Peter Pearson
Post by Peter Pearson
I'm suddenly having trouble with my SMTP provider refusing
to accept my outgoing email. I *think* it's because my
envelope sender field is empty, and I haven't succeeded in
getting my MTA, exim4, to use the correct value.
Although I haven't solved the problem of getting a non-null envelope
sender field, I *have* found that if I give my MTA the correct login
information for my SMTP provider, then the successful login makes my
SMTP provider tolerant of the null envelope sender field, and it will
now accept my mail.
TLDR: The question remains unanswered, but is no longer urgent.
Note though that you may not get bounce messages when you
e.g. misspell an address. That can lead to unfortunate
misunderstandings.

For me it would still be semi-urgent.

/Jorgen
--
// Jorgen Grahn <grahn@ Oo o. . .
\X/ snipabacken.se> O o .
Loading...