SIGSEGV in 2.2.13 with IMAP Proxying to an Exchange Server

Ralf Hildebrandt Ralf.Hildebrandt at charite.de
Mon Jun 16 13:45:49 UTC 2014


100% reproducible. User is using alpine to write an email. 

Continue postponed composition (answering "No" won't erase it)?
y -> [>Empty folder! No messages really postponed!<]
Can't delete {mproxy.charite.de/ssl/novalidate-cert/user=theusername}postponed-msgs

Setup:
======

http://wiki2.dovecot.org/HowTo/ImapcProxy

coredump available for further inspection

Full backtrace:
===============

Attaching to program: /usr/lib/dovecot/imap, process 15573
[New LWP 15573]
Core was generated by `dovecot/imap'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  imapc_client_mailbox_cmd (box=0x0, callback=callback at entry=0x7f6ba2ed40e0 <imapc_simple_callback>, context=context at entry=0x7fff68b7f1a0) at imapc-client.c:351
#0  imapc_client_mailbox_cmd (box=0x0, callback=callback at entry=0x7f6ba2ed40e0 <imapc_simple_callback>, context=context at entry=0x7fff68b7f1a0) at imapc-client.c:351
        cmd = <optimized out>
        __FUNCTION__ = "imapc_client_mailbox_cmd"
#1  0x00007f6ba2ed4815 in imapc_mailbox_noop (mbox=mbox at entry=0x1294060) at imapc-storage.c:154
        cmd = <optimized out>
        sctx = {client = 0x123b400, ret = -2}
#2  0x00007f6ba2ed2d30 in imapc_mailbox_sync_init (box=0x1294060, flags=(MAILBOX_SYNC_FLAG_FULL_READ | MAILBOX_SYNC_FLAG_FIX_INCONSISTENT)) at imapc-sync.c:476
        mbox = 0x1294060
        list = <optimized out>
        capabilities = <optimized out>
        changes = true
        ret = 0
#3  0x00007f6ba2ee53c9 in mailbox_sync_init (box=box at entry=0x1294060, flags=(MAILBOX_SYNC_FLAG_FULL_READ | MAILBOX_SYNC_FLAG_FIX_INCONSISTENT)) at mail-storage.c:1677
        _data_stack_cur_id = 4
        ctx = <optimized out>
#4  0x00007f6ba2ee54d7 in mailbox_sync (box=box at entry=0x1294060, flags=<optimized out>, flags at entry=MAILBOX_SYNC_FLAG_FULL_READ) at mail-storage.c:1725
        ctx = 0x1294060
        status = {sync_delayed_expunges = 0}
#5  0x00007f6ba2f0fdcb in mailbox_expunge_all_data (box=0x1294060) at index-storage.c:648
        ctx = 0x7fff68b7f35c
        t = 0x7fff68b7f35c
        mail = 0x0
        search_args = 0x0
#6  index_storage_mailbox_delete (box=0x1294060) at index-storage.c:701
        metadata = {guid = "\000\000\000\000\000\000\000\000\030\377\347\242\000\000\000", virtual_size = 19480672, cache_fields = 0x0, 
          precache_fields = (MAIL_FETCH_RECEIVED_DATE | MAIL_FETCH_SAVE_DATE | MAIL_FETCH_PHYSICAL_SIZE | MAIL_FETCH_IMAP_ENVELOPE | MAIL_FETCH_UIDL_FILE_NAME | MAIL_FETCH_GUID | unknown: 16777216), 
          backend_ns_prefix = 0x7f6ba2ee64b0 <mailbox_open+16> "\211\302\061\300\205\322x\bH\203\304\030[]Ð\366\203\230\002", backend_ns_type = (unknown: 0)}
        status = {messages = 0, recent = 0, unseen = 19029536, uidvalidity = 0, uidnext = 1, first_unseen_seq = 0, first_recent_uid = 2730247353, last_cached_seq = 32619, highest_modseq = 19480672, 
          highest_pvt_modseq = 140100271760191, keywords = 0x1, permanent_flags = 0, permanent_keywords = 0, allow_new_keywords = 0, nonpermanent_modseqs = 0, no_modseq_tracking = 0, have_guids = 0, 
          have_save_guids = 0, have_only_guid128 = 0}
        ret_guid = <optimized out>
#7  0x00007f6ba2ee66a7 in mailbox_delete (box=0x1294060) at mail-storage.c:1319
        ret = <optimized out>
#8  0x000000000040d0e1 in cmd_delete (cmd=0x125ce40) at cmd-delete.c:39
        client = <optimized out>
        ns = <optimized out>
        box = 0x1294060
        name = 0x121b2b8 "postponed-msgs"
        errstr = <optimized out>
        error = 32767
        disconnect = false
#9  0x0000000000416cfc in command_exec (cmd=0x125ce40) at imap-commands.c:158
        hook = 0x12240e0
        ret = <optimized out>
#10 0x0000000000415d5f in client_command_input (cmd=0x125ce40) at imap-client.c:778
        client = 0x1268c10
        command = <optimized out>
        __FUNCTION__ = "client_command_input"
#11 0x0000000000415e15 in client_command_input (cmd=0x125ce40) at imap-client.c:839
        client = 0x1268c10
        command = <optimized out>
        __FUNCTION__ = "client_command_input"
#12 0x0000000000416115 in client_handle_next_command (remove_io_r=<synthetic pointer>, client=0x1268c10) at imap-client.c:877
No locals.
#13 client_handle_input (client=client at entry=0x1268c10) at imap-client.c:889
        _data_stack_cur_id = 3
        remove_io = false
        handled_commands = false
        __FUNCTION__ = "client_handle_input"
#14 0x00000000004164a2 in client_input (client=0x1268c10) at imap-client.c:931
        cmd = 0x1234630
        output = 0x125cd30
        bytes = 32
        __FUNCTION__ = "client_input"
#15 0x00007f6ba2c19e6f in io_loop_call_io (io=0x125ae10) at ioloop.c:441
        ioloop = 0x1223730
        t_id = 2
        __FUNCTION__ = "io_loop_call_io"
#16 0x00007f6ba2c1ad77 in io_loop_handler_run_internal (ioloop=ioloop at entry=0x1223730) at ioloop-epoll.c:220
        ctx = 0x12243c0
        list = 0x1225e20
        io = <optimized out>
        tv = {tv_sec = 1739, tv_usec = 977960}
        events_count = <optimized out>
        msecs = <optimized out>
        ret = 1
        i = 0
        call = <optimized out>
        __FUNCTION__ = "io_loop_handler_run_internal"
#17 0x00007f6ba2c19ed9 in io_loop_handler_run (ioloop=ioloop at entry=0x1223730) at ioloop.c:488
No locals.
#18 0x00007f6ba2c19f58 in io_loop_run (ioloop=0x1223730) at ioloop.c:465
        __FUNCTION__ = "io_loop_run"
#19 0x00007f6ba2bc9133 in master_service_run (service=0x12235c0, callback=callback at entry=0x41ee50 <client_connected>) at master-service.c:566
No locals.
#20 0x000000000040b06f in main (argc=1, argv=0x1223390) at main.c:400
        set_roots = {0x426ca0 <imap_setting_parser_info>, 0x0}
        login_set = {auth_socket_path = 0x121b048 "\001", postlogin_socket_path = 0x0, postlogin_timeout_secs = 60, callback = 0x41f200 <login_client_connected>, 
          failure_callback = 0x41ef30 <login_client_failed>, request_auth_token = 1}
        service_flags = <optimized out>
        storage_service_flags = <optimized out>
        username = 0x0
        c = <optimized out>

-- 
Ralf Hildebrandt
  Geschäftsbereich IT | Abteilung Netzwerk
  Charité - Universitätsmedizin Berlin
  Campus Benjamin Franklin
  Hindenburgdamm 30 | D-12203 Berlin
  Tel. +49 30 450 570 155 | Fax: +49 30 450 570 962
  ralf.hildebrandt at charite.de | http://www.charite.de
	    


More information about the dovecot mailing list