Comment 9 for bug 1998678

Revision history for this message
Bryce Harrington (bryce) wrote :

I think I have a partial fix. Andreas is right that 44b6e099 does not apply cleanly, due to the refactoring work from d8fbda. The refactoring patch is rather big and neither does it apply cleanly, but if I understand it correctly in essence it's changing the calling semantics for the expand_string_internal() call. I've adjusted 44b6e099 to use the old calling semantics, packaged up the fix and stuck it into a PPA here:

    https://launchpad.net/~bryce/+archive/ubuntu/exim4-sru-lp1998678

Next, I followed the exact steps outlined in the SRU text of this bug's description. I.e., constructed a pair of containers with exim4 and sent an email from one to the other. Sure enough, without my PPA it reproduces the error 'expansion failed: missing } at end of string', and with the PPA installed it does not. Unfortunately, it instead gives a different error: 'expansion failed: condition name expected, but found ""'

I've tinkered around with the exim4.conf.template, and as before it works if I remove any of the internally expanded {} stuff. (I think I also found an unrelated bug in ubuntu's template, but that's a separate topic...)

So... there seems to be more going on than *just* 44b6e099, unless I've done the backport wrong. Perhaps there's more than just refactoring work in the refactoring patch? Or perhaps there's another patch in upstream trunk that's required?

I'd appreciate advice, and especially if others could check my PPA and if it also fails to figure out what's going on. Meanwhile, I'm going to re-test the testcase on mantic, and if that's also no good, next action would be to take another shot at the backport, or perhaps package a git snapshot of the current upstream trunk.