Hi
Thanks for the help, This is the result of the running commands:
pdc-server:~# dpkg -l | grep gdb ii gdb 6.4.90.dfsg-1 The GNU Debugger ii libgdbm3 1.8.3-3 GNU dbm database routines (runtime version) pdc-server:~# dpkg -l | grep dovecot ii dovecot-common 1.1.rc7-0~auto+1 secure mail server that supports mbox and ma ii dovecot-dev 1.1.rc7-0~auto+1 header files for the dovecot mail server ii dovecot-imapd 1.1.rc7-0~auto+1 secure IMAP server that supports mbox and ma ii dovecot-pop3d 1.1.rc7-0~auto+1 secure POP3 server that supports mbox and ma pdc-server:~# ps aux | grep imap dovecot 2749 0.0 0.5 3312 1512 ? S 20:45 0:00 imap-login dovecot 2824 0.0 0.5 3308 1508 ? S 20:52 0:00 imap-login dovecot 2848 0.4 0.5 3308 1508 ? S 20:54 0:00 imap-login mailuser 2849 1.0 0.4 2540 1280 ? S 20:54 0:00 /usr/lib/dovecot/imap root 2852 0.0 0.2 2880 752 pts/0 R+ 20:54 0:00 grep imap pdc-server:~# gdb -p 2849 GNU gdb 6.4.90-debian Copyright (C) 2006 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i486-linux-gnu". Attaching to process 2849 Reading symbols from /usr/lib/dovecot/imap...(no debugging symbols found)...done. Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1". Reading symbols from /lib/tls/i686/cmov/libdl.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libdl.so.2 Reading symbols from /lib/tls/i686/cmov/libc.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libc.so.6 Reading symbols from /lib/ld-linux.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/ld-linux.so.2 Reading symbols from /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so... (no debugging symbols found)...done. Loaded symbols for /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so Reading symbols from /usr/lib/dovecot/modules/imap/lib11_imap_quota_plugin.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/dovecot/modules/imap/lib11_imap_quota_plugin.so Reading symbols from /usr/lib/dovecot/modules/imap/lib90_antispam_plugin.so...done. Loaded symbols for /usr/lib/dovecot/modules/imap/lib90_antispam_plugin.so Reading symbols from /usr/lib/dovecot/modules/imap/autocreate_plugin.so...done. Loaded symbols for /usr/lib/dovecot/modules/imap/autocreate_plugin.so Failed to read a valid object file image from memory. 0xb7fba410 in ?? () (gdb) cont Continuing.
Program received signal SIGSEGV, Segmentation fault. 0x0809ea67 in mail_get_physical_size () (gdb) bt full #0 0x0809ea67 in mail_get_physical_size () No symbol table info available. #1 0xb7e795c5 in quota_mail_storage_created () from /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so No symbol table info available. #2 0xb7e6d02d in antispam_save_finish (ctx=0x813b720) at antispam-storage-1.1.c:178 asbox = (struct antispam_mailbox *) 0x8124320 ast = (struct antispam_internal_context *) 0x8134978 dest_mail = (struct mail *) 0x8137310 ret = 135092783 #3 0x0805a1c8 in _start () No symbol table info available. (gdb)
Regards.
2008/6/3 Johannes Berg johannes@sipsolutions.net:
On Tue, 2008-06-03 at 00:51 +0200, Juan Asensio Sánchez wrote:
Well
Finally i found the error. It look like antispam is not compatible with quota plugin.
mail_plugins = quota imap_quota autocreate antispam
If i remove quota and imap_quota plugins from imap protocol, everything works fine and the message is saved in sent folder.
mail_plugins = autocreate antispam
Ok, that explains why I don't see that problem.
If i enable again the plugins, the error happens again. Any solution?
Now i have compiled dovecot-antispam plugin with the -g3 option in CFLAGS. What to do now?
http://dovecot.org/bugreport.html
The "debugging hangs" section is what I usually do: start mail client, "gdb -p $(pidof imap)", enter "cont" in gdb, do operation in mail client that crashes, get backtrace from gdb.
johannes