OK - here's the latest version of my code that separates the main domain part from a host name. It depends on my rb.junkemailfilter.com DNS lookup. I now have it running on 2 servers.
# Separates the domain part of a hostname - ftp.perkel.com returns perkel.com # DNS lookup returns 127.0.0.1 for single level domains # DNS lookup returns 127.0.0.2 for two level domains # DNS lookup returns 127.0.0.3 for three level domains warn !condition = ${if eq{$sender_host_name}{}} dnslists = rb.junkemailfilter.com/$sender_host_name set acl_c_rb = $dnslist_value warn condition = ${if eq{$acl_c_rb}{127.0.0.1}} set acl_c_sender_host_domain = ${sg{$sender_host_name}\ {\N^.*\.(.*\..*)$\N}{\$1}} add_header = X-Sender-Domain: $acl_c_sender_host_domain warn condition = ${if eq{$acl_c_rb}{127.0.0.2}} set acl_c_sender_host_domain = ${sg{$sender_host_name}\ {\N^.*\.(.*\..*\..*)$\N}{\$1}} add_header = X-Sender-Domain: $acl_c_sender_host_domain warn condition = ${if eq{$acl_c_rb}{127.0.0.3}} set acl_c_sender_host_domain = ${sg{$sender_host_name}\ {\N^.*\.(.*\..*\..*\..*)$\N}{\$1}} add_header = X-Sender-Domain: $acl_c_sender_host_domain -- ## List details at http://www.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://www.exim.org/eximwiki/