Stephan Bosch schreef:
Tom Hendrikx schreef:
Hi,
After upgrading from dovecot 1.1 to dovecot 1.2.2 and the new sieve implementation (0.1.9), I'm having some strange problems. I'm including some general purpose scripts into my user script from sieve_global_dir.
After some tests it seems that ths scripts get executed at random: sometimes the mail gets stored in the correct dir, and sometimes it goes to inbox. This also happens while using the same compiled .svbin file.
Another indication that something is wrong with the compiled .svbin is output of sieved (see below). Running sieved on the compiled test{1,2,3}.svbin files gives regular output.
Output of 'sieved /home/tomhendr/.default.svbin
Required extensions:
0: include (16) 1: fileinto (5) Panic: file ext-include-variables.c: line 133 (ext_include_variables_dump): assertion failed: (global_vars != NULL) Error: Raw backtrace: sieved [0xa7fbfe10] -> sieved(default_fatal_handler+0x57) [0xa7fbfe97] -> sieved [0xa7fc006e] -> sieved [0xa7f7384c] -> sieved(ext_include_binary_dump+0x48) [0xa7f531c8] -> sieved(sieve_binary_dumper_run+0x119) [0xa7f671a9] -> sieved(sieve_dump+0x42) [0xa7f4bf82] -> sieved(sieve_tool_dump_binary_to+0x6f) [0xa7f7b77f] -> sieved(main+0x174) [0xa7f42564] -> /lib/libc.so.6(__libc_start_main+0xe2) [0xa7dce712] -> sieved [0xa7f422b1] Aborted
Thanks for the thorough bug report. I could reproduce this instantly. I forgot to initialize the binary for use with the include extension in one particular situation: when the binary is loaded from disk. Directly after compilation, all works well. Fixed:
Applied and tested. sieved and sieve-test now complain with an error message, but everything seems to function when run from within dovecot.
Error: sieve: include: sieve_dir and home not set (wanted script spam.sieve) Error: failed to load binary: .default.svbin
I'll wait for your new release, but of course I'm willing to test another patch beforehand :)
-- regards, Tom