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;
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;
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;
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);