summaryrefslogtreecommitdiff
path: root/libbb/update_passwd.c
diff options
context:
space:
mode:
authorDenys Vlasenko2009-11-02 19:18:49 +0100
committerDenys Vlasenko2009-11-02 19:18:49 +0100
commitc6fb2a6b5fcece0ee4a7caf42cc344b5e0177822 (patch)
treedbf8b5ff4e7e0ebe7e6fa2387292916e53130949 /libbb/update_passwd.c
parent26c64bade81f748857b0327356f4a5e469feb335 (diff)
downloadbusybox-c6fb2a6b5fcece0ee4a7caf42cc344b5e0177822.zip
busybox-c6fb2a6b5fcece0ee4a7caf42cc344b5e0177822.tar.gz
passwd: do not complain if /etc/shadow is missing
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'libbb/update_passwd.c')
-rw-r--r--libbb/update_passwd.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libbb/update_passwd.c b/libbb/update_passwd.c
index 3aab401..ba773fc 100644
--- a/libbb/update_passwd.c
+++ b/libbb/update_passwd.c
@@ -110,8 +110,11 @@ int FAST_FUNC update_passwd(const char *filename,
old_fp = fopen(filename, "r+");
else
old_fp = fopen_or_warn(filename, "r+");
- if (!old_fp)
+ if (!old_fp) {
+ if (shadow)
+ ret = 0; /* missing shadow is not an error */
goto free_mem;
+ }
old_fd = fileno(old_fp);
selinux_preserve_fcontext(old_fd);