As discussed earlier in a separate thread, a
regression was introduced in exim 4.83 that caused the
headers_remove clauses in the exim configuration files to
malfunction.�� This regression continued in Exim 4.84 and 4.85. This regression impacts both
Exim4U and Vexim users running exim 4.83, 4.84 & 4.85. Exim
versions earlier than exim 4.83 are not impacted by this
regression.� A partial fix was implemented in 4.85
which fixed the transports section but not the routers section.�
The bug report is here:
http://bugs.exim.org/show_bug.cgi?id=1533
At the bottom of this bug report is a patch for the routers
section.� Shamim Shahriar and I have both tested this patch and it
appears to fix the regression altogether.� Please also note that
the colon ":" in the quote_mysql statements in the headers_remove
clauses must also be replaced with double colons "::" for Exim
4.85 and later Exim versions to work properly.
I patched exim 4.85 on a FreeBSD installation using the attached
patch as per bug
1533. The patch is named:
patch-src_routers_rf__get__munge__headers.c. � If you want to implement the patch yourself in
FreeBSD, then simply put the attached patch file in the�
/usr/ports/mail/exim/files directory preserving its name exactly
as is.� Then "cd /usr/ports/mail/exim" followed by "make deinstall
clean" followed by "make install clean".� This will rebuild exim
with the patch and everything should then work properly as long as
you have substituted double colons for the single colon in the
quote_mysql statements within the headers_remove clauses.� Note
that the quote_mysql statements in the headers_add clauses must
continue to use a single colon.� For operating systems other than
FreeBSD, follow your OS's instructions on how to patch and
recompile source code.� Your only other option is to wait for a
later version of exim to be released for your OS in binary form
and which has implemented this patch.
Users running unpatched versions of exim 4.83, 4.84 & 4.85 must comment
out all of the headers_remove clauses which include quote_mysql
statements altogether for exim to work properly.� This will, of
course, remove features related to header removal but exim will
otherwise work properly.� If you implement the attached patch to
exim 4.85 then your installation will work properly as long as
you have also substituted double colons for the single colon in the
quote_mysql statements within the headers_remove clauses. As
an example, for Exim4U, substitute double colons for the
single colon in the quote_mysql statement in lines 829, 1051
and 1052 in /etc/exim/exim.conf.� Also, attached is a revised
exim configuration file (/etc/exim/exim.conf) for Exim4U with
the double colons already substituted.� Please note that this
configuration file will only work with patched versions of
exim 4.85 and/or later versions of exim that have implemented
the attached patch.
FYI,
Gordon