summaryrefslogtreecommitdiffstats
path: root/pw/pw_user.c
diff options
context:
space:
mode:
authorBaptiste Daroussin <bapt@FreeBSD.org>2015-05-09 19:09:34 +0000
committerBaptiste Daroussin <bapt@FreeBSD.org>2015-05-09 19:09:34 +0000
commit5a8ca2aae854fec5fb750b42e5e0bd974254c3ac (patch)
treecabbbac88e12341faf080ff86793d4d9d68b1de4 /pw/pw_user.c
parent6e7814395c1b2372a7de0986db48a982f2a07856 (diff)
downloadpw-darwin-5a8ca2aae854fec5fb750b42e5e0bd974254c3ac.tar.gz
pw-darwin-5a8ca2aae854fec5fb750b42e5e0bd974254c3ac.tar.zst
pw-darwin-5a8ca2aae854fec5fb750b42e5e0bd974254c3ac.zip
Use snprintf(3) instead of strcpy(3) + strncat(3)
Diffstat (limited to 'pw/pw_user.c')
-rw-r--r--pw/pw_user.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/pw/pw_user.c b/pw/pw_user.c
index 483148a..0f7dd26 100644
--- a/pw/pw_user.c
+++ b/pw/pw_user.c
@@ -185,8 +185,7 @@ pw_user(struct userconf * cnf, int mode, struct cargs * args)
* But we create a symlink from cnf->home -> "/usr" -> cnf->home
*/
if (strchr(cnf->home+1, '/') == NULL) {
- strcpy(dbuf, "/usr");
- strncat(dbuf, cnf->home, MAXPATHLEN-5);
+ snprintf(dbuf, MAXPATHLEN, "/usr%s", cnf->home);
if (mkdir(dbuf, _DEF_DIRMODE) != -1 || errno == EEXIST) {
chown(dbuf, 0, 0);
/*