[Dovecot] sievec segfaults
Hello, sievec segfaults when it reads a file. I've tried with both the standard and gold linker. I've tried with various sieve files and they all make it crash.
I've compiled pigeonhole with -ggdb, but I'm not getting much info
Program received signal SIGSEGV, Segmentation fault. 0x0000000800b8e587 in strlen () from /lib/libc.so.7 (gdb) bt full #0 0x0000000800b8e587 in strlen () from /lib/libc.so.7 No symbol table info available. #1 0x0000000800a12e8c in str_append () from /usr/lib/dovecot/libdovecot.so.0 No symbol table info available. #2 0x000000080077f02d in sieve_binary_save () from /usr/lib/dovecot/libdovecot-sieve.so.0 No symbol table info available. #3 0x0000000000605bf0 in environ () No symbol table info available. #4 0x0000000000000000 in ?? () No symbol table info available. #5 0x00007fffffffeb6e in ?? () No symbol table info available. #6 0x0000000000000001 in ?? () No symbol table info available. #7 0x0000000000000000 in ?? () No symbol table info available. #8 0x000000080060878d in ?? () from /libexec/ld-elf.so.1 No symbol table info available. #9 0x0000000000605cd9 in ?? () No symbol table info available. #10 0x0000000801000ea8 in ?? () No symbol table info available. #11 0x0000000000005008 in ?? () No symbol table info available. #12 0x0000000000000000 in ?? () No symbol table info available. #13 0x0000000801099040 in ?? () No symbol table info available. #14 0x0000000000000000 in ?? () No symbol table info available. #15 0x0000000000000180 in ?? () No symbol table info available. #16 0x0000000000605bf0 in environ () No symbol table info available. #17 0x0000000000000000 in ?? () No symbol table info available. #18 0x00007fffffffeb6e in ?? () No symbol table info available. #19 0x0000000000000001 in ?? () No symbol table info available. #20 0x0000000000000000 in ?? () No symbol table info available. #21 0x0000000000000000 in ?? () No symbol table info available. #22 0x0000000000402f93 in main () No symbol table info available.
Cheers,
Olivier
I pulled the latest code from the dovecot-2.1-pigeonhole repository.
Cheers,
Olivier
On 24/04/2012 18:10, Stephan Bosch wrote:
Op 4/24/2012 6:31 PM, interfaSys sàrl schreef:
Hello, sievec segfaults when it reads a file. I've tried with both the standard and gold linker. I've tried with various sieve files and they all make it crash.
What version?
Regards,
Stephan.
Op 4/24/2012 7:14 PM, interfaSys sàrl schreef:
I pulled the latest code from the dovecot-2.1-pigeonhole repository.
This is caused by the recent addition of dict database support for storing Sieve scripts.
This should fix it:
http://hg.rename-it.nl/dovecot-2.1-pigeonhole/rev/93bfa75d9ab9
Regards,
Stephan.
It worked! :) Thank you.
Olivier
On 24/04/2012 18:34, Stephan Bosch wrote:
Op 4/24/2012 7:14 PM, interfaSys sàrl schreef:
I pulled the latest code from the dovecot-2.1-pigeonhole repository.
This is caused by the recent addition of dict database support for storing Sieve scripts.
This should fix it:
http://hg.rename-it.nl/dovecot-2.1-pigeonhole/rev/93bfa75d9ab9
Regards,
Stephan.
I've recompiled Dovecot with ggdb and here is a more meaningful trace.
Program received signal SIGSEGV, Segmentation fault. 0x000000080067796b in str_append () from /usr/lib/dovecot/libdovecot.so.0 (gdb) bt full #0 0x000000080067796b in str_append () from /usr/lib/dovecot/libdovecot.so.0 No symbol table info available. #1 0x000000080047b672 in sieve_binary_save () from /usr/lib/dovecot/libdovecot-sieve.so.0 No symbol table info available. #2 0x0000000800461b04 in sieve_save_as () from /usr/lib/dovecot/libdovecot-sieve.so.0 No symbol table info available. #3 0x00000000004032e6 in main (argc=2, argv=0x7fffffffe948) at sievec.c:147 svinst = (struct sieve_instance *) 0x800c90040 st = {st_dev = 1288178348, st_ino = 6479, st_mode = 33261, st_nlink = 1, st_uid = 12, st_gid = 6, st_rdev = 4294967295, st_atimespec = { tv_sec = 1335288301, tv_nsec = 418632262}, st_mtimespec = {tv_sec = 1285859319, tv_nsec = 0}, st_ctimespec = {tv_sec = 1297096638, tv_nsec = 658928714}, st_size = 1197, st_blocks = 4, st_blksize = 4096, st_flags = 0, st_gen = 8013395, st_lspare = 0, st_birthtimespec = { tv_sec = 1297096638, tv_nsec = 658928714}} sbin = (struct sieve_binary *) 0x800c99040 dump = false scriptfile = (const __unknown__ *) 0x7fffffffec56 "/etc/test.sieve" outfile = (const __unknown__ *) 0x0 exit_status = 0 c = -1
Cheers,
Olivier
On 24/04/2012 18:10, Stephan Bosch wrote:
Op 4/24/2012 6:31 PM, interfaSys sàrl schreef:
Hello, sievec segfaults when it reads a file. I've tried with both the standard and gold linker. I've tried with various sieve files and they all make it crash.
What version?
Regards,
Stephan.
participants (2)
-
interfaSys sàrl
-
Stephan Bosch