dovecot-1.1: Maildir: If filename has CR or LF, log a warning an...

dovecot at dovecot.org dovecot at dovecot.org
Sat Jul 12 16:16:33 EEST 2008


details:   http://hg.dovecot.org/dovecot-1.1/rev/f70f3152bea8
changeset: 7744:f70f3152bea8
user:      Timo Sirainen <tss at iki.fi>
date:      Sat Jul 12 16:16:19 2008 +0300
description:
Maildir: If filename has CR or LF, log a warning and ignore it instead of
writing a corrupted dovecot-uidlist.

diffstat:

1 file changed, 9 insertions(+)
src/lib-storage/index/maildir/maildir-uidlist.c |    9 +++++++++

diffs (22 lines):

diff -r 33b842ef38b6 -r f70f3152bea8 src/lib-storage/index/maildir/maildir-uidlist.c
--- a/src/lib-storage/index/maildir/maildir-uidlist.c	Sat Jul 12 15:49:01 2008 +0300
+++ b/src/lib-storage/index/maildir/maildir-uidlist.c	Sat Jul 12 16:16:19 2008 +0300
@@ -1378,9 +1378,18 @@ int maildir_uidlist_sync_next(struct mai
 {
 	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);


More information about the dovecot-cvs mailing list