From: Timo Sirainen Date: Sat, 12 Jul 2008 13:16:19 +0000 (+0300) Subject: Maildir: If filename has CR or LF, log a warning and ignore it instead of X-Git-Tag: 1.2.alpha1~165 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=32147ee6bdea566e64139b77ad0ea89960200df9;p=thirdparty%2Fdovecot%2Fcore.git Maildir: If filename has CR or LF, log a warning and ignore it instead of writing a corrupted dovecot-uidlist. --HG-- branch : HEAD --- diff --git a/src/lib-storage/index/maildir/maildir-uidlist.c b/src/lib-storage/index/maildir/maildir-uidlist.c index 53af5bfa77..44177f3c88 100644 --- a/src/lib-storage/index/maildir/maildir-uidlist.c +++ b/src/lib-storage/index/maildir/maildir-uidlist.c @@ -1370,10 +1370,19 @@ int maildir_uidlist_sync_next(struct maildir_uidlist_sync_ctx *ctx, { struct maildir_uidlist *uidlist = ctx->uidlist; struct maildir_uidlist_rec *rec, *old_rec; + const char *p; if (ctx->failed) return -1; + for (p = filename; *p != '\0'; p++) { + if (*p == 13 || *p == 10) { + i_warning("Maildir %s: Ignoring a file with #0x%x: %s", + uidlist->mbox->path, *p, filename); + return 1; + } + } + if (ctx->partial) { maildir_uidlist_sync_next_partial(ctx, filename, flags); return 1;