patch: "From:" line is logged incorrectly when DKIM header has "from:"

Osamu Aoki <[email protected]>
Newsgroups gmane.mail.maildrop
Message-ID <[email protected]>
Hi,

(proposed patch to maildrop/formatmbox.C attached)

This issue was reported to Debian BTS: http://bugs.debian.org/520344 on
Mar 2009 and I recently took part in its maintenance.

Problem:

The maildrop's log file generates funny line when "from:" exists in the DKIM
header content like in the attached example mailbox.txt.

You can reproduce this by running:
  /usr/bin/maildrop < mailbox.txt

This generate log entry as (space indented with | for readability):

|Date: Sun Jun 17 10:29:24 2012
|From: "Barnikow, Katja" <[email protected]>message-id:date:subject:con
|Subj: Test
|File: /var/mail/osamu                          

I checked this source and I think I found the bug :-)

This bug is in maildrop/formatmbox.C  where pointer skipping excess
whitespaces (but not banklines) at the start of line.

There is no need to do this since From: header always start at the first
character.  Continuation lines in header files have leading space.

Patch is for upstream 2.5.5 version.  

In old 2.0.3 source, this bug caused the From: header content to be
overwritten by the second match and not concatenated like now.  It is
probably because 2.0.3 version was not using "bufp->append(p, l);" but
making simple assignment in the last part of this function.

So this patch should fix to match only ^From: but if this header exist
twice, those contents are concatenated (without space).

Osamu

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/

_______________________________________________
Courier-maildrop mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/courier-maildrop
mailbox.txt (text/plain, 641 B)
>From [email protected]
From: "Barnikow, Katja" <[email protected]>
To: "Ralf Hildebrandt" <[email protected]>
Subject: Test
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=charite.de; h=
        from:message-id:date:subject:content-type:mime-version
        :content-class:received:received:received:x-virus-scanned;s=
        default; t=1237383677; bh=7Q6qSv4vMWBVhAT79vzOdErsuTcjoLR3jOcVw/
        21upA=; b=IEVP0Ip6pwN8cG2vyAr7Gk2gaEmX7ZXrbKPbzGzip+GCcN9KihZOpo
        Ho49OItUmaGGCLeGudu+0rukZ95vSDFlvHqL5JBLU2NWuD/V9LS2lYl9upXDsnyp
        NNI6s7SWf8ZKjPdtPYDC2hc+iyk2AJQCk6XLmAl8QHR38ZuD5W2tI=

Body
formatmbox.C.patch (text/x-diff, 342 B)
--- formatmbox.C.orig	2012-06-17 14:42:59.176829893 +0900
+++ formatmbox.C	2012-06-17 14:50:50.135165248 +0900
@@ -85,7 +85,6 @@
 	const char *p=msglinebuf;
 	Buffer	*bufp=0;
 
-		while (*p != '\n' && isspace(*p))	p++;
 		if ( tolower(*p) == 'f' && tolower(p[1]) == 'r' &&
 			tolower(p[2]) == 'o' && tolower(p[3]) == 'm' &&
 			p[4] == ':')
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.