summaryrefslogtreecommitdiffhomepage
path: root/dbmalloc.h
blob: d5e814eb8f35b7a3e128758a0fdb781fe4ad69a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#ifndef DBMALLOC_H_
#define DBMALLOC_H_

#include "stdint.h"
#include "stdlib.h"
#include "options.h"

void * m_malloc(size_t size);
void * m_calloc(size_t nmemb, size_t size);
void * m_strdup(const char * str);
void * m_realloc(void* ptr, size_t size);

#if DROPBEAR_TRACKING_MALLOC
void m_free_direct(void* ptr);
void m_malloc_set_epoch(unsigned int epoch);
void m_malloc_free_epoch(unsigned int epoch, int dofree);

#else
/* plain wrapper */
#define m_free_direct free

#endif

#define m_free(X) do {m_free_direct(X); (X) = NULL;} while (0)


#endif /* DBMALLOC_H_ */