From 0e8fc118b3d2d3bb6f9b0a918bf8ceb3927774cd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 10 Dec 2014 16:35:42 +0100 Subject: Use vfork --- src/nix-daemon/nix-daemon.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/nix-daemon/nix-daemon.cc') diff --git a/src/nix-daemon/nix-daemon.cc b/src/nix-daemon/nix-daemon.cc index 3864ab935de0..9a8f469ade2e 100644 --- a/src/nix-daemon/nix-daemon.cc +++ b/src/nix-daemon/nix-daemon.cc @@ -799,6 +799,11 @@ static void daemonLoop(char * * argv) % (peer.uidKnown ? user : "")); /* Fork a child to handle the connection. */ + ProcessOptions options; + options.errorPrefix = "unexpected Nix daemon error: "; + options.dieWithParent = false; + options.runExitHandlers = true; + options.allowVfork = false; startProcess([&]() { fdSocket.close(); @@ -821,7 +826,7 @@ static void daemonLoop(char * * argv) processConnection(trusted); exit(0); - }, false, "unexpected Nix daemon error: ", true); + }, options); } catch (Interrupted & e) { throw; -- cgit 1.4.1