Hi,
while implementing thread support in our mail application I found a bug
which kills IMAP(alpha5, SUSE 10) process...
These are the commands:
x OK Logged in.
x select INBOX
* FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk Junk $Forwarded
Spam)
* OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk Junk
$Forwarded Spam \*)] Flags permitted.
* 2280 EXISTS
* 1 RECENT
* OK [UNSEEN 473] First unseen.
* OK [UIDVALIDITY 1136386397] UIDs valid
* OK [UIDNEXT 2319] Predicted next UID
x OK [READ-WRITE] Select completed.
x uid thread references utf8 (SUBJECT "locking")
* THREAD (2289 2307)
* 2281 EXISTS
* 1 RECENT
x OK Thread completed.
x UID THREAD REFERENCES UTF8 (SUBJECT 'locking')
Connection closed by foreign host.
This is the code dump:
(gdb) bt full
#0 0xdededede in ?? ()
No symbol table info available.
#1 0x08060127 in mail_thread_deinit (ctx=0x80c0120) at imap-thread.c:100
No locals.
#2 0x080611e2 in imap_thread (cmd=0x80c5c34, charset=0x80c5f48
"UTF8",
args=0x80ea980, type=MAIL_THREAD_REFERENCES) at imap-thread.c:156
wanted_headers = {0x80b6645 "message-id", 0x80b2947
"in-reply-to",
0x80b2953 "references", 0x80b1978 "subject", 0x0}
client = (struct client *) 0x80c5bf0
headers_ctx = (struct mailbox_header_lookup_ctx *) 0x80eb188
ctx = (struct thread_context *) 0x80c0120
mail = (struct mail *) 0x80ced28
ret = 0
#3 0x080598b5 in cmd_thread (cmd=0x80c5c34) at cmd-thread.c:66
client = (struct client *) 0x80c5bf0
sargs = <value optimized out>
args = (struct imap_arg *) 0x80c5ea0
args_count = <value optimized out>
pool = 0x80ea930
error = <value optimized out>
charset = 0x80c5f48 "UTF8"
str = 0x80c5f38 "REFERENCES"
#4 0x0805a271 in _client_input (context=0x80c5bf0) at client.c:338
cmd = (struct client_command_context *) 0x80c5c34
ret = <value optimized out>
#5 0x080a91c8 in io_loop_handler_run (ioloop=0x80c49b0) at ioloop-epoll.c
:250
ctx = <value optimized out>
event = (struct epoll_event *) 0x80c4a00
io = (struct io *) 0x80c5da8
tv = {tv_sec = 0, tv_usec = 999991}
t_id = 2
msecs = <value optimized out>
ret = 0
i = 0
call = <value optimized out>
#6 0x080a881b in io_loop_run (ioloop=0x80c49b0) at ioloop.c:230
No locals.
#7 0x080617e4 in main (argc=3, argv=0xbfa6e7d4, envp=0xbfa6e7e4) at main.c
:235
No locals.
Hope this is enough.
Sebastjan
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://dovecot.org/pipermail/dovecot/attachments/20060114/c95343f1/attachment.htm