From 83895f49014106b5c76887cd3f2110594b3988b5 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 30 Jun 2015 13:11:18 -0700 Subject: [PATCH] keepalived: 1.2.17 -> 1.2.18 --- pkgs/tools/networking/keepalived/default.nix | 7 +--- .../keepalived/fix-ip-release.patch | 39 ------------------- 2 files changed, 2 insertions(+), 44 deletions(-) delete mode 100644 pkgs/tools/networking/keepalived/fix-ip-release.patch diff --git a/pkgs/tools/networking/keepalived/default.nix b/pkgs/tools/networking/keepalived/default.nix index 8ad0021e6aed..bde3a74f8b7a 100644 --- a/pkgs/tools/networking/keepalived/default.nix +++ b/pkgs/tools/networking/keepalived/default.nix @@ -1,18 +1,15 @@ { stdenv, fetchurl, openssl, net_snmp, libnl }: stdenv.mkDerivation rec { - name = "keepalived-1.2.17"; + name = "keepalived-1.2.18"; src = fetchurl { url = "http://keepalived.org/software/${name}.tar.gz"; - sha256 = "1w7px8phx3pyb3b56m3nz1a9ncx26q34fgy8j4n2dpi284jmqm6z"; + sha256 = "07l1ywg44zj2s3wn9mh6y7qbcc0cgp6q1q39hnm0c5iv5izakkg5"; }; buildInputs = [ openssl net_snmp libnl ]; - # Remove in 1.2.18 - patches = [ ./fix-ip-release.patch ]; - postPatch = '' sed -i 's,$(DESTDIR)/usr/share,$out/share,g' Makefile.in ''; diff --git a/pkgs/tools/networking/keepalived/fix-ip-release.patch b/pkgs/tools/networking/keepalived/fix-ip-release.patch deleted file mode 100644 index 0fa828a3ee53..000000000000 --- a/pkgs/tools/networking/keepalived/fix-ip-release.patch +++ /dev/null @@ -1,39 +0,0 @@ -From d80c171e7e8fe7fb4e0878a15027ac80c23b0a14 Mon Sep 17 00:00:00 2001 -From: David Stapleton -Date: Mon, 15 Jun 2015 13:07:21 +0100 -Subject: [PATCH] Fix vrrp removes incorrect IPv4 address when VIPs are removed - -When vrrp has an IPv4 VIP that matches the primary interface -address, when the VIP is removed from the interface, the original -address ends up getting removed instead of the VIP. - -The kernel receives a netlink message instructing it to remove -address x from a particular interface. For IPv4, address x can -be configured multiple times providing the prefix lengths differ. -If the IFA_ADDRESS attribute is not specified in a RTM_DELADDR -message, the kernel will delete the first address it finds a -match on, prefix length is not taken into account. - -This fix therefore adds the IFA_ADDRESS attribute when deleting -IPv4 addresses so that the address removed is actually the VIP. ---- - keepalived/vrrp/vrrp_ipaddress.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/keepalived/vrrp/vrrp_ipaddress.c b/keepalived/vrrp/vrrp_ipaddress.c -index 0f9ce23..698f35c 100644 ---- a/keepalived/vrrp/vrrp_ipaddress.c -+++ b/keepalived/vrrp/vrrp_ipaddress.c -@@ -86,6 +86,9 @@ netlink_ipaddress(ip_address_t *ipaddress, int cmd) - } else { - addattr_l(&req.n, sizeof(req), IFA_LOCAL, - &ipaddress->u.sin.sin_addr, sizeof(ipaddress->u.sin.sin_addr)); -+ if (cmd == IPADDRESS_DEL) -+ addattr_l(&req.n, sizeof(req), IFA_ADDRESS, -+ &ipaddress->u.sin.sin_addr, sizeof(ipaddress->u.sin.sin_addr)); - if (ipaddress->u.sin.sin_brd.s_addr) - addattr_l(&req.n, sizeof(req), IFA_BROADCAST, - &ipaddress->u.sin.sin_brd, sizeof(ipaddress->u.sin.sin_brd)); --- -2.4.4 -