Bug#305957: Postinstall script replaces configuration escape sequences with their expansions on upgrade

Andreas Metzler Andreas Metzler <ametzler@downhill.at.eu.org>, 305957@bugs.debian.org
Sun, 24 Apr 2005 12:16:56 +0200


On 2005-04-23 Barry Kitson <b.kitson@ieee.org> wrote:
> Package: exim4-config
> Version: 4.50-6

> When upgrading any recent version of the exim4 package, the exim4-config
> postinst script tries to update /etc/exim4/update-exim4.conf.conf
> configuration file automagically.
[...]
> All appears to work if the configuration variables (ie environment
> variables) in etc/exim4/update-exim4.conf.conf do not contained escape
> sequences.

s/escape sequences/special charaters in se replacement patterns, i.e.
backslashes/

> If they do they will be replaced with their expansion.  A
> result can be that the exim configuration is fatally corrupted.

> For example, a configuration in /etc/exim4/update-exim4.conf.conf
> such as...
> dc_relay_domains='*.some.net.somewhere:\\N^[^.]*$'
[...]
> A patch fixing the problem is attached...

Hello,
Thank you.

gawk does not support character classes, so I had to replace
[[:space:]] with [ \t], but otherwise this seems to work fine.

The same problem exist in update-exim4.conf, you should not need to
specify '\\N' if you wanted '\N' to end up in the configuration file.
                 cu andreas
                cu andreas
-- 
"See, I told you they'd listen to Reason," [SPOILER] Svfurlr fnlf,
fuhggvat qbja gur juveyvat tha.
Neal Stephenson in "Snow Crash"
                                           http://downhill.aus.cc/