dovecot: mail_index_ext_register(): Panic if parameters aren't c...

dovecot at dovecot.org dovecot at dovecot.org
Wed Nov 28 15:51:00 EET 2007


details:   http://hg.dovecot.org/dovecot/rev/f7ec019fd3f6
changeset: 6871:f7ec019fd3f6
user:      Timo Sirainen <tss at iki.fi>
date:      Wed Nov 28 15:50:22 2007 +0200
description:
mail_index_ext_register(): Panic if parameters aren't correct.

diffstat:

1 file changed, 7 insertions(+), 1 deletion(-)
src/lib-index/mail-index.c |    8 +++++++-

diffs (19 lines):

diff -r 373beccc2468 -r f7ec019fd3f6 src/lib-index/mail-index.c
--- a/src/lib-index/mail-index.c	Wed Nov 28 09:16:17 2007 +0200
+++ b/src/lib-index/mail-index.c	Wed Nov 28 15:50:22 2007 +0200
@@ -96,8 +96,14 @@ uint32_t mail_index_ext_register(struct 
 	struct mail_index_registered_ext rext;
 	uint32_t ext_id;
 
-	if (strcmp(name, str_sanitize(name, -1)) != 0)
+	if (*name == '\0' || strcmp(name, str_sanitize(name, -1)) != 0)
 		i_panic("mail_index_ext_register(%s): Invalid name", name);
+
+	if ((default_record_size == 0 && default_hdr_size == 0) ||
+	    (default_record_size != 0 && default_record_align == 0)) {
+		i_panic("mail_index_ext_register(%s): "
+			"Invalid record parameters", name);
+	}
 
 	if (mail_index_ext_lookup(index, name, &ext_id))
 		return ext_id;


More information about the dovecot-cvs mailing list