summaryrefslogtreecommitdiffstats
path: root/pw/pw_nis.c
diff options
context:
space:
mode:
authorBaptiste Daroussin <bapt@FreeBSD.org>2012-11-20 14:05:46 +0000
committerBaptiste Daroussin <bapt@FreeBSD.org>2012-11-20 14:05:46 +0000
commit81179599728d1703dc83cc8052f6e5e0dcfb851b (patch)
tree1ebab03d8ac0e39cc004fa5f18d0d30b5f133685 /pw/pw_nis.c
parent99799f94bd83e6e3821bed79cef8571670c3f021 (diff)
downloadpw-darwin-81179599728d1703dc83cc8052f6e5e0dcfb851b.tar.gz
pw-darwin-81179599728d1703dc83cc8052f6e5e0dcfb851b.zip
In NIS mode first chmod(2) the temporary file and is succeed then rename(2)
Diffstat (limited to 'pw/pw_nis.c')
-rw-r--r--pw/pw_nis.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/pw/pw_nis.c b/pw/pw_nis.c
index 7af2bef..918fc30 100644
--- a/pw/pw_nis.c
+++ b/pw/pw_nis.c
@@ -66,10 +66,10 @@ pw_nisupdate(const char * path, struct passwd * pwd, char const * user)
pw_fini();
err(1, "pw_copy()");
}
+ if (chmod(pw_tempname(), 0644) == -1)
+ err(1, "chmod()");
if (rename(pw_tempname(), path) == -1)
err(1, "rename()");
- if (chmod(path, 0644) == -1)
- err(1, "chmod()");
free(pw);
pw_fini();