From: Pekka Riikonen Date: Sat, 30 Nov 2002 12:31:30 +0000 (+0000) Subject: Min alloc size check. X-Git-Tag: silc.client.0.9.10~56 X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=commitdiff_plain;h=e40e030040a47f7d8d98c5ed9a38d9d2cadbef28 Min alloc size check. --- diff --git a/lib/silcutil/silcmemory.c b/lib/silcutil/silcmemory.c index 102c0e5a..93fd8751 100644 --- a/lib/silcutil/silcmemory.c +++ b/lib/silcutil/silcmemory.c @@ -27,7 +27,7 @@ void *silc_malloc(size_t size) { void *addr; - assert(size <= SILC_MAX_ALLOC); + assert(size >= 0 && size <= SILC_MAX_ALLOC); addr = malloc(size); assert(addr != NULL); return addr; @@ -36,7 +36,7 @@ void *silc_malloc(size_t size) void *silc_calloc(size_t items, size_t size) { void *addr; - assert(size * items <= SILC_MAX_ALLOC); + assert(size * items >= 0 && size * items <= SILC_MAX_ALLOC); addr = calloc(items, size); assert(addr != NULL); return addr; @@ -45,7 +45,7 @@ void *silc_calloc(size_t items, size_t size) void *silc_realloc(void *ptr, size_t size) { void *addr; - assert(size <= SILC_MAX_ALLOC); + assert(size >= 0 && size <= SILC_MAX_ALLOC); addr = realloc(ptr, size); assert(addr != NULL); return addr; @@ -59,7 +59,6 @@ void silc_free(void *ptr) void *silc_memdup(const void *ptr, size_t size) { unsigned char *addr; - assert(size <= SILC_MAX_ALLOC); addr = silc_malloc(size + 1); assert(addr != NULL); memcpy((void *)addr, ptr, size);