From: Timo Sirainen Date: Fri, 3 Jun 2016 16:58:29 +0000 (+0300) Subject: lib-index: Fixed fsck handling extension with invalid header size X-Git-Tag: 2.3.0.rc1~3565 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=909a45f03f34dcdf9495b037ab87520152a4bc6b;p=thirdparty%2Fdovecot%2Fcore.git lib-index: Fixed fsck handling extension with invalid header size Fixes: Panic: file mail-index-sync-ext.c: line 393 (mail_index_sync_ext_init_new): assertion failed: (hdr_buf->used == map->hdr.header_size) --- diff --git a/src/lib-index/mail-index-fsck.c b/src/lib-index/mail-index-fsck.c index 850ae93c5d..8b17788566 100644 --- a/src/lib-index/mail-index-fsck.c +++ b/src/lib-index/mail-index-fsck.c @@ -277,6 +277,7 @@ mail_index_fsck_extensions(struct mail_index *index, struct mail_index_map *map, "with invalid header size", i, name); hdr->header_size = offset; + buffer_set_used_size(map->hdr_copy_buf, hdr->header_size); break; } if (mail_index_map_ext_hdr_check(hdr, ext_hdr, name, @@ -420,6 +421,7 @@ mail_index_fsck_map(struct mail_index *index, struct mail_index_map *map) mail_index_fsck_records(index, map, &hdr); map->hdr = hdr; + i_assert(map->hdr_copy_buf->used == map->hdr.header_size); } int mail_index_fsck(struct mail_index *index)