1
0
mirror of git://git.gnupg.org/gnupg.git synced 2025-01-03 12:11:33 +01:00

common: Add 'free_strlist_wipe' which wipes memory.

* common/strlist.c (free_strlist_wipe): New function.
* common/strlist.h (free_strlist_wipe): New prototype.

Signed-off-by: Justus Winter <justus@g10code.com>
This commit is contained in:
Justus Winter 2016-04-21 12:59:59 +02:00
parent 95303ee11d
commit c6d1f2f08c
2 changed files with 16 additions and 0 deletions

View File

@ -39,6 +39,7 @@
#include "common-defs.h"
#include "strlist.h"
#include "utf8conv.h"
#include "mischelp.h"
void
free_strlist( strlist_t sl )
@ -52,6 +53,19 @@ free_strlist( strlist_t sl )
}
void
free_strlist_wipe (strlist_t sl)
{
strlist_t sl2;
for(; sl; sl = sl2 ) {
sl2 = sl->next;
wipememory (sl, sizeof *sl + strlen (sl->d));
xfree(sl);
}
}
/* Add STRING to the LIST at the front. This function terminates the
process on memory shortage. */
strlist_t

View File

@ -40,6 +40,8 @@ struct string_list
typedef struct string_list *strlist_t;
void free_strlist (strlist_t sl);
void free_strlist_wipe (strlist_t sl);
strlist_t add_to_strlist (strlist_t *list, const char *string);
strlist_t add_to_strlist_try (strlist_t *list, const char *string);