[dovecot-cvs] dovecot/src/lib-index mail-index.c,1.203,1.204

cras at dovecot.org cras at dovecot.org
Thu Jul 21 22:07:40 EEST 2005


Update of /var/lib/cvs/dovecot/src/lib-index
In directory talvi:/tmp/cvs-serv30950

Modified Files:
	mail-index.c 
Log Message:
Check that record alignmentation is actually used correctly. If not,
recreate the index.



Index: mail-index.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-index/mail-index.c,v
retrieving revision 1.203
retrieving revision 1.204
diff -u -d -r1.203 -r1.204
--- mail-index.c	4 Jul 2005 11:32:20 -0000	1.203
+++ mail-index.c	21 Jul 2005 19:07:37 -0000	1.204
@@ -326,6 +326,15 @@
 			return -1;
 		}
 
+		if ((ext_hdr->record_offset % ext_hdr->record_align) != 0 ||
+		    (map->hdr.record_size % ext_hdr->record_align) != 0) {
+			mail_index_set_error(index, "Corrupted index file %s: "
+				"Record field %s alignmentation %u not used",
+				index->filepath, name, ext_hdr->record_align);
+			t_pop();
+			return -1;
+		}
+
 		mail_index_map_register_ext(index, map, name,
 					    offset, ext_hdr->hdr_size,
 					    ext_hdr->record_offset,



More information about the dovecot-cvs mailing list