[Dovecot] data corruption in delivery agent when forwarding
Joshua Goodall
joshua at roughtrade.net
Wed Jul 19 12:30:28 EEST 2006
Hi Timo
I've been seeing data corruption in the lda when forwarding mail. I think
it's due to confused file pointers. (this is all maildirs on nfs)
Anyway the following patch fixes it, and also looks a bit more like the
old dovecot-lda module, by getting the Return-Path header before
getting the input stream:
Index: mail-send.c
===================================================================
RCS file: /home/cvs/dovecot/src/deliver/mail-send.c,v
retrieving revision 1.1.2.1
diff -u -r1.1.2.1 mail-send.c
--- mail-send.c 11 Jun 2006 11:10:55 -0000 1.1.2.1
+++ mail-send.c 19 Jul 2006 09:28:18 -0000
@@ -116,16 +116,17 @@
struct smtp_client *smtp_client;
FILE *f;
const unsigned char *data;
+ const char *return_path;
size_t size;
int ret;
+ return_path = mail_get_first_header(mail, "Return-Path");
+
input = mail_get_stream(mail, NULL, NULL);
if (input == NULL)
return -1;
- smtp_client = smtp_client_open(forwardto,
- mail_get_first_header(mail, "Return-Path"),
- &f);
+ smtp_client = smtp_client_open(forwardto, return_path, &f);
input = i_stream_create_header_filter(input, HEADER_FILTER_EXCLUDE |
HEADER_FILTER_NO_CR, hide_headers,
best regards as ever
/k
--
Josh "Koshua" Goodall "as modern as tomorrow afternoon"
joshua at roughtrade.net - FW109
More information about the dovecot
mailing list