imapd crashes with SIGSEGV in mboxlist.c:221

Dmitry Katsubo dma_k at mail.ru
Wed Aug 17 11:37:05 EDT 2011


On 16.08.2011 6:37, Bron Gondwana wrote:
> I'm sorry, we don't support Cyrus 2.2 any more.  It's over 5 years old
> and there have been two major releases since.
> 
> If you can get the Debian maintainers to add the patch to their package
> while they stay on 2.2 that would be fine, but I doubt anyone will want
> to put any effort into fixing it upstream - we're working on getting 2.5
> out now!

I have updated to version 2.4 (I believe that is the last stable now). I
see this in my syslog after restating the service:

> kernel: ctl_cyrusdb[2477]: segfault at 0 ip b72be49a sp bfa96f5c error 6 in libc-2.13.so[b724a000+153000]
> kernel: cyr_expire[2486]: segfault at 0 ip b72ae49a sp bf979f2c error 6 in libc-2.13.so[b723a000+153000]
> cyrus/master[2474]: process 2477 exited, signaled to death by 11
> cyrus/master[2474]: process 2486 exited, signaled to death by 11
> cyrus/imap[5705]: executed
> cyrus/imap[5705]: login: tanja.home [192.168.1.11] dmitry plain+TLS User logged in
> kernel: [254135.387736] imapd[5705]: segfault at 0 ip b720a49a sp bfb006bc error 6 in libc-2.13.so[b7196000+153000]
> cyrus/master[5681]: process 5705 exited, signaled to death by 11
> cyrus/master[5681]: service imap pid 5705 in BUSY state: terminated abnormally

Obviously, IMAP does not work...

I have recompiled Cyrus with my patch applied, and it started to work.

What I also did:
- Removed /var/lib/cyrus/db/*
- Reset the annotations.db, deliver.db, tls_sessions.db to empty DB
(they all have size 144 bytes)
- Re-imported mailboxes.db from flatfile.

I hope that procedure is (almost) enough to insure the is no binary
incompatibles / corruptions left.

Then for the matter of experiment I installed the original Debian
binaries from the distro (cyrus-imapd-2.4_2.4.9-1_i386), restarted Cyrus
(/etc/init.d/cyrus-imapd restart) ... and it start segfaulting again!!!
I strongly believe that the problem occurs because of invalid or
corrupted data but I also think that the software like IMAP server
should check the input data for correctness. No way for segfault!

-- 
With best regards,
Dmitry


More information about the Cyrus-devel mailing list