diff options
author | Michał Pałka <michal.palka@chalmers.se> | 2017-04-28 07:48:51 +0000 |
---|---|---|
committer | Michał Pałka <michal.palka@chalmers.se> | 2017-04-28 07:48:51 +0000 |
commit | 2fcb8714bac1076e2614ea7e024ca52f82269ff2 (patch) | |
tree | 77db7c7f23884f945a2a938f87905a555d7bcf11 /nixos/modules/virtualisation/xen-dom0.nix | |
parent | 7f3b857d0d08c5e7d8d0ecdb2a53f06cc48a9cdf (diff) | |
download | nixpkgs-2fcb8714bac1076e2614ea7e024ca52f82269ff2.tar nixpkgs-2fcb8714bac1076e2614ea7e024ca52f82269ff2.tar.gz nixpkgs-2fcb8714bac1076e2614ea7e024ca52f82269ff2.tar.bz2 nixpkgs-2fcb8714bac1076e2614ea7e024ca52f82269ff2.tar.lz nixpkgs-2fcb8714bac1076e2614ea7e024ca52f82269ff2.tar.xz nixpkgs-2fcb8714bac1076e2614ea7e024ca52f82269ff2.tar.zst nixpkgs-2fcb8714bac1076e2614ea7e024ca52f82269ff2.zip |
xen service: fix xen-bridge not setting the configured netmask
The xen-bridge service accepts the option prefixLength, but does not use it to set the actual netmask on the bridge. This commit makes it set the correct netmask.
Diffstat (limited to 'nixos/modules/virtualisation/xen-dom0.nix')
-rw-r--r-- | nixos/modules/virtualisation/xen-dom0.nix | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/nixos/modules/virtualisation/xen-dom0.nix b/nixos/modules/virtualisation/xen-dom0.nix index 1f5b6bd1d80..1567b175348 100644 --- a/nixos/modules/virtualisation/xen-dom0.nix +++ b/nixos/modules/virtualisation/xen-dom0.nix @@ -331,6 +331,9 @@ in IFS='-' read -a data <<< `${pkgs.sipcalc}/bin/sipcalc ${cfg.bridge.address}/${toString cfg.bridge.prefixLength} | grep Network\ address` export XEN_BRIDGE_NETWORK_ADDRESS="${"\${data[1]//[[:blank:]]/}"}" + IFS='-' read -a data <<< `${pkgs.sipcalc}/bin/sipcalc ${cfg.bridge.address}/${toString cfg.bridge.prefixLength} | grep Network\ mask` + export XEN_BRIDGE_NETMASK="${"\${data[1]//[[:blank:]]/}"}" + echo "${cfg.bridge.address} host gw dns" > /var/run/xen/dnsmasq.hostsfile cat <<EOF > /var/run/xen/dnsmasq.conf @@ -369,6 +372,7 @@ in ${pkgs.bridge-utils}/bin/brctl addbr ${cfg.bridge.name} ${pkgs.inetutils}/bin/ifconfig ${cfg.bridge.name} ${cfg.bridge.address} + ${pkgs.inetutils}/bin/ifconfig ${cfg.bridge.name} netmask $XEN_BRIDGE_NETMASK ${pkgs.inetutils}/bin/ifconfig ${cfg.bridge.name} up ''; serviceConfig.ExecStart = "${pkgs.dnsmasq}/bin/dnsmasq --conf-file=/var/run/xen/dnsmasq.conf"; |