summaryrefslogtreecommitdiff
path: root/uidswap.c
diff options
context:
space:
mode:
Diffstat (limited to 'uidswap.c')
-rw-r--r--uidswap.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/uidswap.c b/uidswap.c
index 1d78c607..40e12150 100644
--- a/uidswap.c
+++ b/uidswap.c
@@ -162,8 +162,10 @@ restore_uid(void)
* Propagate the real uid (usually more privileged) to effective uid
* as well.
*/
- setuid(getuid());
- setgid(getgid());
+ if (setuid(getuid()) == -1)
+ fatal("%s: setuid failed: %s", __func__, strerror(errno));
+ if (setgid(getgid()) == -1)
+ fatal("%s: setgid failed: %s", __func__, strerror(errno));
#endif /* SAVED_IDS_WORK_WITH_SETEUID */
if (setgroups(saved_egroupslen, saved_egroups) == -1)