summary refs log tree commit diff
path: root/nixos/modules/tasks/network-interfaces-scripted.nix
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2017-02-03 11:47:38 +0100
committerVladimír Čunát <vcunat@gmail.com>2017-02-03 11:47:38 +0100
commitadab4cd58b06896be6436f93a76432811deb897e (patch)
treed4dec437b37d500a136f35ead5290ba15c338ee3 /nixos/modules/tasks/network-interfaces-scripted.nix
parent787c1add0ba40ba8094b0ed4001de10c7d05c033 (diff)
parent5b759293e09a062373d4b2843c5bad89d5a47165 (diff)
downloadnixlib-adab4cd58b06896be6436f93a76432811deb897e.tar
nixlib-adab4cd58b06896be6436f93a76432811deb897e.tar.gz
nixlib-adab4cd58b06896be6436f93a76432811deb897e.tar.bz2
nixlib-adab4cd58b06896be6436f93a76432811deb897e.tar.lz
nixlib-adab4cd58b06896be6436f93a76432811deb897e.tar.xz
nixlib-adab4cd58b06896be6436f93a76432811deb897e.tar.zst
nixlib-adab4cd58b06896be6436f93a76432811deb897e.zip
Merge branch 'master' into staging
Diffstat (limited to 'nixos/modules/tasks/network-interfaces-scripted.nix')
-rw-r--r--nixos/modules/tasks/network-interfaces-scripted.nix16
1 files changed, 10 insertions, 6 deletions
diff --git a/nixos/modules/tasks/network-interfaces-scripted.nix b/nixos/modules/tasks/network-interfaces-scripted.nix
index c50ea5c79643..aa86fc85feb6 100644
--- a/nixos/modules/tasks/network-interfaces-scripted.nix
+++ b/nixos/modules/tasks/network-interfaces-scripted.nix
@@ -102,17 +102,21 @@ in
                 EOF
 
                 # Set the default gateway.
-                ${optionalString (cfg.defaultGateway != null && cfg.defaultGateway != "") ''
+                ${optionalString (cfg.defaultGateway != null && cfg.defaultGateway.address != "") ''
                   # FIXME: get rid of "|| true" (necessary to make it idempotent).
-                  ip route add default via "${cfg.defaultGateway}" ${
+                  ip route add default via "${cfg.defaultGateway.address}" ${
                     optionalString (cfg.defaultGatewayWindowSize != null)
-                      "window ${toString cfg.defaultGatewayWindowSize}"} || true
+                      "window ${toString cfg.defaultGatewayWindowSize}"} ${
+                    optionalString (cfg.defaultGateway.interface != null)
+                      "dev ${cfg.defaultGateway.interface}"}|| true
                 ''}
-                ${optionalString (cfg.defaultGateway6 != null && cfg.defaultGateway6 != "") ''
+                ${optionalString (cfg.defaultGateway6 != null && cfg.defaultGateway6.address != "") ''
                   # FIXME: get rid of "|| true" (necessary to make it idempotent).
-                  ip -6 route add ::/0 via "${cfg.defaultGateway6}" ${
+                  ip -6 route add ::/0 via "${cfg.defaultGateway6.address}" ${
                     optionalString (cfg.defaultGatewayWindowSize != null)
-                      "window ${toString cfg.defaultGatewayWindowSize}"} || true
+                      "window ${toString cfg.defaultGatewayWindowSize}"} ${
+                    optionalString (cfg.defaultGateway6.interface != null)
+                      "dev ${cfg.defaultGateway6.interface}"} || true
                 ''}
               '';
           };