* Switch to the calling user context for some more operations in a

setuid installation.
This commit is contained in:
Eelco Dolstra 2005-02-17 13:55:18 +00:00
parent 88273f9574
commit 8a3a96dd5b
2 changed files with 6 additions and 2 deletions

View File

@ -87,8 +87,11 @@ Path addPermRoot(const Path & _storePath, const Path & _gcRoot,
string hash = printHash32(hashString(htSHA1, gcRoot));
Path realRoot = canonPath((format("%1%/%2%/auto/%3%")
% nixStateDir % gcRootsDir % hash).str());
createSymlink(gcRoot, storePath, true);
{
SwitchToOriginalUser sw;
createSymlink(gcRoot, storePath, true);
}
createSymlink(realRoot, gcRoot, false);
}

View File

@ -25,6 +25,7 @@ static bool indirectRoot = false;
static Path fixPath(Path path)
{
SwitchToOriginalUser sw;
path = absPath(path);
while (!isInStore(path)) {
if (!isLink(path)) break;