Re: [Imap-uw] imapd aborts with "header size inconsistent"

2009-06-03 Thread Mark Crispin

On Wed, 3 Jun 2009, Andrew Daviel wrote:

2 select head1
* 1 EXISTS
* BYE [ALERT] IMAP4rev1 server crashing: header size inconsistent
Aborted


This is a bug in imapd, or more accurately the traditional UNIX mailbox 
support module in the c-client library used by imapd.


I thought that I had exterminated all possible causes of this problem 
while I was still at UW.  Obviously, I missed one.


I was wondering why  imapd does not merely return BAD to the SELECT 
operation, and continue. Or is the thread too screwed up at that point to 
safely do so ?


It is screwed at this point, and quite unsafe to attempt anything further.

If you can provide me with a sample mailbox that exhibits the problem, I 
can look into fixing the problem in Panda IMAP.  That might motivate you 
into becoming a Panda IMAP site... ;-)


If you want to try fixing it yourself, have fun and good luck...(he says 
with an evil chortle).


-- Mark --

http://panda.com/mrc
Democracy is two wolves and a sheep deciding what to eat for lunch.
Liberty is a well-armed sheep contesting the vote.
___
Imap-uw mailing list
Imap-uw@u.washington.edu
http://mailman2.u.washington.edu/mailman/listinfo/imap-uw


[Imap-uw] imapd aborts with "header size inconsistent"

2009-06-03 Thread Andrew Daviel


I was just playing with the Zimbra desktop client - at least in Linux, 
it's a Java app that can do IMAP as well as zimbra, gmail etc.


When trying on my test account, it hangs while syncing.

It seems that it wants to download everything, not just subscribed 
mailboxes. I have various unavoidable non-mailbox files like .procmailrc 
and .vacation.db, but also some other cruft.
One of which is a broken mail file of some kind, another is a virus 
sample, which cause imapd to bomb


As zdesktop won't run in plaintext mode I can't check the commands, but I 
can reproduce the effect, viz.

$ imapd
1 list "" "h*"
* LIST (\NoInferiors \UnMarked) "/" head1
1 OK LIST completed
2 select head1
* 1 EXISTS
* BYE [ALERT] IMAP4rev1 server crashing: header size inconsistent
Aborted

syslog contains
 Fatal error user=xx host=yy [a.b.c.d]  mbx=/x/y/z/head1: header size 
inconsistent

zdesktop reports this as
  Failure communicating with remote server. Please try again later.
and can't get past this point

I was wondering why  imapd does not merely return BAD to the SELECT 
operation, and continue. Or is the thread too screwed up at that point to 
safely do so ?


--
Andrew Daviel, TRIUMF, Canada
Tel. +1 (604) 222-7376  (Pacific Time)
Network Security Manager
___
Imap-uw mailing list
Imap-uw@u.washington.edu
http://mailman2.u.washington.edu/mailman/listinfo/imap-uw