Am Samstag, 17. Februar 2007 11:59 schrieb Ulrich P. Klein: > 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:
Cyrus Team, any ideas on this bug? The same code exists in the original package. > ---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. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]