net: Prevent overflows when allocating memory for arrays
Use grub_calloc() when allocating memory for arrays to ensure proper overflow checks are in place. Signed-off-by: Lidong Chen <lidong.chen@oracle.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
parent
4beeff8a31
commit
dee2c14fd6
@ -470,8 +470,8 @@ grub_net_dns_lookup (const char *name,
|
||||
&& grub_get_time_ms () < dns_cache[h].limit_time)
|
||||
{
|
||||
grub_dprintf ("dns", "retrieved from cache\n");
|
||||
*addresses = grub_malloc (dns_cache[h].naddresses
|
||||
* sizeof ((*addresses)[0]));
|
||||
*addresses = grub_calloc (dns_cache[h].naddresses,
|
||||
sizeof ((*addresses)[0]));
|
||||
if (!*addresses)
|
||||
return grub_errno;
|
||||
*naddresses = dns_cache[h].naddresses;
|
||||
|
||||
@ -88,8 +88,8 @@ grub_net_link_layer_add_address (struct grub_net_card *card,
|
||||
/* Add sender to cache table. */
|
||||
if (card->link_layer_table == NULL)
|
||||
{
|
||||
card->link_layer_table = grub_zalloc (LINK_LAYER_CACHE_SIZE
|
||||
* sizeof (card->link_layer_table[0]));
|
||||
card->link_layer_table = grub_calloc (LINK_LAYER_CACHE_SIZE,
|
||||
sizeof (card->link_layer_table[0]));
|
||||
if (card->link_layer_table == NULL)
|
||||
return;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user