-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi List

I triggerd an small issue with cyrus-imapd 2.2.12 and the lmtpengine.c. Of course it's not a cyrus problem.

I got a very bad mail header from a customer:

Subject: Mailtest
To: [EMAIL PROTECTED]
X-Mailer: Lotus Notes Release 6.5.3 September 14, 2004
From: cm<[EMAIL PROTECTED]>
Date: 07-Sep-2005 08:19:55 CEDT
Message-ID:
X-MIMETrack: Serialize by Router on skp_bonn/Simon-Kucher(Release7, | March 27, 2005) at
07.09.2005 08:19:57
MIME-Version: 1.0
Content-type: text/plain; charset=ISO-8859-1
Content-transfer-encoding: quoted-printable
...

As you see this mail header is pretty broken. lmtpengine.c checks for an empty message id. If it's empty it won't be delivered to the mailbox. I'm sure that is correct.

Postfix with lmtp sends the correct error message:
Sep 7 10:06:58 mail2 postfix/lmtp[85322]: 44D495C161: to=<[EMAIL PROTECTED]>, relay=mail3.domain.ch[xxx.xxx.xxx.xxx], delay=0, status=bounced (host mail3.domain.ch[xxx.xxx.xxx.xxx] said: 554 5.6.0 Message contains invalid header (in reply to end of DATA command)). Exim with cyrus delivery returns: Error code 65. This looks a bit strange.

But since postfix and exim delivers this "broken" mail to cyrus without any problem I starting to think if cyrus does not make to many RFC checks. We know the world is not perfect.

Anyway, are there any site effects if I remove the check on line 722 and 723 in lmtpengine.c?
} else if (body) {
        r = IMAP_MESSAGE_BADHEADER;  /* empty message-id */


Regards
Thomas
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (Darwin)

iD8DBQFDHtJ0GCwkYTI5tyARAtQEAKCUf7Fw/q2BFe51MxJDfHUziDadhACffGVi
X5aA870Cx52wMVfxi8evbUw=
=HvpH
-----END PGP SIGNATURE-----
----
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

Reply via email to