Re: [Dovecot] Error using antispam plugin
Compiling this way:
# export CFLAGS="-g3 -O2" # DEB_BUILD_OPTIONS=nostrip dpkg-buildpackage -rfakeroot -b
I get this:
================================================================
pdc-server:~# ps aux | grep dove root 16954 0.0 0.2 1940 616 ? Ss 21:15 0:00 /usr/sbin/dovecot root 16955 0.0 1.1 9680 2948 ? S 21:15 0:00 dovecot-auth dovecot 16961 0.0 0.5 3308 1508 ? S 21:15 0:00 imap-login dovecot 16962 0.0 0.5 3308 1508 ? S 21:15 0:00 imap-login dovecot 16967 0.0 0.5 3312 1512 ? S 21:16 0:00 imap-login mailuser 16968 0.5 0.5 2600 1348 ? S 21:16 0:00 /usr/lib/dovecot/imap root 16971 0.0 0.2 2880 752 pts/0 R+ 21:16 0:00 grep dove pdc-server:~# gdb -p 16968 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 16968 Reading symbols from /usr/lib/dovecot/imap...done. Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1". Reading symbols from /lib/tls/i686/cmov/libdl.so.2...done. Loaded symbols for /lib/tls/i686/cmov/libdl.so.2 Reading symbols from /lib/tls/i686/cmov/libc.so.6...done. Loaded symbols for /lib/tls/i686/cmov/libc.so.6 Reading symbols from /lib/ld-linux.so.2...done. Loaded symbols for /lib/ld-linux.so.2 Reading symbols from /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so...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...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. 0xb7f98410 in ?? () (gdb) cont Continuing.
Program received signal SIGSEGV, Segmentation fault. mail_get_physical_size (mail=0x8135db8, size_r=0x0) at mail.c:100 100 return p->v.get_physical_size(mail, size_r); (gdb) bt full #0 mail_get_physical_size (mail=0x8135db8, size_r=0x0) at mail.c:100 No locals. #1 0xb7e575c5 in quota_check (t=0x8135db8, mail=0x0) at quota-storage.c:148 qt = (struct quota_transaction_context *) 0x0 ret = <value optimized out> too_large = 8 #2 0xb7e4b058 in antispam_save_finish (ctx=0x813cb98) at antispam-storage-1.1.c:178 asbox = (struct antispam_mailbox *) 0x81252f8 ast = (struct antispam_internal_context *) 0x8135df0 dest_mail = (struct mail *) 0xbffead08 ret = 135093999 #3 0x0805a1c8 in cmd_append_continue_message (cmd=0x810d4e0) at cmd-append.c:405 client = (struct client *) 0x810bd48 ctx = (struct cmd_append_context *) 0x810d528 size = 135314760 ret = <value optimized out> #4 0x0805a59a in cmd_append_continue_parsing (cmd=0x810d4e0) at cmd-append.c:353 uid2 = <value optimized out> msg = <value optimized out> sync_flags = <value optimized out> imap_flags = <value optimized out> uid_validity = <value optimized out> uid1 = <value optimized out> client = (struct client *) 0x810bd48 ctx = (struct cmd_append_context *) 0x810d528 args = (const struct imap_arg *) 0x8135ec0 flags_list = (const struct imap_arg *) 0x8135f50 flags = MAIL_SEEN keywords_list = (const char * const *) 0x0 keywords = (struct mail_keywords *) 0x0 internal_date_str = 0x0 internal_date = -1 ret = 0 timezone_offset = 0 nonsync = false __PRETTY_FUNCTION__ = "cmd_append_continue_parsing" #5 0x0805a7b5 in cmd_append (cmd=0x810d4e0) at cmd-append.c:499 storage = (struct mail_storage *) 0x810b660 box = <value optimized out> client = (struct client *) 0x810bd48 ---Type <return> to continue, or q <return> to quit--- ctx = (struct cmd_append_context *) 0x810d528 mailbox = 0x8110588 "Sent" #6 0x0805fa6c in client_command_input (cmd=0x810d4e0) at client.c:580 client = (struct client *) 0x810bd48 command = <value optimized out> __PRETTY_FUNCTION__ = "client_command_input" #7 0x0805fb15 in client_command_input (cmd=0x810d4e0) at client.c:629 client = (struct client *) 0x810bd48 command = (struct command *) 0x8 __PRETTY_FUNCTION__ = "client_command_input" #8 0x08060305 in client_handle_input (client=0x810bd48) at client.c:670 _data_stack_cur_id = 3 ret = <value optimized out> remove_io = <value optimized out> handled_commands = false #9 0x0806050e in client_input (client=0x810bd48) at client.c:725 cmd = <value optimized out> output = (struct ostream *) 0x810becc bytes = 34 __PRETTY_FUNCTION__ = "client_input" #10 0x080d9100 in io_loop_handler_run (ioloop=0x8108ab8) at ioloop-epoll.c:201 ctx = <value optimized out> event = (const struct epoll_event *) 0x8108bf0 list = (struct io_list *) 0x810d118 io = (struct io_file *) 0x810bf28 tv = {tv_sec = 4, tv_usec = 999721} t_id = 2 msecs = <value optimized out> ret = 1 i = 0 j = 0 call = <value optimized out> #11 0x080d8098 in io_loop_run (ioloop=0x8108ab8) at ioloop.c:308 No locals. #12 0x080680db in main (argc=Cannot access memory at address 0x8 ) at main.c:293 home = 0x0 (gdb)
================================================================
Nothing new. The error persists. Any additional help is welcome.
Regards.
What flags should i then use? I have tried with "-g3 -O0" and only with "-O0" but i do not get any additional info.
2008/6/5 Timo Sirainen <tss@iki.fi>:
On Jun 5, 2008, at 11:17 PM, Juan Asensio Sánchez wrote:
Compiling this way:
# export CFLAGS="-g3 -O2"
Almost, but not quite :) *without* -O2, not with. It's enabled by default.
On Jun 6, 2008, at 1:21 AM, Juan Asensio Sánchez wrote:
What flags should i then use? I have tried with "-g3 -O0" and only with "-O0" but i do not get any additional info.
The problem with your backtrace is that:
#0 mail_get_physical_size (mail=0x8135db8, size_r=0x0) at mail.c:100
- size_r should never be NULL here.
- mail is set here, but
#1 0xb7e575c5 in quota_check (t=0x8135db8, mail=0x0) at quota- storage.c:148 qt = (struct quota_transaction_context *) 0x0 ret = <value optimized out> too_large = 8
- mail is NULL here. So is it really set or isn't it set? This
inconsistency probably gets fixed by not using -O2. - ret = <value optimized out> is also caused by -O2
# export CFLAGS="-g3 -O0"
I don't know if this is supposed to work when compiling debian
packages. If it doesn't get rid of the <value optimized out>, then I
guess it's not being used.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Fri, Jun 06, 2008 at 12:21:27AM +0200, Juan Asensio Sánchez wrote:
What flags should i then use? I have tried with "-g3 -O0" and only with "-O0" but i do not get any additional info.
Hmm. It should. I'm tight on time, but you can have a look into the debian subdir (especially in debian/rules). Maybe the packager set some compiler options explicitly there.
Regards
- -- tomás -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFISNG5Bcgs9XrR2kYRApe7AJ0UwC3EU4zlWJYq1Ucd22O/T/ezSwCfWkKz vTwwBCMl/md3F6Jn1rQOXA8= =oh0H -----END PGP SIGNATURE-----
participants (3)
-
Juan Asensio Sánchez
-
Timo Sirainen
-
tomas@tuxteam.de