summaryrefslogtreecommitdiffstats
path: root/lib/shadowmem.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/shadowmem.c')
-rw-r--r--lib/shadowmem.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/shadowmem.c b/lib/shadowmem.c
index 82f99e7..9d8f193 100644
--- a/lib/shadowmem.c
+++ b/lib/shadowmem.c
@@ -16,18 +16,20 @@
#include "defines.h"
#include <shadow.h>
#include <stdio.h>
+
+#include "alloc.h"
+#include "memzero.h"
#include "shadowio.h"
/*@null@*/ /*@only@*/struct spwd *__spw_dup (const struct spwd *spent)
{
struct spwd *sp;
- sp = (struct spwd *) malloc (sizeof *sp);
+ sp = CALLOC (1, struct spwd);
if (NULL == sp) {
return NULL;
}
/* The libc might define other fields. They won't be copied. */
- memset (sp, 0, sizeof *sp);
sp->sp_lstchg = spent->sp_lstchg;
sp->sp_min = spent->sp_min;
sp->sp_max = spent->sp_max;
@@ -54,7 +56,8 @@
return sp;
}
-void spw_free (/*@out@*/ /*@only@*/struct spwd *spent)
+void
+spw_free(/*@only@*/struct spwd *spent)
{
if (spent != NULL) {
free (spent->sp_namp);