diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2013-11-02 19:49:52 +0000 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2013-11-02 19:49:52 +0000 |
commit | 9c5014a6a7740d5ce5f9d8dc567e649cfde1616d (patch) | |
tree | 4c1b246f5b922434bc1ab8720a84649aa04dd29d /sys-cluster | |
parent | Add ruby20 target. (diff) | |
download | historical-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/ChangeLog | 9 | ||||
-rw-r--r-- | sys-cluster/ipvsadm/Manifest | 4 | ||||
-rw-r--r-- | sys-cluster/ipvsadm/files/ipvsadm-1.27-fix-daemon-state.patch | 56 | ||||
-rw-r--r-- | sys-cluster/ipvsadm/ipvsadm-1.27-r1.ebuild | 67 |
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." +} |