[Dovecot] 2.0rc3: Panic: [...] mailbox_list_is_valid_pattern (was: Crash while accessing mdbox folders)
Axel Thimm
athimm at flocki.atrpms.net
Tue Aug 3 14:16:57 EEST 2010
On Mon, Aug 02, 2010 at 04:01:24PM +0100, Timo Sirainen wrote:
> On Thu, 2010-07-29 at 13:56 +0300, Axel Thimm wrote:
> > > Jul 28 19:42:48 lda(athimm): Panic: file mailbox-list-fs.c: line 150
> > > (fs_list_get_path): assertion failed:
> > > (mailbox_list_is_valid_pattern(_list, name))
> ..
> > I found what the issue was, a bogus line in my sieve script tried to use
> > a match variable that hadn't been set (e.g. I matched only two globs,
> > but I used ${3}).
>
> Is it the same as if you just did fileinto ""? I can't reproduce this,
> the best I get is:
>
> Aug 02 15:59:25 lda(2189 tss): Error: sieve: msgid=<blah at blah>: subject=blah: failed to store into mailbox '': Unknown namespace
> Aug 02 15:59:25 lda(2189 tss): Error: sieve: execution of script /home/tss/.dovecot.sieve failed, but implicit keep was successful
>
> or if I have a prefix="" namespace, then it just quietly goes to INBOX.
Here are my rules for mailing lists catchall:
if header :matches "List-ID" "*<*.*>" {
fileinto :create "${folder}/${3}/${2}";
addflag "DeliveredTo" "$${dflag}";
} elsif header :matches "List-ID" "*<*>" {
fileinto :create "${folder}/${2}";
addflag "DeliveredTo" "$${dflag}";
} elsif header :matches "List-ID" "*.*" {
fileinto :create "${folder}/${2}/${1}";
addflag "DeliveredTo" "$${dflag}";
} elsif header :matches "List-ID" "*" {
fileinto :create "${folder}/${1}";
addflag "DeliveredTo" "$${dflag}";
} elsif header :matches "List-Owner" "<mailto:*-owner@*>" {
fileinto :create "${folder}/${2}/${1}";
addflag "DeliveredTo" "$${dflag}";
} elsif header :matches "List-post" "<mailto:*@*>" {
fileinto :create "${folder}/${2}/${1}";
addflag "DeliveredTo" "$${dflag}";
} elsif header :matches "List-owner" "<mailto:*-request@*>" {
fileinto :create "${folder}/${2}/${1}";
addflag "DeliveredTo" "$${dflag}";
}
Due to copy and paste I had some rules like
} elsif header :matches "List-Owner" "<mailto:*-owner@*>" {
fileinto :create "${folder}/${3}/${2}";
addflag "DeliveredTo" "$${dflag}";
} [...]
The bad rules only triggered on very few mailing lists (those that
don't use proper List-*: headers), so I only noticed a couple of days
later. IIRC two of the lists were bugzilla and scientific-linux.
E.g. the fileinto was probably given some argument of "lists//somedomain.org"
Does this information help?
More information about the dovecot
mailing list