Check for overflow in size argument.

Tested by:	Joel Maslak <j@pobox.com>
Closes:		PR kern/2964
This commit is contained in:
Poul-Henning Kamp 1997-03-18 07:54:24 +00:00
parent 5f1376d7ec
commit 753da60320

View file

@ -6,7 +6,7 @@
* this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
* ----------------------------------------------------------------------------
*
* $Id$
* $Id: malloc.c,v 1.21 1997/02/22 15:03:12 peter Exp $
*
*/
@ -731,7 +731,9 @@ imalloc(size_t size)
if (suicide)
abort();
if (size <= malloc_maxsize)
if ((size + malloc_pagesize) < size) /* Check for overflow */
result = 0;
else if (size <= malloc_maxsize)
result = malloc_bytes(size);
else
result = malloc_pages(size);