diff options
author | axtloss <axtlos@getcryst.al> | 2024-06-24 21:50:48 +0200 |
---|---|---|
committer | axtloss <axtlos@getcryst.al> | 2024-06-24 21:50:48 +0200 |
commit | a084dfa02d28a9372a7e406c9b101a43308a4937 (patch) | |
tree | 620d7fe5f55fa76572f5666465997f397b8bbd2a /src/extlib.c | |
parent | 1d4b6499993050876a453a3f96e2428fdfd42610 (diff) | |
download | extlib-a084dfa02d28a9372a7e406c9b101a43308a4937.tar.gz extlib-a084dfa02d28a9372a7e406c9b101a43308a4937.tar.bz2 |
Add new function memvcmp and unit tests
Diffstat (limited to 'src/extlib.c')
-rw-r--r-- | src/extlib.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/extlib.c b/src/extlib.c index ee20d3e..151a74f 100644 --- a/src/extlib.c +++ b/src/extlib.c @@ -27,10 +27,11 @@ #undef malloc void -free_secure(void *__ptr, size_t ptrlen) +free_secure(void **__ptr, size_t ptrlen) { - memset (__ptr, 0, ptrlen); - free (__ptr); + memset (*__ptr, 0, ptrlen); + free (*__ptr); + *__ptr = NULL; return; } @@ -42,6 +43,16 @@ malloc_secure (size_t len) return mem; } +int +memvcmp (void *str, + char val, + size_t n) +{ + char str2[n]; + memset (str2, val, n); + return memcmp (str, str2, n); +} + void fcopy(FILE *f1, FILE *f2) { @@ -54,5 +65,6 @@ fcopy(FILE *f1, FILE *f2) fprintf (stderr, "Failed to copy data"); return; } + fflush (f2); } } |