[Dovecot] Segfault in imap_bodystructure_write when searching
Christer Mjellem Strand
christer at mjellem.no
Sun Jun 1 19:50:24 EEST 2008
>> This latest crash I can reproduce by just trying to open the
>> mailbox, no searching necessary.
> Is it with the files you sent me or some other mailbox?
The files I sent you. The search issue I haven't been able to reproduce since
>>> One way to maybe avoid gdb backtrace corruption is to attach gdb
>>> the process is still running. Like:
>>> 1. Log in so imap process exists
>>> 2. gdb /usr/lib/dovecot/imap `pidof imap`
>>> 3. cont
>>> 4. make it crash
>>> 5. bt full
>> I have very limited gdb experience, and can't seem to make this work
>> as intended. I've restarted dovecot and logged in so only one imap
>> process exists, and attached to that. However, it seems that this
>> process keeps on running, and instead spawns children, and they're
>> the ones that die immediately.
>> The main process stays alive, and no backtrace is generated when I
>> just kill dovecot to stop the loop..
> Only dovecot process forks new processes. I guess it's possible that your
> IMAP client works by first creating one connection (first imap process) and
> then when selecting the mailbox logs in using a new connection.
Aha, that does indeed sound probable, and seems to fit well with what I'm
seeing in the logs.
>> Any pointers as to how I could attach gdb to any of those processes,
>> or other ways to proceed?
> How about manually:
> telnet localhost 143
> a login user pass
> << gdb attach >>
> b select mailbox
No crash :\
I could always fire up wireshark or something to try to figure out what my
client (Mulberry) is actually doing, but that still wouldn't log the crasher..
-==- -=- -==-
Christer Mjellem Strand yitzhaq
System administrator ICQ: 9557698
GSM +47 922 000 12 JID: yitzhaq at jabber.no
-==- -=- -==-
More information about the dovecot