diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2012-05-23 23:58:11 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2012-05-23 23:58:11 -0400 |
commit | 33d5118d4482bc6e7ec08680c1fe343bd2c73d1f (patch) | |
tree | 36e0dfcb005368a7583ac386f143553e69aa56e8 /src/pmm.c | |
parent | 347f29452bbe2a57fc45cdbb3a4a34aff4ca222f (diff) | |
download | seabios-33d5118d4482bc6e7ec08680c1fe343bd2c73d1f.tar.gz |
Minor - verify UMB dummy optionrom header size doesn't overflow.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'src/pmm.c')
-rw-r--r-- | src/pmm.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -297,7 +297,8 @@ malloc_finalize(void) u32 base = rom_get_top(); struct rom_header *dummyrom = (void*)base; dummyrom->signature = OPTION_ROM_SIGNATURE; - dummyrom->size = (BUILD_BIOS_ADDR - base) / 512; + int size = (BUILD_BIOS_ADDR - base) / 512; + dummyrom->size = (size > 255) ? 255 : size; memset((void*)RomEnd, 0, base-RomEnd); dprintf(1, "Space available for UMB: %08x-%08x\n", RomEnd, base); |