diff -r 6a6462ce8a08 -r 297c6c8be2d1 librazor/razor.c --- a/librazor/razor.c Thu Oct 01 20:02:12 2009 +0100 +++ b/librazor/razor.c Thu Oct 01 20:02:23 2009 +0100 @@ -143,6 +143,14 @@ return -1; } + if (file->size < sizeof *file->header || + file->header->magic != RAZOR_MAGIC || + file->header->version != RAZOR_VERSION) { + razor_file_free_contents(file->header, file->size); + free(file); + return -1; + } + if (set->mapped_files == NULL) { for (i = 0; i < ARRAY_SIZE(razor_sections); i++) { array = (void *) set + razor_sections[i].offset;