From 3f921ba8cbeb55ea5689989761278e032375cecd Mon Sep 17 00:00:00 2001 From: Sami Kerola Date: Sun, 3 Dec 2017 12:51:14 +0000 Subject: [PATCH] vipw: do not let editor to inherit open file descriptors Signed-off-by: Sami Kerola --- login-utils/vipw.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/login-utils/vipw.c b/login-utils/vipw.c index b7650de8b9..9b76969427 100644 --- a/login-utils/vipw.c +++ b/login-utils/vipw.c @@ -257,7 +257,7 @@ static void edit_file(int is_shadow) if (lckpwdf() < 0) err(EXIT_FAILURE, _("cannot get lock")); - passwd_file = open(orig_file, O_RDONLY, 0); + passwd_file = open(orig_file, O_RDONLY | O_CLOEXEC, 0); if (passwd_file < 0) err(EXIT_FAILURE, _("cannot open %s"), orig_file); tmp_fd = pw_tmpfile(passwd_file); @@ -275,7 +275,7 @@ static void edit_file(int is_shadow) if (end.st_nlink == 0) { if (close_stream(tmp_fd) != 0) err(EXIT_FAILURE, _("write error")); - tmp_fd = fopen(tmp_file, "r"); + tmp_fd = fopen(tmp_file, "r" UL_CLOEXECSTR); if (!tmp_fd) err(EXIT_FAILURE, _("cannot open %s"), tmp_file); if (fstat(fileno(tmp_fd), &end)) -- 2.47.2