Hey Rimas, Shah, Harald and other FreeBSD Exim4u/Vexim users, I noticed that Exim 4.85 has been released and is available in FreeBSD 10.1. Has anybody tested it for the headers_remove problem? I have installed and tested the Exim4U exim configuration file with Exim 4.85 on FreeBSD 10.1 and have been unable to get it to work with either one or two colons in the hearders_remove statement. Here are my results so far: For the stock headers_remove clause with single colons as follows: headers_remove = ${if >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql:$local_part}' \ and domain = '${quote_mysql:$domain}' \ and users.on_spamassassin = '1' \ and users.domain_id=domains.domain_id }{$value}fail}} \ {Subject}{${if eq{SPAMHEADERTYPE}{0}{X-Spam-Report}}} \ } "exim -bd -d -oX 25" yields: 96889 message: virtual_domains router failed to expand "${if
={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {Subject}{${if eq{${lookup{SpamHeaderType}lsearch{/etc/exim/exim4u_global_spam_virus}}}{0}{X-Spam-Report}}} }": "${quote_mysql" is not a known operator (or a } is missing in a variable reference) 96889 ----------- end verify ------------ 96889 accept: condition test deferred in ACL "acl_check_rcpt" 96889 SMTP>> 451 Temporary local problem - please try later
Then, when I use double colons as follows: headers_remove = ${if >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = '1' \ and users.domain_id=domains.domain_id }{$value}fail}} \ {Subject}{${if eq{SPAMHEADERTYPE}{0}{X-Spam-Report}}} \ } "exim -bd -d -oX 25" yields: 97120 message: virtual_domains router failed to expand "${if
={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {Subject}{${if eq{${lookup{SpamHeaderType}lsearch{/etc/exim/exim4u_global_spam_virus}}}{0}{X-Spam-Report}}} }": unknown variable name "local_pa" 97120 ----------- end verify ------------ 97120 accept: condition test deferred in ACL "acl_check_rcpt" 97120 SMTP>> 451 Temporary local problem - please try later
So, in summary, with one colon, I get: "${quote_mysql" is not a known operator (or a } is missing in a variable reference) and with two colons, I get: unknown variable name "local_pa". Does anybody see anything wrong with my tests? Please let me know. I want to report this on the exim.org user mailing list, however, I would like you guys to vet my testing before I get the exim developers involved. Thanks, Gordon