diff options
Diffstat (limited to 'src/libutil')
-rw-r--r-- | src/libutil/util.cc | 31 | ||||
-rw-r--r-- | src/libutil/util.hh | 6 |
2 files changed, 0 insertions, 37 deletions
diff --git a/src/libutil/util.cc b/src/libutil/util.cc index 9727a3173..375e0e1df 100644 --- a/src/libutil/util.cc +++ b/src/libutil/util.cc @@ -909,37 +909,6 @@ static gid_t savedGid, nixGid; #endif -SwitchToOriginalUser::SwitchToOriginalUser() -{ -#if HAVE_SETRESUID - /* Temporarily switch the effective uid/gid back to the saved - uid/gid (which is the uid/gid of the user that executed the Nix - program; it's *not* the real uid/gid, since we changed that to - the Nix user in switchToNixUser()). */ - if (haveSwitched) { - if (setuid(savedUid) == -1) - throw SysError(format("temporarily restoring uid to `%1%'") % savedUid); - if (setgid(savedGid) == -1) - throw SysError(format("temporarily restoring gid to `%1%'") % savedGid); - } -#endif -} - - -SwitchToOriginalUser::~SwitchToOriginalUser() -{ -#if HAVE_SETRESUID - /* Switch the effective uid/gid back to the Nix user. */ - if (haveSwitched) { - if (setuid(nixUid) == -1) - throw SysError(format("restoring uid to `%1%'") % nixUid); - if (setgid(nixGid) == -1) - throw SysError(format("restoring gid to `%1%'") % nixGid); - } -#endif -} - - void switchToNixUser() { #if 0 diff --git a/src/libutil/util.hh b/src/libutil/util.hh index 7f3d41e76..d1fb5b6e2 100644 --- a/src/libutil/util.hh +++ b/src/libutil/util.hh @@ -250,12 +250,6 @@ bool string2Int(const string & s, int & n); /* Setuid support. */ -struct SwitchToOriginalUser -{ - SwitchToOriginalUser(); - ~SwitchToOriginalUser(); -}; - void switchToNixUser(); |