diff options
author | Baptiste Daroussin <bapt@FreeBSD.org> | 2015-05-09 19:12:16 +0000 |
---|---|---|
committer | Baptiste Daroussin <bapt@FreeBSD.org> | 2015-05-09 19:12:16 +0000 |
commit | 91aa622155b3b4b793a0a2fe27c7ce6e66c2dfd4 (patch) | |
tree | a776944c64179d6456e370b61223aa1f886d1e9b /pw/pw_user.c | |
parent | 5a8ca2aae854fec5fb750b42e5e0bd974254c3ac (diff) | |
download | pw-darwin-91aa622155b3b4b793a0a2fe27c7ce6e66c2dfd4.tar.gz pw-darwin-91aa622155b3b4b793a0a2fe27c7ce6e66c2dfd4.tar.zst pw-darwin-91aa622155b3b4b793a0a2fe27c7ce6e66c2dfd4.zip |
Replace malloc(3) + strcpy(3) + strcat(3) by asprintf(3)
Diffstat (limited to 'pw/pw_user.c')
-rw-r--r-- | pw/pw_user.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/pw/pw_user.c b/pw/pw_user.c index 0f7dd26..dc9a2d8 100644 --- a/pw/pw_user.c +++ b/pw/pw_user.c @@ -363,11 +363,9 @@ pw_user(struct userconf * cnf, int mode, struct cargs * args) if (mode == M_LOCK) { if (strncmp(pwd->pw_passwd, locked_str, sizeof(locked_str)-1) == 0) errx(EX_DATAERR, "user '%s' is already locked", pwd->pw_name); - passtmp = malloc(strlen(pwd->pw_passwd) + sizeof(locked_str)); + asprintf(&passtmp, "%s%s", locked_str, pwd->pw_passwd); if (passtmp == NULL) /* disaster */ errx(EX_UNAVAILABLE, "out of memory"); - strcpy(passtmp, locked_str); - strcat(passtmp, pwd->pw_passwd); pwd->pw_passwd = passtmp; edited = 1; } else if (mode == M_UNLOCK) { |