[exim-dev] DCC header corruption

Top Page
Delete this message
Reply to this message
Author: Northfield Stuart
Date:  
To: exim-dev
Subject: [exim-dev] DCC header corruption
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;

with

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.

Regards

Stu