[Dovecot] Sieve segfault on sieve-before scripts

Stephan Bosch stephan at rename-it.nl
Thu Sep 3 00:36:53 EEST 2009


Max Ivanov wrote:
> I use dovecot 1.2.4 release with sieve 0.1.12
> 
> If I setup sieve-before script and latest script contains "keep" at
> the very end and no personal scripts found then segfault take place.
> 
> here is part of exim log:
> 2009-09-01 18:43:06 1MiUZA-0005V9-IB ** ivanov_maxim at domain.my
> <admin at domain.my> R=localuser T=local_delivery: Child process of
> local_delivery transport (running command
> "/usr/libexec/dovecot/deliver -d $local_part") was terminated by
> signal 11 (Segmentation fault)
> 
> 
> Once I remove "keep" from end of latest sieve-before script,
> everything goes fine.

Using the backtrace and scripts you provided I could reproduce and fix 
this bug:

http://hg.rename-it.nl/dovecot-1.2-sieve/rev/c26e7c2300b4

Apparently, I haven't tested the execution imap4flags very well in 
multiscript context when I last restructured the implementation; I found 
more related bugs when I fixed the one above:

http://hg.rename-it.nl/dovecot-1.2-sieve/rev/b62291ff5faf
http://hg.rename-it.nl/dovecot-1.2-sieve/rev/f3642d9934cf

The test suite is obviously in dire need of some multiscript support. 
I'll fix that before the next release to make sure this will not happen 
again.

Regards,

Stephan.







More information about the dovecot mailing list