Tor
0.4.7.0-alpha-dev
|
#include <stddef.h>
Go to the source code of this file.
Macros | |
#define | memarea_drop_all(area) |
Functions | |
memarea_t * | memarea_new (void) |
void | memarea_drop_all_ (memarea_t *area) |
void | memarea_clear (memarea_t *area) |
int | memarea_owns_ptr (const memarea_t *area, const void *ptr) |
void * | memarea_alloc (memarea_t *area, size_t sz) |
void * | memarea_alloc_zero (memarea_t *area, size_t sz) |
void * | memarea_memdup (memarea_t *area, const void *s, size_t n) |
char * | memarea_strdup (memarea_t *area, const char *s) |
char * | memarea_strndup (memarea_t *area, const char *s, size_t n) |
void | memarea_get_stats (memarea_t *area, size_t *allocated_out, size_t *used_out) |
void | memarea_assert_ok (memarea_t *area) |
#define memarea_drop_all | ( | area | ) |
Free area, invalidating all pointers returned from memarea_alloc() and friends for this area
Additionally, set area to NULL.
void* memarea_alloc | ( | memarea_t * | area, |
size_t | sz | ||
) |
Return a pointer to a chunk of memory in area of at least sz bytes. sz should be significantly smaller than the area's chunk size, though we can deal if it isn't.
Definition at line 209 of file memarea.c.
Referenced by cdline_linecpy(), consensus_split_lines(), memarea_alloc_zero(), memarea_memdup(), memarea_strndup(), and storage_dir_save_labeled_to_file().
void* memarea_alloc_zero | ( | memarea_t * | area, |
size_t | sz | ||
) |
As memarea_alloc(), but clears the memory it returns.
void memarea_assert_ok | ( | memarea_t * | area | ) |
void memarea_clear | ( | memarea_t * | area | ) |
Forget about having allocated anything in area, and free some of the backing storage associated with it, as appropriate. Invalidates all pointers returned from memarea_alloc() for this area.
void memarea_drop_all_ | ( | memarea_t * | area | ) |
Free area, invalidating all pointers returned from memarea_alloc() and friends for this area
void memarea_get_stats | ( | memarea_t * | area, |
size_t * | allocated_out, | ||
size_t * | used_out | ||
) |
void* memarea_memdup | ( | memarea_t * | area, |
const void * | s, | ||
size_t | n | ||
) |
As memdup, but returns the memory from area.
Definition at line 257 of file memarea.c.
Referenced by cdline_linecpy(), and memarea_strdup().
memarea_t* memarea_new | ( | void | ) |
Allocate and return new memarea.
Definition at line 153 of file memarea.c.
Referenced by consensus_diff_apply(), decode_introduction_point(), microdescs_parse_from_string(), router_parse_entry_from_string(), and storage_dir_save_labeled_to_file().
int memarea_owns_ptr | ( | const memarea_t * | area, |
const void * | p | ||
) |
char* memarea_strdup | ( | memarea_t * | area, |
const char * | s | ||
) |
char* memarea_strndup | ( | memarea_t * | area, |
const char * | s, | ||
size_t | n | ||
) |
As strndup, but returns the memory from area.
Definition at line 273 of file memarea.c.
Referenced by get_token_arguments().