Please whitelist cPanel in your adblocker so that you’re able to see our version release promotions, thanks!

The Community Forums

Interact with an entire community of cPanel & WHM users!

Mail Delivery Failure - Headers

Discussion in 'E-mail Discussion' started by apolix, Apr 23, 2007.

  1. apolix

    apolix Member

    Nov 16, 2006
    Likes Received:
    Trophy Points:
    Someone sent an email to an invalid address on one of my servers and Exim produced one of its trusty "Mail delivery failed: returning message to sender" messages.

    However the delivery report got rejected by the receiving MTA.

    Since the receiving MTA belongs to one of my suppliers I decided to ask them what the problem was. They informed me that they were using the "Received:" header to validate against Joe-Jobs and my header was invalid:
    Received: from [B]mailnull[/B] by with local (Exim 4.63)
            id 1HdiSe-0005i2-Uj
            for; Tue, 17 Apr 2007 09:50:48 +0200
    They then started quoting RFC's to me telling me that "mailnull" was invalid since it did not contain any dots in it. And how they were using Exim too and what did I break to get it to show that....

    Now I'm no expert on the SMTP RFC's but I have noticed that most cPanel servers produce headers like this when they produce delivery failure reports.

    What is my solution - can I hack Exim to produce better headers? Or is this other mail admin not interpretting the RFC's correctly?
  2. nisse

    nisse Well-Known Member

    Nov 11, 2003
    Likes Received:
    Trophy Points:
    This is the default behaviour for Exim for locally-received messages; instead of showing the host, it shows the local user the message originates from. Exim runs as the user mailnull.

    You can change the headers by adding the default headers to exim.conf and editing them:

    received_header_text = Received: \
    ${if def:sender_rcvhost {from $sender_rcvhost\n\t}\
    {${if def:sender_ident {from $sender_ident }}\
    ${if def:sender_helo_name {(helo=$sender_helo_name)\n\t}}}}\
    by $primary_hostname \
    ${if def:received_protocol {with $received_protocol}} \
    ${if def:tls_cipher {($tls_cipher)\n\t}}\
    (Exim $version_number)\n\t\
    id $message_id\
    ${if def:received_for {\n\tfor $received_for}}

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice