[exim] DSN Issue

Top Page
Delete this message
Reply to this message
Author: Andrew Johnson
Date:  
To: exim-users
Subject: [exim] DSN Issue
I've compiled a vanilla 4.86 exim binary from standard EDITME setup (with
the exception of removing eximon).



I've tried to send an email requesting DSN to a Non DSN Aware mail server
and would therefore expect a DSN to be generated, but none was ?



Debug output :-

Exim version 4.86 uid=0 gid=0 pid=2822 D=fbb95dfd

Berkeley DB: Berkeley DB 4.7.25: (June 10, 2015)

Support for: iconv() DKIM DNSSEC PRDR OCSP

Lookups (built-in): lsearch wildlsearch nwildlsearch iplsearch dbm dbmjz
dbmnz dnsdb

Authenticators:

Routers: accept dnslookup ipliteral manualroute queryprogram redirect

Transports: appendfile autoreply pipe smtp

Fixed never_users: 0

Size of off_t: 8

Compiler: GCC [4.4.7 20120313 (Red Hat 4.4.7-16)]

Library version: PCRE: Compile: 7.8

                       Runtime: 7.8 2008-09-05


Total 8 lookups

WHITELIST_D_MACROS unset

TRUSTED_CONFIG_LIST unset

changed uid/gid: forcing real = effective

uid=0 gid=0 pid=2822

auxiliary group list: <none>

seeking password data for user "root": cache not available

getpwnam() succeeded uid=0 gid=0

configuration file is /usr/exim/configure

log selectors = 0000cffc 00332001

cwd=/root 5 args: /usr/exim/bin//exim -C /usr/exim/configure -bd -d+expand

trusted user

admin user

DSN: dnslookupdsn propagating DSN

DSN: dnslookupnodsn propagating DSN

DSN: localusernodsn propagating DSN

DSN: localuserdsn propagating DSN

DSN: localuserfake propagating DSN

originator: uid=0 gid=0 login=root name=root

2822 listening on all interfaces (IPv4) port 25

2822 pid written to /var/spool/exim/exim-daemon.pid

2822 changed uid/gid: running as a daemon

2822 uid=93 gid=93 pid=2822

2822 auxiliary group list: 12 93

2822 LOG: MAIN

2822 exim 4.86 daemon started: pid=2822, no queue runs, listening for SMTP
on port 25 (IPv4)

2822 set_process_info: 2822 daemon: no queue runs, listening for SMTP on
port 25 (IPv4)

2822 daemon running with uid=93 gid=93 euid=93 egid=93

2822 Listening...

2822 Connection request from 127.0.0.1 port 45984

2822 search_tidyup called

2822 1 SMTP accept process running

2822 Listening...

2829 sender_fullhost = [127.0.0.1]

2829 sender_rcvhost = [127.0.0.1]

2829 Process 2829 is handling incoming connection from [127.0.0.1]

2829 checking for IP options

2829 no IP options found

2829 host in host_lookup? yes (matched "*")

2829 looking up host name for 127.0.0.1

2829 DNS lookup of 1.0.0.127.in-addr.arpa (PTR) succeeded

2829 Reverse DNS security status: unverified

2829 IP address lookup yielded "localhost"

2829 DNS lookup of localhost (A) gave HOST_NOT_FOUND

2829 returning DNS_NOMATCH

2829 no IP addresses found for localhost

2829 127.0.0.1 does not match any IP address for localhost

2829 sender_fullhost = [127.0.0.1]

2829 sender_rcvhost = [127.0.0.1]

2829 set_process_info: 2829 handling incoming connection from [127.0.0.1]

2829 host in host_reject_connection? no (option unset)

2829 host in sender_unqualified_hosts? no (option unset)

2829 host in recipient_unqualified_hosts? no (option unset)

2829 host in helo_verify_hosts? no (option unset)

2829 host in helo_try_verify_hosts? no (option unset)

2829 host in helo_accept_junk_hosts? no (option unset)

2829 expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full

2829    result: test.dsn.com ESMTP Exim 4.86 Fri, 30 Oct 2015 14:34:34 +0000


2829 SMTP>> 220 test.dsn.com ESMTP Exim 4.86 Fri, 30 Oct 2015 14:34:34 +0000

2829 Process 2829 is ready for new message

2829 smtp_setup_msg entered

2829 SMTP<< EHLO sendtest.com

2829 sendtest.com in helo_lookup_domains? no (end of list)

2829 sender_fullhost = (sendtest.com) [127.0.0.1]

2829 sender_rcvhost = [127.0.0.1] (helo=sendtest.com)

2829 set_process_info: 2829 handling incoming connection from
(sendtest.com) [127.0.0.1]

2829 host in dsn_advertise_hosts? yes (matched "*")

2829 host in pipelining_advertise_hosts? yes (matched "*")

2829 SMTP>> 250-test.dsn.com Hello sendtest.com [127.0.0.1]

2829 250-SIZE 52428800

2829 250-8BITMIME

2829 250-DSN

2829 250-PIPELINING

2829 250-PRDR

2829 250 HELP

2829 SMTP<< MAIL FROM: <fromuser5@???>

2829 SMTP>> 250 OK

2829 SMTP<< RCPT TO: <andrew.johnson@???> NOTIFY=SUCCESS,FAILURE

2829 DSN: Setting notify success

2829 DSN: Setting notify failure

2829 DSN Flags: c

2829 using ACL "acl_check_rcpt"

2829 processing "accept"

2829 accept: condition test succeeded in ACL "acl_check_rcpt"

2829 end of ACL "acl_check_rcpt": ACCEPT

2829 SMTP>> 250 Accepted

2829 DSN: orcpt: NULL flags: 12

2829 SMTP<< DATA

2829 SMTP>> 354 Enter message, ending with "." on a line by itself

2829 search_tidyup called

2829 host in ignore_fromline_hosts? no (option unset)

2829 >>Headers received:

2829 From: fromuser5@???

2829 To: andrew.johnson@???

2829 Subject: test

2829

2829 rewrite_one_header: type=F:

2829 From: fromuser5@???

2829 rewrite_one_header: type=T:

2829 To: andrew.johnson@???

2829 search_tidyup called

2829 >>Headers after rewriting and local additions:

2829 F From: fromuser5@???

2829 T To: andrew.johnson@???

2829 Subject: test

2829

2829 Data file written for message 1ZsAlG-0000jd-2L

2829 expanding: ${tod_full}

2829    result: Fri, 30 Oct 2015 14:34:34 +0000


2829 condition: def:sender_rcvhost

2829    result: true


2829 expanding: from $sender_rcvhost

2829

2829    result: from [127.0.0.1] (helo=sendtest.com)


2829

2829 condition: def:sender_ident

2829    result: false


2829 expanding: $sender_ident

2829    result:


2829 skipping: result is not used

2829 expanding: from ${quote_local_part:$sender_ident}

2829    result: from


2829 skipping: result is not used

2829 condition: def:sender_helo_name

2829    result: false


2829 expanding: (helo=$sender_helo_name)

2829

2829    result: (helo=)


2829

2829 skipping: result is not used

2829 expanding: ${if def:sender_ident {from
${quote_local_part:$sender_ident} }}${if def:sender_helo_name
{(helo=$sender_helo_name)

2829 }}

2829    result:


2829 skipping: result is not used

2829 condition: def:received_protocol

2829    result: true


2829 expanding: with $received_protocol

2829    result: with esmtp


2829 condition: def:sender_address

2829    result: true


2829 expanding: (envelope-from <$sender_address>)

2829

2829    result: (envelope-from <fromuser5@???>)


2829

2829 condition: def:received_for

2829    result: true


2829 expanding:

2829 for $received_for

2829    result:


2829 for andrew.johnson@???

2829 expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost

2829 }{${if def:sender_ident {from ${quote_local_part:$sender_ident}
}}${if def:sender_helo_name {(helo=$sender_helo_name)

2829 }}}}by $primary_hostname ${if def:received_protocol {with
$received_protocol}} (Exim $version_number)

2829 ${if def:sender_address {(envelope-from <$sender_address>)

2829 }}id $message_exim_id${if def:received_for {

2829 for $received_for}}

2829    result: Received: from [127.0.0.1] (helo=sendtest.com)


2829 by test.dsn.com with esmtp (Exim 4.86)

2829 (envelope-from <fromuser5@???>)

2829 id 1ZsAlG-0000jd-2L

2829 for andrew.johnson@???

2829 >>Generated Received: header line

2829 P Received: from [127.0.0.1] (helo=sendtest.com)

2829 by test.dsn.com with esmtp (Exim 4.86)

2829 (envelope-from <fromuser5@???>)

2829 id 1ZsAlG-0000jd-2L

2829 for andrew.johnson@???; Fri, 30 Oct 2015 14:34:34 +0000

2829 using ACL "acl_check_data"

2829 processing "accept"

2829 accept: condition test succeeded in ACL "acl_check_data"

2829 end of ACL "acl_check_data": ACCEPT

2829 calling local_scan(); timeout=300

2829 local_scan() returned 0 NULL

2829 expanding: ${tod_full}

2829    result: Fri, 30 Oct 2015 14:34:34 +0000


2829 Writing spool header file

2829 DSN: Write SPOOL :-dsn_envid NULL

2829 DSN: Write SPOOL :-dsn_ret 0

2829 DSN: Flags :12

2829 DSN: **** SPOOL_OUT - address: |andrew.johnson@???| errorsto:
|NULL| orcpt: |NULL| dsn_flags: 12

2829 Size of headers = 295

2829 LOG: MAIN

2829 <= fromuser5@??? H=(sendtest.com) [127.0.0.1] P=esmtp
S=319

2829 SMTP>> 250 OK id=1ZsAlG-0000jd-2L

2829 search_tidyup called

2829 Sender: fromuser5@???

2829 Recipients:

2829 andrew.johnson@???

2829 forked delivery process 2830

2829 Process 2829 is ready for new message

2829 smtp_setup_msg entered

2830 exec /usr/exim/bin/exim -d=0xfbbd5dfd -Mc 1ZsAlG-0000jd-2L

2830 Exim version 4.86 uid=93 gid=93 pid=2830 D=fbbd5dfd

Berkeley DB: Berkeley DB 4.7.25: (June 10, 2015)

Support for: iconv() DKIM DNSSEC PRDR OCSP

Lookups (built-in): lsearch wildlsearch nwildlsearch iplsearch dbm dbmjz
dbmnz dnsdb

Authenticators:

Routers: accept dnslookup ipliteral manualroute queryprogram redirect

Transports: appendfile autoreply pipe smtp

Fixed never_users: 0

Size of off_t: 8

Compiler: GCC [4.4.7 20120313 (Red Hat 4.4.7-16)]

Library version: PCRE: Compile: 7.8

                       Runtime: 7.8 2008-09-05


2830 Total 8 lookups

WHITELIST_D_MACROS unset

TRUSTED_CONFIG_LIST unset

2830 Exim has no root privilege: uid=93 gid=93 euid=93 egid=93

2830 changed uid/gid: forcing real = effective

2830 uid=93 gid=93 pid=2830

2830 auxiliary group list: 12 93

2830 seeking password data for user "root": cache not available

2830 getpwnam() succeeded uid=0 gid=0

2830 configuration file is /usr/exim/configure

2830 log selectors = 0000cffc 00332001

2830 cwd=/var/spool/exim 4 args: /usr/exim/bin/exim -d=0xfbbd5dfd -Mc
1ZsAlG-0000jd-2L

2830 trusted user

2830 admin user

2830 DSN: dnslookupdsn propagating DSN

2830 DSN: dnslookupnodsn propagating DSN

2830 DSN: localusernodsn propagating DSN

2830 DSN: localuserdsn propagating DSN

2830 DSN: localuserfake propagating DSN

2830 set_process_info: 2830 delivering specified messages

2830 set_process_info: 2830 delivering 1ZsAlG-0000jd-2L

2830 reading spool file 1ZsAlG-0000jd-2L-H

2830 user=exim uid=93 gid=93 sender=fromuser5@???

2830 sender_fullhost = (sendtest.com) [127.0.0.1]

2830 sender_rcvhost = [127.0.0.1] (helo=sendtest.com)

2830 sender_local=0 ident=unset

2830 Non-recipients:

2830 Empty Tree

2830 ---- End of tree ----

2830 recipients_count=1

2830 **** SPOOL_IN - Exim 4 standard format spoolfile

2830 **** SPOOL_IN - address: |andrew.johnson@???| orcpt: |NULL|
dsn_flags: 12

2830 body_linecount=1 message_linecount=8

2830 DSN: set orcpt: NULL flags: 12

2830 Delivery address list:

2830 andrew.johnson@???

2830 locking /var/spool/exim/db/retry.lockfile

2830 locked /var/spool/exim/db/retry.lockfile

2830 EXIM_DBOPEN(/var/spool/exim/db/retry)

2830 returned from EXIM_DBOPEN

2830 no retry data available

2830 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

2830 Considering: andrew.johnson@???

2830 unique = andrew.johnson@???

2830 no domain retry record

2830 no address retry record

2830 andrew.johnson@???: queued for routing

2830 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

2830 routing andrew.johnson@???

2830 --------> dnslookupdsn router <--------

2830 local_part=andrew.johnson domain=cwipapps.net

2830 checking domains

2830 cwipapps.net in "nhs.net"? no (end of list)

2830 dnslookupdsn router skipped: domains mismatch

2830 --------> dnslookupnodsn router <--------

2830 local_part=andrew.johnson domain=cwipapps.net

2830 checking domains

2830 cwipapps.net in "cwipapps.net"? yes (matched "cwipapps.net")

2830 calling dnslookupnodsn router

2830 dnslookupnodsn router called for andrew.johnson@???

2830 domain = cwipapps.net

2829 SMTP>> 421 test.dsn.com lost input connection

2829 LOG: smtp_connection MAIN

2829 SMTP connection from (sendtest.com) [127.0.0.1] lost

2829 search_tidyup called

2822 child 2829 ended: status=0x100

2822 normal exit, 1

2822 0 SMTP accept processes now running

2822 Listening...

2830 DNS lookup of cwipapps.net (MX) succeeded

2830 DNS lookup of mx1.cwipapps.net (A) succeeded

2830 194.6.10.110 in "0.0.0.0 : 127.0.0.0/8"? no (end of list)

2830 fully qualified name = cwipapps.net

2830 host_find_bydns yield = HOST_FOUND (2); returned hosts:

2830 mx1.cwipapps.net 194.6.10.110 MX=10

2830 set transport remote_smtp

2830 queued for remote_smtp transport: local_part = andrew.johnson

2830 domain = cwipapps.net

2830 errors_to=NULL

2830 domain_data=NULL localpart_data=NULL

2830 routed by dnslookupnodsn router

2830 envelope to: andrew.johnson@???

2830 transport: remote_smtp

2830 host mx1.cwipapps.net [194.6.10.110] MX=10

2830 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

2830 After routing:

2830 Local deliveries:

2830 Remote deliveries:

2830     andrew.johnson@???


2830 Failed addresses:

2830 Deferred addresses:

2830 search_tidyup called

2830 >>>>>>>>>>>>>>>> Remote deliveries >>>>>>>>>>>>>>>>

2830 --------> andrew.johnson@??? <--------

2830 search_tidyup called

2830 set_process_info: 2830 delivering 1ZsAlG-0000jd-2L: waiting for a
remote delivery subprocess to finish

2830 selecting on subprocess pipes

2831 changed uid/gid: remote delivery to andrew.johnson@??? with
transport=remote_smtp

2831 uid=93 gid=93 pid=2831

2831 auxiliary group list: 12 93

2831 set_process_info: 2831 delivering 1ZsAlG-0000jd-2L using remote_smtp

2831 remote_smtp transport entered

2831 andrew.johnson@???

2831 cwipapps.net in queue_smtp_domains? no (option unset)

2831 checking status of mx1.cwipapps.net

2831 locking /var/spool/exim/db/retry.lockfile

2831 locked /var/spool/exim/db/retry.lockfile

2831 EXIM_DBOPEN(/var/spool/exim/db/retry)

2831 returned from EXIM_DBOPEN

2831 no retry data available

2831 mx1.cwipapps.net [194.6.10.110] status = usable

2831 194.6.10.110 in serialize_hosts? no (option unset)

2831 delivering 1ZsAlG-0000jd-2L to mx1.cwipapps.net [194.6.10.110]
(andrew.johnson@???)

2831 set_process_info: 2831 delivering 1ZsAlG-0000jd-2L to mx1.cwipapps.net
[194.6.10.110] (andrew.johnson@???)

2831 Connecting to mx1.cwipapps.net [194.6.10.110]:25 ... connected

2831 expanding: $primary_hostname

2831    result: test.dsn.com


2831 read response data: size=70

2831 SMTP<< 220 mx1.cwipapps.net ESMTP Exim 4.43 Fri, 30 Oct 2015 14:34:34
+0000

2831 194.6.10.110 in hosts_avoid_esmtp? no (option unset)

2831 SMTP>> EHLO test.dsn.com

2831 read response data: size=122

2831 SMTP<< 250-mx1.cwipapps.net Hello vps1.sappsys.co.uk [185.35.77.202]

2831          250-SIZE 41943040


2831          250-PIPELINING


2831          250-STARTTLS


2831          250 HELP


2831 194.6.10.110 in hosts_avoid_pipelining? no (option unset)

2831 using PIPELINING

2831 use_dsn=0

2831 194.6.10.110 in hosts_require_auth? no (option unset)

2831 SMTP>> MAIL FROM:<fromuser5@???> SIZE=1352

2831 SMTP>> RCPT TO:<andrew.johnson@???>

2831 SMTP>> DATA





Config :-

primary_hostname = test.dsn.com



domainlist local_domains = local.dsn.com

domainlist fake_domains = fakedomain.com

hostlist relay_from_hosts = localhost



acl_smtp_rcpt = acl_check_rcpt

acl_smtp_data = acl_check_data



dsn_advertise_hosts = *



qualify_domain = sender.dsn.com

qualify_recipient = recipient.dsn.com





never_users = root



host_lookup = *



rfc1413_hosts = *

rfc1413_query_timeout = 0s





# Enable an efficiency feature. We advertise the feature; clients

# may request to use it. For multi-recipient mails we then can

# reject or accept per-user after the message is received.

#

prdr_enable = true



log_selector = +smtp_protocol_error +smtp_syntax_error \

        +tls_certificate_verified






ignore_bounce_errors_after = 2d



timeout_frozen_after = 7d





begin acl



acl_check_rcpt:



accept



acl_check_data:



accept





begin routers



dnslookupdsn:

driver = dnslookup

domains = dummydomain.net

transport = remote_smtp

ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8

# if ipv6-enabled then instead use:

# ignore_target_hosts = <; 0.0.0.0 ; 127.0.0.0/8 ; ::1

# dsn_lasthop



dnslookupnodsn:

driver = dnslookup

domains = cwipapps.net

transport = remote_smtp

ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8

# if ipv6-enabled then instead use:

# ignore_target_hosts = <; 0.0.0.0 ; 127.0.0.0/8 ; ::1

# dsn_lasthop



localusernodsn:

driver = accept

domains = +local_domains

condition = ${if eq{${lc:$local_part}}{nodsn}}

transport = local_deliverynodsn

cannot_route_message = Unknown user



localuserdsn:

driver = accept

domains = +local_domains

transport = local_deliverydsn

cannot_route_message = Unknown user



localuserfake:

driver = accept

domains = +fake_domains

transport = local_deliveryfake

cannot_route_message = Unknown user





begin transports



remote_smtp:

driver = smtp





local_deliverynodsn:

driver = appendfile

file = /var/mail/nodsn

delivery_date_add

envelope_to_add

return_path_add

group = mail

# mode = 0660



local_deliverydsn:

driver = appendfile

file = /var/mail/dsn

delivery_date_add

envelope_to_add

return_path_add

group = mail

# mode = 0660



local_deliveryfake:

driver = appendfile

file = /var/mail/fake

delivery_date_add

envelope_to_add

return_path_add

group = mail

# mode = 0660



begin retry



# Address or Domain    Error       Retries


# -----------------    -----       -------




*                      *           F,2h,15m; G,16h,1h,1.5; F,4d,6h




begin rewrite



begin authenticators