stu at metanate
May 17, 2012, 2:40 AM
I have recently been experiencing corruption and/or truncation of the DCC header being logged and added to my messages using the built-in exim dcc support in the data acl.
Upon investigation, I note that in dcc.c the global dcc_header is being pointed at a stack based string before the dcc code returns, despite the fact that there appears to be a global dcc_header_str which is presumably intended to have the header copied in to it and then dcc_header pointed at that.
Certainly replacing the following line (483 in src/dcc.c):
dcc_header = xhdr;
strncpy(dcc_header = dcc_header_str, xhdr, sizeof(dcc_header_str));
seems to cure the problem for me, although being unfamiliar with Exim's source base, it's not clear to me if this is the correct solution.
## List details at https://lists.exim.org/mailman/listinfo/exim-dev Exim details at http://www.exim.org/ ##