mirror of
https://git.proxmox.com/git/grub2
synced 2025-08-06 00:10:33 +00:00
fs/cpio_common: Add a sanity check on namesize.
Found by: Coverity scan.
This commit is contained in:
parent
b6f21bcb98
commit
faad548ce3
@ -61,6 +61,14 @@ grub_cpio_find_file (struct grub_archelp_data *data, char **name,
|
||||
modeval = read_number (hd.mode, ARRAY_SIZE (hd.mode));
|
||||
namesize = read_number (hd.namesize, ARRAY_SIZE (hd.namesize));
|
||||
|
||||
/* Don't allow negative numbers. */
|
||||
if (namesize >= 0x80000000)
|
||||
{
|
||||
/* Probably a corruption, don't attempt to recover. */
|
||||
*mode = GRUB_ARCHELP_ATTR_END;
|
||||
return GRUB_ERR_NONE;
|
||||
}
|
||||
|
||||
if (mode)
|
||||
*mode = modeval;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user