Files
mars-nwe/tests/nwnss/zalloc/test_nwnss_zalloc.c
Mario Fetka 0f82de2743
All checks were successful
Source release / source-package (push) Successful in 1m20s
0536 build: introduce libnwnss for imported NSS runtime
2026-06-14 22:34:04 +02:00

68 lines
1.1 KiB
C

#include "library/xStdlib.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define CHECK(expr) \
do { \
if (!(expr)) { \
fprintf(stderr, "CHECK failed at %s:%d: %s\n", __FILE__, __LINE__, #expr); \
return 1; \
} \
} while (0)
int main(void)
{
unsigned char *p = LB_zalloc(32);
unsigned char *m;
unsigned char *stack;
size_t i;
CHECK(p != NULL);
for (i = 0; i < 32; ++i) {
CHECK(p[i] == 0);
}
memset(p, 0x5a, 32);
p = LB_zrealloc(p, 64);
CHECK(p != NULL);
for (i = 0; i < 32; ++i) {
CHECK(p[i] == 0x5a);
}
free(p);
p = zalloc(8);
CHECK(p != NULL);
for (i = 0; i < 8; ++i) {
CHECK(p[i] == 0);
}
p = zrealloc(p, 16);
CHECK(p != NULL);
free(p);
m = LB_malloc(16);
CHECK(m != NULL);
memset(m, 0x33, 16);
m = LB_realloc(m, 32);
CHECK(m != NULL);
for (i = 0; i < 16; ++i) {
CHECK(m[i] == 0x33);
}
LB_free(m);
m = LB_mallocWithFlags(12, ZERO_FILL);
CHECK(m != NULL);
for (i = 0; i < 12; ++i) {
CHECK(m[i] == 0);
}
LB_free(m);
stack = LB_StackAllocate(24);
CHECK(stack != NULL);
memset(stack, 0x7e, 24);
LB_StackFree(stack, 24);
return 0;
}