Hi Everybody,
I'm using dovecot 2.1.14 from http://xi.rename-it.nl/debian/ with debian squeeze stable.
In general, sieve works fine for me, but "addheader :last ..." from the editheader extension causes a crash when it processes a message.
I was able to narrow this down a bit: It only happens if "addheader :last" is the first editheader command executed in a script. If it is preceded by any "deleteheader" or "addheader" without ":last", everything is fine.
This is what I get from sieve-test when it crashes:
sieve-test(root): Panic: file istream.c: line 133 (i_stream_read): assertion failed: (_stream->skip != _stream->pos)
sieve-test(root): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x4881a) [0x7f5e0b37681a] -> /usr/lib/dovecot/libdovecot.so.0(default_fatal_handler+0x32) [0x7f5e0b376902] -> /usr/lib/dovecot/libdovecot.so.0(i_error+0) [0x7f5e0b349f7f] -> /usr/lib/dovecot/libdovecot.so.0(i_stream_read+0x17c) [0x7f5e0b37da9c] -> /usr/lib/dovecot/libdovecot.so.0(+0x51453) [0x7f5e0b37f453] -> /usr/lib/dovecot/libdovecot.so.0(+0x5150e) [0x7f5e0b37f50e] -> /usr/lib/dovecot/libdovecot.so.0(i_stream_read+0x69) [0x7f5e0b37d989] -> /usr/lib/dovecot/libdovecot.so.0(+0x53fe1) [0x7f5e0b381fe1] -> /usr/lib/dovecot/libdovecot.so.0(i_stream_read+0x69) [0x7f5e0b37d989] -> /usr/lib/dovecot/libdovecot.so.0(i_stream_read_data+0x52) [0x7f5e0b37dc72] -> /usr/lib/dovecot/libdovecot.so.0(io_stream_copy+0x41) [0x7f5e0b38ae21] -> /usr/lib/dovecot/libdovecot.so.0(+0x5e1de) [0x7f5e0b38c1de] -> /usr/lib/dovecot/libdovecot.so.0(o_stream_send_istream+0x33) [0x7f5e0b38acb3] -> /usr/lib/dovecot/libdovecot-storage.so.0(maildir_save_continue+0x38) [0x7f5e0be0caf8] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_storage_copy+0xb8) [0x7f5e0be376d8] -> /usr/lib/dovecot/libdovecot-storage.so.0(maildir_copy+0x56) [0x7f5e0be086c6] -> /usr/lib/dovecot/libdovecot-storage.so.0(mailbox_copy+0x4a) [0x7f5e0be3ce9a] -> /usr/lib/dovecot/libdovecot-sieve.so.0(+0x3fa66) [0x7f5e0c103a66] -> /usr/lib/dovecot/libdovecot-sieve.so.0(+0x366b4) [0x7f5e0c0fa6b4] -> /usr/lib/dovecot/libdovecot-sieve.so.0(sieve_result_execute+0x3ff) [0x7f5e0c0fabef] -> /usr/lib/dovecot/libdovecot-sieve.so.0(sieve_execute+0x56) [0x7f5e0c10b456] -> sieve-test(main+0x73e) [0x403a5e] -> /lib/libc.so.6(__libc_start_main+0xfd) [0x7f5e0abdec8d] -> sieve-test() [0x403219] Aborted
Best regards Peter