changeset 8382:bcf3a185bfc1 HEAD

Enforce valid mUTF-7 names when creating new mailboxes.
author Timo Sirainen <tss@iki.fi>
date Sat, 01 Nov 2008 21:16:38 +0200
parents 81c0fe5bd635
children 8815fc1099c8
files src/lib-storage/mailbox-list.c
diffstat 1 files changed, 10 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-storage/mailbox-list.c	Sat Nov 01 21:12:01 2008 +0200
+++ b/src/lib-storage/mailbox-list.c	Sat Nov 01 21:16:38 2008 +0200
@@ -3,9 +3,11 @@
 #include "lib.h"
 #include "array.h"
 #include "ioloop.h"
+#include "str.h"
 #include "home-expand.h"
 #include "unlink-directory.h"
 #include "imap-match.h"
+#include "imap-utf7.h"
 #include "mailbox-tree.h"
 #include "mailbox-list-private.h"
 
@@ -346,7 +348,14 @@
 bool mailbox_list_is_valid_create_name(struct mailbox_list *list,
 				       const char *name)
 {
-	return list->v.is_valid_create_name(list, name);
+	int ret;
+
+	T_BEGIN {
+		string_t *str = t_str_new(256);
+		ret = imap_utf7_to_utf8(name, str);
+	} T_END;
+	return ret < 0 ? FALSE :
+		list->v.is_valid_create_name(list, name);
 }
 
 const char *mailbox_list_get_path(struct mailbox_list *list, const char *name,