summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2013-11-02 19:49:52 +0000
committerRobin H. Johnson <robbat2@gentoo.org>2013-11-02 19:49:52 +0000
commit9c5014a6a7740d5ce5f9d8dc567e649cfde1616d (patch)
tree4c1b246f5b922434bc1ab8720a84649aa04dd29d /sys-cluster
parentAdd ruby20 target. (diff)
downloadhistorical-9c5014a6a7740d5ce5f9d8dc567e649cfde1616d.tar.gz
historical-9c5014a6a7740d5ce5f9d8dc567e649cfde1616d.tar.bz2
historical-9c5014a6a7740d5ce5f9d8dc567e649cfde1616d.zip
Bug #403133: this keepalived patch was needed for ipvsadm as well, and got lost along the way.
Package-Manager: portage-2.2.7/cvs/Linux x86_64
Diffstat (limited to 'sys-cluster')
-rw-r--r--sys-cluster/ipvsadm/ChangeLog9
-rw-r--r--sys-cluster/ipvsadm/Manifest4
-rw-r--r--sys-cluster/ipvsadm/files/ipvsadm-1.27-fix-daemon-state.patch56
-rw-r--r--sys-cluster/ipvsadm/ipvsadm-1.27-r1.ebuild67
4 files changed, 134 insertions, 2 deletions
diff --git a/sys-cluster/ipvsadm/ChangeLog b/sys-cluster/ipvsadm/ChangeLog
index a5fcdf8cc55d..2cc487eeb6d1 100644
--- a/sys-cluster/ipvsadm/ChangeLog
+++ b/sys-cluster/ipvsadm/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-cluster/ipvsadm
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-cluster/ipvsadm/ChangeLog,v 1.61 2013/11/02 06:57:10 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/ipvsadm/ChangeLog,v 1.62 2013/11/02 19:49:47 robbat2 Exp $
+
+*ipvsadm-1.27-r1 (02 Nov 2013)
+
+ 02 Nov 2013; Robin H. Johnson <robbat2@gentoo.org>
+ +files/ipvsadm-1.27-fix-daemon-state.patch, +ipvsadm-1.27-r1.ebuild:
+ Bug #403133: this keepalived patch was needed for ipvsadm as well, and got
+ lost along the way.
02 Nov 2013; Robin H. Johnson <robbat2@gentoo.org>
files/ipvsadm-1.27-buildsystem.patch:
diff --git a/sys-cluster/ipvsadm/Manifest b/sys-cluster/ipvsadm/Manifest
index dda65d95e542..6fc690d9f4d0 100644
--- a/sys-cluster/ipvsadm/Manifest
+++ b/sys-cluster/ipvsadm/Manifest
@@ -1,6 +1,7 @@
AUX ipvsadm-1.26-buildsystem.patch 2989 SHA256 88391e5122dbb7d8c92385647b2e8856bf7ad7231cfb2e73eda4e422addce198 SHA512 0802a919c947fed04774ec4034fba22036011e51802369d7c3c6a44ec7d118011aeac0ce3f7e2cb607efff133242c782ac8708b4ec3bb890c0013ad5d14863f8 WHIRLPOOL a5a723095f5dd158490f9d6e68a9288da65e5c16a789494863dadb1d2c786e0e1816e1b39a826a475c54f0413d3c508a5d5303cb129bed9d6e0e1640a8ac4881
AUX ipvsadm-1.26-stack_smashing.patch 912 SHA256 78cf4f4d79fb2a39afdb532e46793c4e700fa08ecacd9fa2577d53b5ced389bd SHA512 b1b50914003e0bf8688bb7e2fe011242f2ec11df70e890f4af578780367c0d38718a47a942a0cef48088a85b36276896508a8b5d580d7a15a29ae20d5ae46b4c WHIRLPOOL 267d1580c793b6f9d90b39147cccc4c4dcdfdb67999884070e1fde279c72e77c9bbfa35f2adeb104c9ae0046e2d6f75598fd7de9205b56259c4caa2268427b12
AUX ipvsadm-1.27-buildsystem.patch 3624 SHA256 d1ff236278b7da7b313817370246ada89cd54144a09cfec48871f7df8dc6f080 SHA512 e6e94a84f3a59a2ddb73c924f28e7e6799530aa5187d499c1b002ea1caa379c728dc96493e481d9e351e14209d5424de73c7deeb4f1e1d9846eb088fb160535d WHIRLPOOL 3b91ee9b38567572ac543290199fb033c54a3b7e8b1f0639fabbb9808c3bdda96fdadf8d898ed8f76a2193da6de0312293b2aabdaf5e6e07acc0e327ec034076
+AUX ipvsadm-1.27-fix-daemon-state.patch 2001 SHA256 427c13abdffd138fcc2982895866ca967738f9fee395a9e55171fac9a0e6bcf5 SHA512 4898672423f2b53776bedde1b5d7a7dce27d8d66aeec6b749149209c6acabcfa8cc53b4f3342107f9a783c5a4afe88f4e8b10d25771c49d86b0def8777834c22 WHIRLPOOL edbd01012de5516ab8c5be85680e0acca8833f79cdb415ac328a4c5e447f35695d2ac52a766ec78b6524666d65536ba5a84f9e07d2a51562d8e2cbfbe67f86c9
AUX ipvsadm-init 763 SHA256 3dfaa6cb9ef4db6428424bb8097daa3f202bb51d5acf6a864c3829eeacb3e76f SHA512 44d95535b6b11338cac9353f2d84636828d9acc563a45f7d35b5eb22c1a3961e7242fc8e71c9e86986e0721cc5f2f7e60f32428118a0d55eb2482e19da039b6c WHIRLPOOL 602b269b5ba3eaa597acda1e4341c35e375ed64db54b711abdc12281c8527f19c26564a3681c098596af349a50e29ef513620b926b4a4770b24308f780a37223
DIST ipvsadm-1.21-11.tar.gz 34030 SHA256 7b85020f84d4648166bce480d747d82ac5c9113f9a222e3de7eb92b7af0598fa
DIST ipvsadm-1.24.tar.gz 32007 SHA256 773cbada48061e3afafaeaa2800d5382b8ff638b2c929293c14a793112a0642a
@@ -9,6 +10,7 @@ DIST ipvsadm-1.27.tar.xz 38196 SHA256 d360fb4dcf591e0a8a918831e2c02b1dc03e3c17ee
EBUILD ipvsadm-1.21-r1.ebuild 1296 SHA256 c6ebaf3186b461fd6e1a3d4c982d0505d64af7eb533ec03e579fafd55e145865 SHA512 0987370ec6c8daece3eeb8220960c1fbb1601f8c8d5b72cad5e9a0ac4cc19bdb1faa6c68fa9733f78ca744b72863b6e8eea2e0b5816a8ca269e8cd99f23c6e07 WHIRLPOOL dccb13b0237590ce693a0071e3fe6ebd9ccc9436a4d3005155b9fb0b5fdfc83b7b222c8b983115d7de948ab1febca67bc448b83164adca5fe3340cf8e79a83c7
EBUILD ipvsadm-1.24.ebuild 1390 SHA256 4af7355f2aa495346c3941bbbd3240bf10085a8188b7ff47c2d728f0c3365d12 SHA512 9976f4e98757fb288d1155be5b9d6af3086d7ecd3034c54b1c2e9643b79839ae2cc24f2eed550c3bcd9ff9a584300f9d587b51f74bea941917eeb882b870ab07 WHIRLPOOL c6f6e2b13b4cdff48423c62c5fc02aa9981ff1a95be59f5e7f0aa643c4cb83ab51c13bca2f3b7d64da441d48ce22b9e13a5a730115e15aa3579820821135772b
EBUILD ipvsadm-1.26-r2.ebuild 1585 SHA256 4269b6750881c3fd3d0cb5fd5d9dbfd584e182df83c0ba2d941be9f0b271e06f SHA512 3f29eb5eab3af14a9a1d4264ecaad2bc80778d32439c234a9e4e6a3a245f6275264d3c779fd194ea2a017c23dd589367ea09d2794f535485e3408959ddc5350e WHIRLPOOL 50cccadeeb15437dbe5778f00191f579c3dc9fc8ffdd9420a1b65de96ac67f671a28db40782d886283ee497f83971dd4223faf068a022b89c3b83cd05d6292fc
+EBUILD ipvsadm-1.27-r1.ebuild 1687 SHA256 f5c65d994c48b04327e55504a4c8a989d5f867602a10df7f63394cf01444dc56 SHA512 c8a01d3f1251ac58ad50abd5064f1bda189b92a8475c5cfd975f076694cfb9ba7f3e6cd637740d8cc9d182bf9ec5a3941310171f4ae4a901150d1fc451167b92 WHIRLPOOL 704f9e771fded70de2dbeb26ecd40375b1761d1e7036bf2d32cb5c2aacf6724fa7f7e92e772b58fab6c11b25d600688e92abac434d4c54735db9cc1874c5607f
EBUILD ipvsadm-1.27.ebuild 1629 SHA256 66b76810ea29f48c506f370bc640d52ae78bef3225738b8f2d90c2ead10c7519 SHA512 c6fe49294c20013a4d260a2926481812dc04f0da83e1df26f3cfdd35100517f5bdfce541142b73ec8240497bda2379b4c2c3856570ed0ad4fd4287b405378aeb WHIRLPOOL 740b7299500da98cfaf7951345155a0fe4d521cb1439f8b072ccdb734e16c4517133f04b10352fc4c3cae3be9b6a800ceda9bf9463e9dd08fa9d84b010e13428
-MISC ChangeLog 8587 SHA256 14a26443c837b3186be5051c4750bb45db05afb288090de6f09e01d3edf7cf83 SHA512 c430c6d9cefb094c2cdb3f26d4aa9325b3bad19fff618bc7efd0f73f9527f672a72d7fa5244ad47921e5c55d7a9dd45c8fe55636514fbd721b1b59435dbf3c7a WHIRLPOOL 90a7cfea98a5496d63891fff8eb6ed22be780536c9cf3b9e86abc62e8785087bd0e8965f51bf8c3ff29c1b3d6b4d1a867dc0652c21f7c441e6a7139635e8f7df
+MISC ChangeLog 8843 SHA256 e57a8a93b04f2439ba9caed540f89864c008a511e284d592e91f4d0216f10471 SHA512 151bce5ce9f167893cdf04c8a4b3f24565c232b6269005e0e8c41be5d0cae08f8148bdf8497e2bb96d38ffef0cc81039655818749ec42432bdeb07d5321bb204 WHIRLPOOL 4c29bba133210515f36358cc2da0fdf2c8f8903150b11b934a690421d392ebb3075a4f5407148771a55e612854ddc47ea1363dcef3b367485b892cf3bd3b541d
MISC metadata.xml 265 SHA256 e6d5d2ea1a07e2e00194e0a485c66904b09fefb05427e9373d184ab3161fcdda SHA512 dbfb05fc749fe4054b1e49ceacc75dd8e6d5b804abd4928f5d38e0e96caa7ad7817de7246275a3c4aabff79f0db8f90252380761f2bb0786c70da0b531ddf02f WHIRLPOOL 6ec1181688c423dd6895171f4cf7fa9a3012be94f5918dbfda2188d477ce59a659df232d1ae368e50fc1da34b35697d49394f63015ca1a711da5cc972f890aef
diff --git a/sys-cluster/ipvsadm/files/ipvsadm-1.27-fix-daemon-state.patch b/sys-cluster/ipvsadm/files/ipvsadm-1.27-fix-daemon-state.patch
new file mode 100644
index 000000000000..e3e5ebec72c6
--- /dev/null
+++ b/sys-cluster/ipvsadm/files/ipvsadm-1.27-fix-daemon-state.patch
@@ -0,0 +1,56 @@
+From 8c34d5a0d4c763db9b8f1e54be0c6c3ded6c54e0 Mon Sep 17 00:00:00 2001
+From: Alexander Holler <alexander.holler@1und1.de>
+Date: Mon, 9 Jan 2012 13:16:55 +0100
+Subject: [PATCH] libipvs: Fix reporting of the state of the backup-daemon.
+
+ipvsadm -l --daemon didn't report a running ipvs-backup-daemon
+(if no master-daemon was run).
+
+It seems there was some misunderstanding of
+how the daemons got reported (without using netlink). The state of
+the backup-daemon is always reported (by the kernel) in the second
+element of type ip_vs_daemon_user which is returned by the kernel
+through IP_VS_SO_GET_DAEMON or IPVS_CMD_GET_DAEMON.
+
+Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+
+---
+ libipvs/libipvs.c | 11 ++++++-----
+ 1 files changed, 6 insertions(+), 5 deletions(-)
+
+Note: patch adjusted slightly to apply against ipvsadm (was spun for keepalived) - robbat2
+
+diff --git a/libipvs/libipvs.c b/libipvs/libipvs.c
+index ea5e851..6bee837 100644
+--- a/libipvs/libipvs.c
++++ b/libipvs/libipvs.c
+@@ -1003,12 +1003,9 @@ static int ipvs_daemon_parse_cb(struct nl_msg *msg, void *arg)
+ struct nlattr *attrs[IPVS_CMD_ATTR_MAX + 1];
+ struct nlattr *daemon_attrs[IPVS_DAEMON_ATTR_MAX + 1];
+ ipvs_daemon_t *u = (ipvs_daemon_t *)arg;
++ __u32 state;
+ int i = 0;
+
+- /* We may get two daemons. If we've already got one, this is the second */
+- if (u[0].state)
+- i = 1;
+-
+ if (genlmsg_parse(nlh, 0, attrs, IPVS_CMD_ATTR_MAX, ipvs_cmd_policy) != 0)
+ return -1;
+
+@@ -1021,7 +1018,11 @@ static int ipvs_daemon_parse_cb(struct nl_msg *msg, void *arg)
+ daemon_attrs[IPVS_DAEMON_ATTR_SYNC_ID]))
+ return -1;
+
+- u[i].state = nla_get_u32(daemon_attrs[IPVS_DAEMON_ATTR_STATE]);
++ state = nla_get_u32(daemon_attrs[IPVS_DAEMON_ATTR_STATE]);
++ /* The second element is used for the state of the backup daemon. */
++ if (state == IP_VS_STATE_BACKUP)
++ i = 1;
++ u[i].state = state;
+ strncpy(u[i].mcast_ifn,
+ nla_get_string(daemon_attrs[IPVS_DAEMON_ATTR_MCAST_IFN]),
+ IP_VS_IFNAME_MAXLEN);
+--
+1.7.6.5
+
diff --git a/sys-cluster/ipvsadm/ipvsadm-1.27-r1.ebuild b/sys-cluster/ipvsadm/ipvsadm-1.27-r1.ebuild
new file mode 100644
index 000000000000..3b43b5f62167
--- /dev/null
+++ b/sys-cluster/ipvsadm/ipvsadm-1.27-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/ipvsadm/ipvsadm-1.27-r1.ebuild,v 1.1 2013/11/02 19:49:47 robbat2 Exp $
+
+EAPI=4
+
+inherit eutils linux-info toolchain-funcs
+
+DESCRIPTION="utility to administer the IP virtual server services"
+HOMEPAGE="http://linuxvirtualserver.org/"
+SRC_URI="https://kernel.org/pub/linux/utils/kernel/ipvsadm/ipvsadm-${PV}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="static-libs"
+
+RDEPEND=">=sys-libs/ncurses-5.2
+ dev-libs/libnl
+ >=dev-libs/popt-1.16"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_pretend() {
+ if kernel_is 2 4; then
+ eerror "${P} supports only 2.6 series and later kernels, please try ${PN}-1.21 for 2.4 kernels"
+ die "wrong kernel version"
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.27-buildsystem.patch
+ # Merged upstream in 1.27
+ #epatch "${FILESDIR}"/${PN}-1.26-stack_smashing.patch # bug 371903
+ epatch "${FILESDIR}"/${PN}-1.27-fix-daemon-state.patch
+ use static-libs && export STATIC=1
+}
+
+src_compile() {
+ emake -e \
+ INCLUDE="-I.. -I." \
+ CC="$(tc-getCC)" \
+ HAVE_NL=1 \
+ STATIC=${STATIC} \
+ POPT_LIB="$(pkg-config --libs popt)"
+}
+
+src_install() {
+ into /
+ dosbin ipvsadm ipvsadm-save ipvsadm-restore
+
+ into /usr
+ doman ipvsadm.8 ipvsadm-save.8 ipvsadm-restore.8
+
+ newinitd "${FILESDIR}"/ipvsadm-init ipvsadm
+ keepdir /var/lib/ipvsadm
+
+ use static-libs && dolib.a libipvs/libipvs.a
+ dolib.so libipvs/libipvs.so
+
+ insinto /usr/include/ipvs
+ newins libipvs/libipvs.h ipvs.h
+}
+
+pkg_postinst() {
+ einfo "You will need a kernel that has ipvs patches to use LVS."
+}