Avoid crash if import directory is messed up Modified: trunk/reactos/ntoskrnl/ldr/loader.c _____
Modified: trunk/reactos/ntoskrnl/ldr/loader.c --- trunk/reactos/ntoskrnl/ldr/loader.c 2005-01-26 22:34:39 UTC (rev 13324) +++ trunk/reactos/ntoskrnl/ldr/loader.c 2005-01-26 23:30:50 UTC (rev 13325) @@ -1577,6 +1577,12 @@
DPRINT("Processeing import directory at %p\n", ImportModuleDirectory); while (ImportModuleDirectory->Name) { + if (Module->Length <= ImportModuleDirectory->Name) + { + DPRINT1("Invalid import directory in %wZ\n", &Module->FullName); + return STATUS_SECTION_NOT_IMAGE; + } + /* Check to make sure that import lib is kernel */ ImportedName = (PCHAR) Module->Base + ImportModuleDirectory->Name;