summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@altlinux.org>2017-05-18 12:28:51 +0300
committerJan Kara <jack@suse.cz>2017-05-18 12:27:25 +0200
commit9aa3a11857109297b521d0a8926dd90361b991ed (patch)
tree69ccd94dd99869f45cdb89fee2c6e8283a985634
parentf1a97618031701ee9561e95ace4c7a52fd5dbd79 (diff)
downloadquota-tools-9aa3a11857109297b521d0a8926dd90361b991ed.tar.gz
quotaops: check setgid/setuid return code
setgid/setuid syscalls may fail for different reasons, do not ignore these errors. Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> Signed-off-by: Jan Kara <jack@suse.cz>
-rw-r--r--quotaops.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/quotaops.c b/quotaops.c
index 56cf622..5e6026e 100644
--- a/quotaops.c
+++ b/quotaops.c
@@ -218,8 +218,10 @@ int editprivs(char *tmpfile)
int i;
sigprocmask(SIG_SETMASK, &omask, NULL);
- setgid(getgid());
- setuid(getuid());
+ if (setgid(getgid()))
+ die(1, _("%s failed: %s\n"), "setgid", strerror(errno));
+ if (setuid(getuid()))
+ die(1, _("%s failed: %s\n"), "setuid", strerror(errno));
if (!(ed = getenv("VISUAL")))
if (!(ed = getenv("EDITOR")))
ed = _PATH_VI;