X-Git-Url: https://git.distorted.org.uk/~mdw/exim-config/blobdiff_plain/7ab75d6f000cb2f27c85f9f38b597535efc5fa0b..c633dca1ee76f0caf9183879d82ec46c3c37064f:/local.m4 diff --git a/local.m4 b/local.m4 index 52398aa..582e1ce 100644 --- a/local.m4 +++ b/local.m4 @@ -47,6 +47,10 @@ addresslist wrong_local = ! +user_extaddr addresslist wrong_domain = ! *@+public addresslist wrong_address = +wrong_local : +wrong_domain untrusted_set_sender = : \ + ${if exists {CONF_sysconf_dir/auth-sender.conf} \ + {${lookup {$sender_ident} \ + lsearch {CONF_sysconf_dir/auth-sender.conf} \ + {$value}}}} : \ ${LOOKUP_DOMAIN($sender_address_domain, {${if and {{match_local_part {$sender_ident} {+dom_users}} \ {match_local_part {$sender_address_local_part} \ @@ -97,11 +101,20 @@ FILTER_ROUTER(dot_forward, SECTION(routers, deliver)m4_dnl ## Deliver mail to a user, in the absence of any other instructions. +m4_define(<:STRIP_HEADERS:>, <:m4_dnl + Content-Length, Status, X-IMAP, X-IMAPbase, m4_dnl + X-Keywords, X-Status, X-UID:>)m4_dnl deliver: driver = accept check_local_user transport = deliver cannot_route_message = Unknown local part + ## Strip headers used by Dovecot for its own purposes. + headers_remove = CLRSEP<::>FOREACH(<:SEP(:)$1:>, <:STRIP_HEADERS:>) + headers_add = CLRSEP<::>FOREACH(<:\ + ${if def:h_$1:{X-Distorted-Renamed-$1: $h_$1:\n}}:>, + <:STRIP_HEADERS:>) + DIVERT(null) ###----- That's all, folks --------------------------------------------------