summaryrefslogtreecommitdiff
path: root/misc.c
diff options
context:
space:
mode:
Diffstat (limited to 'misc.c')
-rw-r--r--misc.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/misc.c b/misc.c
index 743011654..4a1213a29 100644
--- a/misc.c
+++ b/misc.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: misc.c,v 1.1 2001/01/21 19:05:52 markus Exp $ */ 1/* $OpenBSD: misc.c,v 1.2 2001/02/22 21:59:44 markus Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 2000 Markus Friedl. All rights reserved. 4 * Copyright (c) 2000 Markus Friedl. All rights reserved.
@@ -25,7 +25,7 @@
25 */ 25 */
26 26
27#include "includes.h" 27#include "includes.h"
28RCSID("$OpenBSD: misc.c,v 1.1 2001/01/21 19:05:52 markus Exp $"); 28RCSID("$OpenBSD: misc.c,v 1.2 2001/02/22 21:59:44 markus Exp $");
29 29
30#include "misc.h" 30#include "misc.h"
31#include "log.h" 31#include "log.h"
@@ -96,6 +96,21 @@ strdelim(char **s)
96 return (old); 96 return (old);
97} 97}
98 98
99struct passwd *
100pwcopy(struct passwd *pw)
101{
102 struct passwd *copy = xmalloc(sizeof(*copy));
103 memset(copy, 0, sizeof(*copy));
104 copy->pw_name = xstrdup(pw->pw_name);
105 copy->pw_passwd = xstrdup(pw->pw_passwd);
106 copy->pw_uid = pw->pw_uid;
107 copy->pw_gid = pw->pw_gid;
108 copy->pw_class = xstrdup(pw->pw_class);
109 copy->pw_dir = xstrdup(pw->pw_dir);
110 copy->pw_shell = xstrdup(pw->pw_shell);
111 return copy;
112}
113
99mysig_t 114mysig_t
100mysignal(int sig, mysig_t act) 115mysignal(int sig, mysig_t act)
101{ 116{