summary refs log tree commit diff
path: root/nixos/modules
diff options
context:
space:
mode:
authorChristoph Hrdinka <c.github@hrdinka.at>2016-01-19 11:03:57 +0100
committerChristoph Hrdinka <c.github@hrdinka.at>2016-02-28 09:18:11 +0100
commit6a096504cc8d661dc12957dbf79b6209a69d72af (patch)
tree07035d6879986713a1789f1b943da7d5fd85d632 /nixos/modules
parent8442a7d12c399cc8bbe6cd6c4092b0df9f55dbac (diff)
downloadnixlib-6a096504cc8d661dc12957dbf79b6209a69d72af.tar
nixlib-6a096504cc8d661dc12957dbf79b6209a69d72af.tar.gz
nixlib-6a096504cc8d661dc12957dbf79b6209a69d72af.tar.bz2
nixlib-6a096504cc8d661dc12957dbf79b6209a69d72af.tar.lz
nixlib-6a096504cc8d661dc12957dbf79b6209a69d72af.tar.xz
nixlib-6a096504cc8d661dc12957dbf79b6209a69d72af.tar.zst
nixlib-6a096504cc8d661dc12957dbf79b6209a69d72af.zip
nsd service: add missing options
Diffstat (limited to 'nixos/modules')
-rw-r--r--nixos/modules/services/networking/nsd.nix35
1 files changed, 35 insertions, 0 deletions
diff --git a/nixos/modules/services/networking/nsd.nix b/nixos/modules/services/networking/nsd.nix
index 4d67703d279c..b822a29423a6 100644
--- a/nixos/modules/services/networking/nsd.nix
+++ b/nixos/modules/services/networking/nsd.nix
@@ -56,14 +56,18 @@ let
       ipv4-edns-size:      ${toString cfg.ipv4EDNSSize}
       do-ip6:              ${yesOrNo  cfg.ipv6}
       ipv6-edns-size:      ${toString cfg.ipv6EDNSSize}
+      log-time-asci:       ${yesOrNo  cfg.logTimeAscii}
       ${maybeString "nsid: " cfg.nsid}
       port:                ${toString cfg.port}
+      reuseport:           ${yesOrNo  cfg.reuseport}
+      round-robin:         ${yesOrNo  cfg.roundRobin}
       server-count:        ${toString cfg.serverCount}
       ${if cfg.statistics == null then "" else "statistics:          ${toString cfg.statistics}"}
       tcp-count:           ${toString cfg.tcpCount}
       tcp-query-count:     ${toString cfg.tcpQueryCount}
       tcp-timeout:         ${toString cfg.tcpTimeout}
       verbosity:           ${toString cfg.verbosity}
+      ${maybeString "version: " cfg.version}
       xfrd-reload-timeout: ${toString cfg.xfrdReloadTimeout}
       zonefiles-check:     ${yesOrNo  cfg.zonefilesCheck}
 
@@ -381,6 +385,14 @@ in
       '';
     };
 
+    logTimeAscii = mkOption {
+      type = types.bool;
+      default = true;
+      description = ''
+        Log time in ascii, if false then in unix epoch seconds.
+      '';
+    };
+
     nsid = mkOption {
       type = types.nullOr types.str;
       default = null;
@@ -397,6 +409,17 @@ in
       '';
     };
 
+    reuseport = mkOption {
+      type = types.bool;
+      default = pkgs.stdenv.isLinux;
+      description = ''
+        Wheter to enable SO_REUSEPORT on all used sockets. This lets multiple
+        processes bind to the same port. This speeds up operation especially
+        if the server count is greater than one and makes fast restarts less
+        prone to fail
+      '';
+    };
+
     rootServer = mkOption {
       type = types.bool;
       default = false;
@@ -406,6 +429,8 @@ in
       '';
     };
 
+    roundRobin = mkEnableOption "round robin rotation of records";
+
     serverCount = mkOption {
       type = types.int;
       default = 1;
@@ -456,6 +481,16 @@ in
       '';
     };
 
+    version = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+        The version string replied for CH TXT version.server and version.bind
+        queries. Will use the compiled package version on null.
+        See hideVersion for enabling/disabling this responses.
+      '';
+    };
+
     xfrdReloadTimeout = mkOption {
       type = types.int;
       default = 1;