about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2014-02-26T12·58+0100
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-02-26T12·58+0100
commit42eb4afd7a38f3024a66da037d9f39859f7bd8f3 (patch)
treee507b47e8eef9d7d68d57ec7c376678f83b68f9b
parentbf4a577a586d99b7bc4298ae662e312eb73815e2 (diff)
Simplify getting use-ssh-substituter from untrusted users
-rw-r--r--src/download-via-ssh/download-via-ssh.cc12
-rw-r--r--src/nix-daemon/nix-daemon.cc5
2 files changed, 3 insertions, 14 deletions
diff --git a/src/download-via-ssh/download-via-ssh.cc b/src/download-via-ssh/download-via-ssh.cc
index b5350f998490..6361e71e9927 100644
--- a/src/download-via-ssh/download-via-ssh.cc
+++ b/src/download-via-ssh/download-via-ssh.cc
@@ -111,18 +111,6 @@ void run(Strings args)
     if (args.empty())
         throw UsageError("download-via-ssh requires an argument");
 
-    Settings::SettingsMap overrides = settings.getOverrides();
-    Settings::SettingsMap::iterator use = overrides.find("untrusted-use-ssh-substituter");
-    if (use != overrides.end()) {
-        if (use->second == "true") settings.useSshSubstituter = true;
-        else if (use->second == "false") settings.useSshSubstituter = false;
-        else throw Error(format("configuration option `use-ssh-substituter' should be either `true' or `false', not `%1%'")
-                        % use->second);
-    }
-
-    if (!settings.useSshSubstituter)
-        return;
-
     if (settings.sshSubstituterHosts.empty())
         return;
 
diff --git a/src/nix-daemon/nix-daemon.cc b/src/nix-daemon/nix-daemon.cc
index 58ef2109b313..f40cdd51b4b6 100644
--- a/src/nix-daemon/nix-daemon.cc
+++ b/src/nix-daemon/nix-daemon.cc
@@ -557,11 +557,12 @@ static void performOp(bool trusted, unsigned int clientVersion,
             for (unsigned int i = 0; i < n; i++) {
                 string name = readString(from);
                 string value = readString(from);
-                if (name == "build-timeout")
-                    string2Int(value, settings.buildTimeout);
+                if (name == "build-timeout" || name == "use-ssh-substituter")
+                    settings.set(name, value);
                 else
                     settings.set(trusted ? name : "untrusted-" + name, value);
             }
+            settings.update();
         }
         startWork();
         stopWork();