]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
daemon: always listen on control socket, even in interactive mode
authorPetr Špaček <petr.spacek@nic.cz>
Tue, 21 Jul 2020 12:11:53 +0000 (14:11 +0200)
committerTomas Krizek <tomas.krizek@nic.cz>
Mon, 26 Oct 2020 13:25:13 +0000 (14:25 +0100)
Reasons:
- It allows to run several kresd instances and use map() without
  worrying about instance parameters.
- It removes special case from map().

Proper functionality depends on changes in MR !1011.

daemon/lua/postconfig.lua
daemon/lua/sandbox.lua.in

index 48ac65aa497b57afb2201024b8a220be976a2cd0..49213cc0cc848b3b587bb1316c0b4e65eea8699a 100644 (file)
@@ -25,7 +25,7 @@ local n_dns_socks, n_control_socks = count_sockets()
 worker.control_path = worker.control_path or (worker.cwd .. '/control/')
 
 -- Bind to control socket by default
-if not C.the_args.interactive and n_control_socks == 0 and not env.KRESD_NO_LISTEN then
+if n_control_socks == 0 and not env.KRESD_NO_LISTEN then
        local path = worker.control_path..worker.pid
        local ok, err = pcall(net.listen, path, nil, { kind = 'control' })
        if not ok then
index 1fa31906efd074eab2af709c14cc4166f1e73438..63d94c3c01a0cd5a8b65e4c446c8912e1ec71613 100644 (file)
@@ -667,13 +667,8 @@ function map(cmd, format)
 
        local filetab = kluautil.list_dir(worker.control_path)
        if next(filetab) == nil then
-               local ret = eval_cmd(cmd, format == 'luaobj')
-               if ret == nil then
-                       results = {}
-               else
-                       table.insert(results, ret)
-               end
-               return results
+               panic('no control sockets found in directory %s',
+                       worker.control_path)
        end
 
        for _,file in ipairs(filetab) do