chiark / gitweb /
defs.m4: New macros for inserting separators into lists.
[exim-config] / local.m4
index 78b3e64ae735a7824116726ed0fc63ab8403c93d..f3b5e9f0e88f701eb65043633fc731893b59da58 100644 (file)
--- 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} \
@@ -65,7 +69,8 @@ alias:
        allow_defer = true
        user = CONF_filter_user
        FILTER_TRANSPORTS
-       data = ${lookup {$local_part} lsearch {CONF_alias_file}}
+       local_parts = nwildlsearch; CONF_alias_file
+       data = ${expand:$local_part_data}
 
 SECTION(routers, real)m4_dnl
 ## A special hack to get mail to a user who has a forward file.  Only for
@@ -86,20 +91,13 @@ SECTION(routers, forward)m4_dnl
 ## rejection if possible).  Mail sent directly to the user is handled through
 ## `~/.mail/forward', or `~/.forward', or if neither of those exists, by
 ## writing the message to `/var/mail/USER'.
-filter_verify:
-       FILTER_LOCALUSER(CONF_userconf_dir/forward.suffix)
-       FILTER_VERIFY
-       local_part_suffix = CONF_user_suffix_list
-filter_suffix:
-       FILTER_LOCALUSER(CONF_userconf_dir/forward.suffix)
-       local_part_suffix = CONF_user_suffix_list
-       FILTER_TRANSPORTS
-filter:
-       FILTER_LOCALUSER(CONF_userconf_dir/forward)
-       FILTER_TRANSPORTS
-dot_forward:
-       FILTER_LOCALUSER($home/.forward)
-       FILTER_TRANSPORTS
+FILTER_ROUTER(filter_suffix,
+       <:FILTER_LOCALUSER(CONF_userconf_dir/forward.suffix)
+       local_part_suffix = CONF_user_suffix_list:>)
+FILTER_ROUTER(filter,
+       <:FILTER_LOCALUSER(CONF_userconf_dir/forward):>)
+FILTER_ROUTER(dot_forward,
+       <:FILTER_LOCALUSER($home/.forward):>)
 
 SECTION(routers, deliver)m4_dnl
 ## Deliver mail to a user, in the absence of any other instructions.