If you pass a bogus layout file to the -l option flashrom will segfault.

Fix that by throwing an error instead.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Peter Stuge <peter@stuge.se>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3834 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Uwe Hermann 2008-12-22 16:42:59 +00:00
parent fdc5470bcf
commit 29fbb761ec
1 changed files with 5 additions and 0 deletions

View File

@ -156,6 +156,11 @@ int read_romlayout(char *name)
#endif #endif
tstr1 = strtok(tempstr, ":"); tstr1 = strtok(tempstr, ":");
tstr2 = strtok(NULL, ":"); tstr2 = strtok(NULL, ":");
if (!tstr1 || !tstr2) {
fprintf(stderr, "Error parsing layout file.\n");
fclose(romlayout);
return 1;
}
rom_entries[romimages].start = strtol(tstr1, (char **)NULL, 16); rom_entries[romimages].start = strtol(tstr1, (char **)NULL, 16);
rom_entries[romimages].end = strtol(tstr2, (char **)NULL, 16); rom_entries[romimages].end = strtol(tstr2, (char **)NULL, 16);
rom_entries[romimages].included = 0; rom_entries[romimages].included = 0;