This is a multi-part message in MIME format.
--
[ Picked text/plain from multipart/alternative ]
Hello,
I would like to change the way Exim responds to unrouteable addresses.
Currently, when I send out email to an unrouteable address, my Outlook comes
back immediately with what seems to be outlook's own internal message
saying:
------------------------------------------------------
Your message did not reach some or all of the intended recipients.
Subject: test
Sent: 2/18/2003 10:46 AM
The following recipient(s) could not be reached:
'someone@???' on 2/18/2003 10:46 AM
No transport provider was available for delivery to this
recipient.
Insight server log sais:
------------------------------------------------------
Feb 18 10:46:28 linux exim[11339]: 2003-02-18 10:46:28 H=(bill)
[192.168.0.59] F=<tflorian@???> rejected RCPT
<someone@???>: Unrouteable address
This is a problem for me because if I send out an email to a group of people
and even one turns out to have unrouteable address, all of them are rejected
and not even the valid ones are delivered. How can I change my
configuration so that the server tries all of the other email addresses even
if one of them is unrouteable?
In the case of Unknown user errors etc, I get the wanted behavior of the
server trying to deliver all of the recipients and sending back
undeliverable messages to those that failed.
Below is my config file
Thanks,
Tomas Florian
tls_advertise_hosts = *
LDAP_AUTH_QUERY = ldap://127.0.0.1/c=US?uid?sub?(uid=${quote_ldap:$2})
LDAP_AUTH_EXPR = ${lookup ldap {user="$value" pass=$3
LDAP_AUTH_QUERY}{1}{0}}
LDAP_AUTH_BIND = ${lookup ldapdn {LDAP_AUTH_QUERY}{LDAP_AUTH_EXPR}{0}}
acl_smtp_rcpt = acl_check_rcpt
ignore_bounce_errors_after = 2d
domainlist local_domains = @ : vrv.homeip.net
primary_hostname = vrv.homeip.net
domainlist relay_to_domains = 127.0.0.1 : *
hostlist relay_from_hosts = 127.0.0.1 : *.vrv.ca : 192.168.0.0/16 :
mail.vrv.ca
recipients_max_reject = false
strip_excess_angle_brackets = true
strip_trailing_dot = false
begin acl
acl_check_rcpt:
deny local_parts = ^.*[@%!/|]
accept local_parts = postmaster
domains = +local_domains
require verify = sender
accept domains = +local_domains
endpass
message = unknown user
verify = recipient
accept domains = +relay_to_domains
endpass
message = unrouteable address
verify = recipient
accept hosts = +relay_from_hosts
accept authenticated = *
deny message = relay not permitted
begin routers
dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
system_aliases:
driver = redirect
allow_fail
allow_defer
data = ${lookup{$local_part}lsearch{/etc/aliases}}
file_transport = address_file
pipe_transport = address_pipe
ldap_aliases:
driver = redirect
data = "${lookup ldap {ldap://127.0.0.1:389/c=US?uid?sub?(mailalias=*:
${local_part}:*)}{$value}fail}"
vacation:
driver = accept
transport = vacation
require_files = /var/spool/forward/${local_part}.vacation
senders = "! ^.*-request@.*:\
! ^owner-.*@.*:\
! ^postmaster@.*:\
! ^listmaster@.*:\
! ^mailer-daemon@.*"
condition = "${if or {{match {$h_precedence:} {(?i)junk|bulk|list}} \
{eq {$sender_address} {}}} {no} {yes}}"
unseen
no_expn
no_verify
forward:
driver = redirect
no_check_local_user
no_expn
no_verify
modemask = 002
file = /var/spool/forward/${local_part}.forward
local_user_cyrus:
driver = accept
transport = local_delivery_cyrus
local_part_suffix = .*
local_part_suffix_optional
begin transports
remote_smtp:
driver = smtp
local_delivery_cyrus:
driver = pipe
command = /usr/cyrus/bin/deliver \
-m ${substr_1:$local_part_suffix} -- $local_part
user = cyrus
group = mail
return_output
log_output
message_prefix =
message_suffix =
address_pipe:
driver = pipe
return_output
address_file:
driver = appendfile
delivery_date_add
envelope_to_add
return_path_add
address_reply:
driver = autoreply
vacation:
driver = autoreply
user = cyrus
group = mail
mode = 0664
once = /var/spool/forward/${local_part}.once
file = /var/spool/forward/${local_part}.vacation
log = /var/spool/forward/${local_part}.log
return_message = false
to = $reply_address
from = $local_part
subject = "${if def:h_Subject: {Autoreply: $h_Subject:} {I am on
vacation}}"
begin retry
* * F,2h,15m; G,16h,1h,1.5; F,4d,6h
begin rewrite
begin authenticators
ldap_plain:
driver = plaintext
public_name = PLAIN
server_condition = LDAP_AUTH_BIND
server_set_id = $2
ldap_login:
driver = plaintext
public_name = LOGIN
server_prompts = Username:: : Password::
server_condition = LDAP_AUTH_BIND
server_set_id = $1
ldap_cram:
driver = cram_md5
public_name = CRAM-MD5
server_secret = LDAP_AUTH_BIND
server_set_id = $1
--