57 void *(*Alloc)(
unsigned int),
void (*Free)(
void *))
66static void *StorageTestAlloc(
unsigned int size)
71static void StorageTestFree(
void *x)
76static int ThreadStorageTest01(
void)
128static int ThreadStorageTest02(
void)
156static int ThreadStorageTest03(
void)
#define FAIL_IF_NULL(expr)
Fail a test if expression evaluates to NULL.
void UtRegisterTest(const char *name, int(*TestFn)(void))
Register unit test.
#define PASS
Pass the test.
#define FAIL_IF(expr)
Fail a test if expression evaluates to true.
#define FAIL_IF_NOT_NULL(expr)
Fail a test if expression evaluates to non-NULL.
Per thread variable structure.
void RegisterThreadStorageTests(void)
void ThreadFreeStorageById(ThreadVars *tv, ThreadStorageId id)
unsigned int ThreadStorageSize(void)
void * ThreadGetStorageById(const ThreadVars *tv, ThreadStorageId id)
ThreadStorageId ThreadStorageRegister(const char *name, const unsigned int size, void *(*Alloc)(unsigned int), void(*Free)(void *))
void * ThreadAllocStorageById(ThreadVars *tv, ThreadStorageId id)
const StorageEnum storage_type
int ThreadSetStorageById(ThreadVars *tv, ThreadStorageId id, void *ptr)
void ThreadFreeStorage(ThreadVars *tv)
void * StorageGetById(const Storage *storage, const StorageEnum type, const int id)
get storage for id
void StorageCleanup(void)
int StorageRegister(const StorageEnum type, const char *name, const unsigned int size, void *(*Alloc)(unsigned int), void(*Free)(void *))
Register new storage.
unsigned int StorageGetSize(StorageEnum type)
get the size of the void array used to store the pointers
void StorageFreeAll(Storage *storage, StorageEnum type)
void StorageFreeById(Storage *storage, StorageEnum type, int id)
int StorageFinalize(void)
int StorageSetById(Storage *storage, const StorageEnum type, const int id, void *ptr)
set storage for id
void * StorageAllocByIdPrealloc(Storage *storage, StorageEnum type, int id)
AllocById func for prealloc'd base storage (storage ptrs are part of another memory block)
enum StorageEnum_ StorageEnum