lists.m4: Need separate local-part and address lists for `user_extaddr'.
[exim-config] / exchange.m4
index 08fe4a0..d38e137 100644 (file)
@@ -56,13 +56,21 @@ mail_client_addr:
        ## If this is a message submission then that's handled elsewhere.
        accept   condition = ${if eq{$acl_c_mode}{submission}}
 
-       ## Make sure that the sender matches the client address.
-       require  message = Client host invalid for sender domain
-                hosts = ${LOOKUP_DOMAIN($sender_address_domain,
+       ## Make sure that the sender matches the client address.  I feel like
+       ## I want to reject these, but that will break stuff.  For example,
+       ## if I send mail to an externally hosted address which is really a
+       ## distribution list containing some local address, then we'll
+       ## (approximately legitimately) receive mail with an apparently-local
+       ## sender from a remote host.
+       warn    !hosts = ${LOOKUP_DOMAIN($sender_address_domain,
                           {KV(hosts, {$value}{+allnets})},
                           {${if match_domain {$sender_address_domain} \
                                              {+public} \
                                 {+allnets}{! +allnets}}})}
+                add_header = :after_received:X-Distorted-Warning: \
+                       RCLNTLSNDR \
+                       Apparently local sender, but received from remote \
+                       server.
 
        ## OK.
        accept