[pkg-kolab] Bug#411240: kolab-cyrus-imapd: Corrupt quota files
cause data loss
Ulrich P. Klein
klein at ulrich-p-klein.de
Sat Feb 17 11:59:40 CET 2007
Package: kolab-cyrus-imapd
Version: 2.2.13-2
Severity: grave
Justification: renders package unusable
Today I discovered that lmtpd segfaulted on any local mail. After a
little inveestigating, I found that the problem was caused by the
following lines in imap/quota_db.c:
---8<------
int quota_read(struct quota *quota, struct txn **tid, int wrlock)
{
int r;
int qrlen;
const char *data;
int datalen;
if (!quota->root || !(qrlen = strlen(quota->root)))
return IMAP_QUOTAROOT_NONEXISTENT;
if (wrlock)
r = QDB->fetchlock(qdb, quota->root, qrlen, &data, &datalen, tid);
else
r = QDB->fetch(qdb, quota->root, qrlen, &data, &datalen, tid);
switch (r) {
case CYRUSDB_OK:
sscanf(data, "%lu %d", "a->used, "a->limit);
break;
---8<------
An ltrace showed that data pointed to 0 when sscanf was called. I found
two files:
/var/lib/cyrus/domain/u/ulrich-p-klein.de/quota/k/user.klein
/var/lib/cyrus/domain/u/ulrich-p-klein.de/quota/k/user.klein.NEW
The first file was empty, the second (sorry, I didn't keep it) was 5
bytes long. Calling cyrqouta or cyrquota -f didn't help.
After removal of those files, everything worked fine.
-- System Information:
Debian Release: 4.0
APT prefers testing-proposed-updates
APT policy: (900, 'testing-proposed-updates'), (900, 'testing'), (400, 'stable'), (300, 'unstable')
Architecture: amd64 (x86_64)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18amd64
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Versions of packages kolab-cyrus-imapd depends on:
ii kolab-cy 2.2.13-2 Cyrus mail system (common files)
ii libc6 2.3.6.ds1-12 GNU C Library: Shared libraries
ii libcomer 1.39+1.40-WIP-2006.11.14+dfsg-1 common error description library
ii libdb4.2 4.2.52+dfsg-1 Berkeley v4.2 Database Libraries [
ii libkrb53 1.6.dfsg~alpha1-1 MIT Kerberos runtime libraries
ii libldap2 2.1.30-13.2 OpenLDAP libraries
ii libsasl2 2.1.22.dfsg1-8 Authentication abstraction library
ii libssl0. 0.9.8c-4 SSL shared libraries
ii libwrap0 7.6.dbs-12 Wietse Venema's TCP wrappers libra
kolab-cyrus-imapd recommends no packages.
-- no debconf information
More information about the pkg-kolab-devel
mailing list