IMAP error reported by server. Invalid body section.

Simon Matter simon.matter at invoca.ch
Sat Jun 23 05:54:43 EDT 2012


> On Jun 22, 2012, at 5:10 PM, Simon Matter <simon.matter at invoca.ch> wrote:
>
>>> On 06/22/2012 09:43 AM, Dave McMurtrie wrote:
>>>> On 06/22/2012 06:35 AM, Adam Tauno Williams wrote:
>>>>> On Thu, 2012-06-21 at 13:07 -0300, Rodrigo Abantes Antunes wrote:
>>>>>> The source from horde3 is exactly the same as horde4
>>>>>
>>>>> That is expected.  It isn't the message but the interpretation of the
>>>>> message.  These evil messages contain many named parts separated by a
>>>>> boundry (the boundry value is declared in the header of the message).
>>>>> Then parts of a message can refer to other parts of the message.  So
>>>>> either H4 can't correctly [or incorrectly!] parse the message into
>>>>> parts
>>>>> by boundry or one part references another part that isn't found.
>>>>>
>>>>> It would be useful to ask this question on the Horde / IMP mail list.
>>>>
>>>> I think this originated as a bug report to Horde and they think it's
>>>> the
>>>> IMAP server's fault.
>>>>
>>>> Rodrigo, can you forward the message to me?
>>>
>>> Hi.  Rodrigo sent me the message.  I wanted to confirm that the MIME
>>> structure was correct so I used munpack which was able to successfully
>>> unpack all the message parts.  This isn't a guarantee that the MIME
>>> structure is correct, but at the very least I can't definitely say the
>>> message is malformed.
>>>
>>> I then imported the message into my mailstore.  reconstruct was not
>>> pleased with it from the start:
>>>
>>> Jun 22 15:29:48 cyrusbe-d04 reconstruct[28021]: ERROR: message has more
>>> than 1000 header lines, not caching any more
>>
>> I did the same test on my box and reconstruct worked fine and I can view
>> the message with Squirrelmail and Thunderbird without any problems.
>>
>> What's your version of cyrus-imapd you tested with? I have tested with a
>> 2.4.16 server.
>>
>
> Interesting.  The server I'm testing on isn't a released version, but
> rather a snapshot build from the caldav-2.4 Git branch.  It should be

Without looking at it closely, I have two things in my setup which could
make the difference?

1) I have set lmtp_strict_rfc2821: 0

2) I have this patch:
--- cyrus-imapd-2.3.7/imap/message.c    2006-10-28 22:18:08.000000000 +0200
+++ cyrus-imapd-2.3.7/imap/message.c.nobarenewlinescheck        2006-10-28
22:21:55.000000000 +0200
@@ -256,8 +256,9 @@
                r = IMAP_MESSAGE_CONTAINSNULL;
            }
            else if (*p == '\n') {
-               if (!sawcr && (inheader || !allow_null))
-                   r = IMAP_MESSAGE_CONTAINSNL;
+               /* Do *NOT* check for RFC compliant line breaks (bare
newlines) */
+               /* if (!sawcr && (inheader || !allow_null))
+                   r = IMAP_MESSAGE_CONTAINSNL; */
                sawcr = 0;
                if (blankline) {
                    inheader = 0;


Regards,
Simon

> fairly close to 2.4.16.  Can you grab telemetry and see what
> Squirrelmail/tbird is requesting?




More information about the Info-cyrus mailing list