segfault in ctl_cyrusdb/cyr_expire/lmtpd
Dmitry Katsubo
dmitry.katsubo at gmail.com
Wed Nov 28 15:41:50 EST 2012
In there anybody in the maillist, who can further assist me with this
issue? Please help to recover.
On 13.11.2012 19:00, Dmitry Katsubo wrote:
> Thanks for help. Indeed the problem is rooted in how mailboxes.db is
> handled. The problem which I was trying to tackle here
>
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=604468
>
> was that partition name was ending with a tab, while the code expected
> the space. Here does the dump of header of my mailboxes.db:
>
>> 00000000 a1 02 8b 0d 73 6b 69 70 6c 69 73 74 20 66 69 6c |....skiplist fil|
>> 00000010 65 00 00 00 00 00 00 01 00 00 00 02 00 00 00 14 |e...............|
>> 00000020 00 00 00 07 00 00 00 46 00 00 15 f0 50 a1 8d b0 |.......F....P...|
>> 00000030 00 00 01 01 00 00 00 00 00 00 00 00 00 00 00 90 |................|
>> 00000040 00 00 00 90 00 00 01 14 00 00 01 14 00 00 01 14 |................|
>> 00000050 00 00 06 6c 00 00 06 6c 00 00 00 00 00 00 00 00 |...l...l........|
>> 00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
>> *
>> 00000080 00 00 00 00 00 00 00 00 00 00 00 00 ff ff ff ff |................|
>> 00000090 00 00 00 01 00 00 00 0b 75 73 65 72 2e 64 6d 69 |........user.dmi|
>> 000000a0 74 72 79 00 00 00 00 1b 30 20 64 65 66 61 75 6c |try.....0 defaul|
>> 000000b0 74 09 64 6d 69 74 72 79 09 6c 72 73 77 69 70 63 |t.dmitry.lrswipc|
>> 000000c0 64 61 09 00 00 00 00 d0 00 00 01 14 ff ff ff ff |da..............|
>> 000000d0 00 00 00 01 00 00 00 14 75 73 65 72 2e 64 6d 69 |........user.dmi|
>> 000000e0 74 72 79 2e 41 72 63 68 69 76 65 73 00 00 00 1b |try.Archives....|
>> 000000f0 30 20 64 65 66 61 75 6c 74 09 64 6d 69 74 72 79 |0 default.dmitry|
>> 00000100 09 6c 72 73 77 69 70 63 64 61 09 00 00 00 01 14 |.lrswipcda......|
>> 00000110 ff ff ff ff 00 00 00 01 00 00 00 19 75 73 65 72 |............user|
>> 00000120 2e 64 6d 69 74 72 79 2e 41 72 63 68 69 76 65 73 |.dmitry.Archives|
>> 00000130 2e 32 30 31 30 00 00 00 00 00 00 1b 30 20 64 65 |.2010.......0 de|
>> 00000140 66 61 75 6c 74 20 64 6d 69 74 72 79 09 6c 72 73 |fault dmitry.lrs|
>> 00000150 77 69 70 63 64 61 09 00 00 00 01 70 00 00 01 70 |wipcda.....p...p|
>> 00000160 00 00 02 98 00 00 06 6c 00 00 06 6c ff ff ff ff |.......l...l....|
> ...
>
> If you tell me, how correctly should I export and import back
> mailboxes.db (perhaps with db_dump / db_load). Perhaps I was trapped by
> this issue:
>
>> http://www.mail-archive.com/cyrus-devel@lists.andrew.cmu.edu/msg00305.html
>
> as I would have dumped/restored the mailbox one day.
>
> BTW ctl_mboxlist aborts now in my environment:
>
> # ctl_mboxlist -d
> Aborted
>
>> That said, it shouldn't be crashing in 2.4.16!
>
> Well, there is a check for data length:
>
> while (*p != ' ' && (p - data) < datalen) {
> *q++ = *p++;
> }
>
> but still the pointer goes far beyond the expected point, perhaps
> causing the trouble in another place.
--
With best regards,
Dmitry
More information about the Info-cyrus
mailing list