for (e = cache->mru; e != NULL; e = next) {
next = e->next;
- SAFE_FREE(e);
+ TALLOC_FREE(e);
}
return 0;
}
cache->size -= memcache_element_size(e->keylength, e->valuelength);
- SAFE_FREE(e);
+ TALLOC_FREE(e);
}
static void memcache_trim(struct memcache *cache)
element_size = memcache_element_size(key.length, value.length);
-
- e = (struct memcache_element *)SMB_MALLOC(element_size);
-
+ e = talloc_size(cache, element_size);
if (e == NULL) {
- DEBUG(0, ("malloc failed\n"));
+ DEBUG(0, ("talloc failed\n"));
return;
}
+ talloc_set_type(e, struct memcache_element);
e->n = n;
e->keylength = key.length;