dovecot-lda 2.2.13 crashing when sieve_before used
Hi together!
We use dovecot under Debian wheezy amd64, using the repository ... deb http://xi.rename-it.nl/debian/ stable-auto/dovecot-2.2 main
Yesterday's routine upgrade to version 2:2.2.13-1~auto+130 (or some other upgrade that came along from Debian?) introduced a problem with mail delivery, which I was able to track down to a crash of dovecot-lda.
Whenever I do something like ...
/usr/lib/dovecot/dovecot-lda -d christoph.lechleitner@iteg.at The gdb backtrace is: #0 buffer_free (_buf=_buf@entry=0x242eb20) at buffer.c:145
#1 0x00007f30d47ea4fd in array_free_i (array=0x242eb20) at
/build/dovecot-8Ko2hw/dovecot-2.2.13/src/lib/array.h:108
#2 sieve_file_script_sequence_destroy (seq=0x242eb10) at
sieve-file-script-sequence.c:242
#3 0x00007f30d47c963e in sieve_script_sequence_free
(_seq=_seq@entry=0x7fffe2dbe900) at sieve-script.c:686
#4 0x00007f30d4a3d4b3 in lda_sieve_multiscript_get_scripts
(svinst=svinst@entry=0x242abe0,
label=label@entry=0x7f30d4a3e7c0 "sieve_before",
location=location@entry=0x2416500
"/etc/dovecot/sieve/discard-viruses.sieve",
scripts=scripts@entry=0x7fffe2dbe9b0,
error_r=error_r@entry=0x7fffe2dbe998) at lda-sieve-plugin.c:271
#5 0x00007f30d4a3d7e5 in lda_sieve_find_scripts (srctx=0x7fffe2dbea40)
at lda-sieve-plugin.c:740
#6 lda_sieve_deliver_mail (mdctx=<optimized out>,
storage_r=0x7fffe2dbec00) at lda-sieve-plugin.c:973
#7 0x00007f30d5e05464 in mail_deliver (ctx=ctx@entry=0x7fffe2dbec70,
storage_r=storage_r@entry=0x7fffe2dbec00) at mail-deliver.c:400
#8 0x0000000000402a92 in main (argc=3, argv=0x2402390) at main.c:437 The problem vanishes once I remove the sieve_before script, in our case
/etc/dovecot/sieve/discard-viruses.sieve The sieve script does not contain anything fancy, and it works perfectly
when used as sieve_default. It seems the mere presence of a sieve_before script triggers the problem. Some environment info: As of dovecot -n, I guess only the sieve related parts are relevant, if
at all:
plugin {
sieve = /var/vmail/%d/%n/sieve
sieve_before = /etc/dovecot/sieve/discard-viruses.sieve
sieve_default = /etc/dovecot/sieve/default.sieve
sieve_dir = /var/vmail/%d/%n/sieve-scripts
} I also tried version 2:2.2.13-1~auto+138 from the dovecot-2.2.patched
repository that I stumbled over while browsing the repository server. No
difference regarding our problem. Our filesystem is ext4 disguised as simfs by the OpenVZ virtualization
kernel. I'm pretty sure the filesystem does not matter with our problem. I'd be happy to re-test with testing releases, but I'd like to avoid
setting up a full-blown test environment where unstable and bleeding
edge versions would be ok. Thanks in advance for any help, Regards, Christoph -- Christoph Lechleitner
ITEG IT-Engineers GmbH | Conradstr. 5, A-6020 Innsbruck
FN 365826f | Handelsgericht Innsbruck | Mobiltelefon: +43 699 12090423
Mail: christoph.lechleitner@iteg.at | Web: http://www.iteg.at/
Hi,
On 8/5/2014 1:47 AM, Christoph Lechleitner wrote:
Hi together!
We use dovecot under Debian wheezy amd64, using the repository ... deb http://xi.rename-it.nl/debian/ stable-auto/dovecot-2.2 main
Yesterday's routine upgrade to version 2:2.2.13-1~auto+130 (or some other upgrade that came along from Debian?) introduced a problem with mail delivery, which I was able to track down to a crash of dovecot-lda.
Yes, my bad. I hadn't actually tested sieve_before pointing to a single regular file (so not a directory).
Last two commits should fix this.
I also tried version 2:2.2.13-1~auto+138 from the dovecot-2.2.patched repository that I stumbled over while browsing the repository server. No difference regarding our problem.
Ehmm. Don't do that. :) It contains all kinds of highly experimental code, i.e. it includes the dovecot-2.2-patches and pigeonhole-0.4-patches patch queues.
I'd be happy to re-test with testing releases, but I'd like to avoid setting up a full-blown test environment where unstable and bleeding edge versions would be ok.
You can re-test when a new package is released by Xi. Should happen within the hour after this message was sent.
Thanks in advance for any help,
Thanks for the complete bug report.
Regards,
Stephan.
Am 2014-08-05 04:01, schrieb Stephan Bosch:
Yesterday's routine upgrade to version 2:2.2.13-1~auto+130 (or some other upgrade that came along from Debian?) introduced a problem with mail delivery, which I was able to track down to a crash of dovecot-lda.
Yes, my bad. I hadn't actually tested sieve_before pointing to a single regular file (so not a directory).
Who doesn't hate writing testcases ;-)
Last two commits should fix this. [...] You can re-test when a new package is released by Xi. Should happen within the hour after this message was sent.
Just got 2:2.2.13-1~auto+131 from the Debian repos, and the problem is fixed.
Thanks for the ultra-fast fix!
Thanks for the complete bug report.
Always. My main job is software development, I know how frustrating incomplete bug reports can be.
Regards, Christoph
participants (2)
-
Christoph Lechleitner
-
Stephan Bosch