https://bugs.exim.org/show_bug.cgi?id=2272
Bug ID: 2272
Summary: better handling for multiple, multiline headers
Product: Exim
Version: 4.91
Hardware: All
OS: All
Status: NEW
Severity: wishlist
Priority: medium
Component: String expansion
Assignee: nigel@???
Reporter: jgh146exb@???
CC: exim-dev@???
The existing $h_ $bh_ $rh_ triplet do not deal well with the case of several
headers with a given name, where each is wrapped onto continuation-lines.
logwrite = h_A-R: <$h_Authentication-Results:>
logwrite = bh_A-R: <$bh_Authentication-Results:>
logwrite = rh_A-R: <$rh_Authentication-Results:>
(2-header case)
h_A-R: <test.ex;\n iprev=pass (localhost)
smtp.client-ip=127.0.0.1;\n arc=pass (i=1) header.s=sel arc.oldest-pass=1
smtp.client-ip=127.0.0.1\ntest.ex;\n arc=none>
bh_A-R: <test.ex;\n iprev=pass (localhost)
smtp.client-ip=127.0.0.1;\n arc=pass (i=1) header.s=sel arc.oldest-pass=1
smtp.client-ip=127.0.0.1\ntest.ex;\n arc=none>
rh_A-R: < test.ex;\n iprev=pass (localhost)
smtp.client-ip=127.0.0.1;\n arc=pass (i=1) header.s=sel arc.oldest-pass=1
smtp.client-ip=127.0.0.1\n test.ex;\n arc=none\n>
Option 1: the $bh_ processing includes "removes leading and trailing white
space".
Add to that "and continuation-line newline,white-space". This carries forward
to
$h_ also. The result is then a newline-sep list, in Exim terms, of header
content.
The cost is the risk of breaking existing configurations which expect the
continuation
boundary to be visible.
Option 2: create a new operator which returns a list of header-content, doing
any required
protection against embedded versions of the list-separator (ie. double any
colons). The sourcecode
already has a suitable subroutine, so the cost is mainly in the carrying of yet
another interface.
--
You are receiving this mail because:
You are on the CC list for the bug.