diff options
-rw-r--r-- | metadata/md5-cache/sys-cluster/keepalived-1.2.9 | 13 | ||||
-rw-r--r-- | sys-cluster/keepalived/ChangeLog | 7 | ||||
-rw-r--r-- | sys-cluster/keepalived/Manifest | 8 | ||||
-rw-r--r-- | sys-cluster/keepalived/files/keepalived-1.2.2-libipvs-fix-backup-daemon.patch | 51 | ||||
-rw-r--r-- | sys-cluster/keepalived/files/keepalived-1.2.2-libipvs-fix-ipv6.patch | 33 | ||||
-rw-r--r-- | sys-cluster/keepalived/files/keepalived.confd | 7 | ||||
-rw-r--r-- | sys-cluster/keepalived/files/keepalived.init | 34 | ||||
-rw-r--r-- | sys-cluster/keepalived/keepalived-1.2.9.ebuild | 65 | ||||
-rw-r--r-- | sys-cluster/keepalived/metadata.xml | 8 |
9 files changed, 226 insertions, 0 deletions
diff --git a/metadata/md5-cache/sys-cluster/keepalived-1.2.9 b/metadata/md5-cache/sys-cluster/keepalived-1.2.9 new file mode 100644 index 00000000..e8461ec7 --- /dev/null +++ b/metadata/md5-cache/sys-cluster/keepalived-1.2.9 @@ -0,0 +1,13 @@ +DEFINED_PHASES=compile configure install prepare unpack +DEPEND=dev-libs/popt sys-apps/iproute2 dev-libs/libnl:1.1 dev-libs/openssl snmp? ( net-analyzer/net-snmp ) >=sys-kernel/linux-headers-2.6.30 || ( >=sys-devel/automake-1.12:1.12 >=sys-devel/automake-1.13:1.13 ) >=sys-devel/autoconf-2.68 sys-devel/libtool +DESCRIPTION=A strong & robust keepalive facility to the Linux Virtual Server project +EAPI=4 +HOMEPAGE=http://www.keepalived.org/ +IUSE=debug ipv6 snmp +KEYWORDS=~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 +LICENSE=GPL-2 +RDEPEND=dev-libs/popt sys-apps/iproute2 dev-libs/libnl:1.1 dev-libs/openssl snmp? ( net-analyzer/net-snmp ) +SLOT=0 +SRC_URI=http://www.keepalived.org/software/keepalived-1.2.9.tar.gz +_eclasses_=autotools 16761a2f972abd686713e5967ff3c754 base ec46b36a6f6fd1d0b505a33e0b74e413 eutils 4878e7f88afc0ba0866ac112190b0fd4 libtool b1c8688e60f9580bcb9bb46e08737eb1 multilib 892e597faee02a5b94eb02ab512e7622 multiprocessing 89580da5ec17ad687fcde876c542b91e toolchain-funcs 51e6c948e72c43bcc8edc7544411c953 user d0a4d0735a6c0183d707ca919bd72f28 +_md5_=f9e0cc1154ca478d1a37d5abc26a024c diff --git a/sys-cluster/keepalived/ChangeLog b/sys-cluster/keepalived/ChangeLog new file mode 100644 index 00000000..ff8301e3 --- /dev/null +++ b/sys-cluster/keepalived/ChangeLog @@ -0,0 +1,7 @@ +*keepalived-1.2.9 (15 Nov 2013) + + 15 Nov 2013; Bertrand Jacquin <beber@meleeweb.net> + +files/keepalived-1.2.2-libipvs-fix-backup-daemon.patch, + +files/keepalived-1.2.2-libipvs-fix-ipv6.patch, +files/keepalived.confd, + +files/keepalived.init, +keepalived-1.2.9.ebuild, +metadata.xml: + sys-cluster/keepalived: Version bump, bug #491244 diff --git a/sys-cluster/keepalived/Manifest b/sys-cluster/keepalived/Manifest new file mode 100644 index 00000000..a3a6475c --- /dev/null +++ b/sys-cluster/keepalived/Manifest @@ -0,0 +1,8 @@ +AUX keepalived-1.2.2-libipvs-fix-backup-daemon.patch 1929 SHA256 4a67e2910cf21dbd662b1004f26a0d02c48d3864ecfacbb0c6f3d5865b648341 WHIRLPOOL c4cc9419ea66011ff6a42e655715233fece6e882289810d8ac4f29d2c609902512ba7b8cfdc4a627c2ce008ec4ad0d8d297b618b08feccba2d21fb911fd188da +AUX keepalived-1.2.2-libipvs-fix-ipv6.patch 1036 SHA256 1f4b1c3b74537b2cd47052a068ee9a71131e14e851952c28d79ef027631f1347 WHIRLPOOL 75b62c97875d318ab3ced208f8b8e0c66d459164f2928a0907281fa93800b20ff953831c2dc4203bd7cb15f31cb2e14e79b7200052a032d466bbe3f69e591fc7 +AUX keepalived.confd 290 SHA256 e24b65e5c4ec5d37802db1d85aa5aac8f2fcef94a58db6b52d72da6286556c07 WHIRLPOOL 5b9747fc5fb25081f681c76acd6b8b5c13268f09398241d533f8ed153d0b5c5d9c8c08d77ef394268a64321352d4b17e2cb4dffe6c29198a8883519382a4ef51 +AUX keepalived.init 912 SHA256 44fe841fa059c8d9a02f9f9b6d3dd6d12bcc42f83ed818795913cdcdcf6c3da7 WHIRLPOOL 67db38df631eab9aafcbc6dbf7534d9a8d307d82fa676b80a0bf23dda9fdda7be6fa40b3f7b841600e6e58b789e9e2ab236d7d2d1d71aa7fa968a089d6d1e12c +DIST keepalived-1.2.9.tar.gz 330779 SHA256 fb711dacce95b60eee18f2b89938a9fbebc5096022f17850fd2284f207e41d9d WHIRLPOOL 255887a26f9c561f9229961c835edf3e22563def594ce55af6d81105db5512ea31484efbfc0fb77234368f55bbbb4994edecf6b00af8399c3fc10f6903e1b6d2 +EBUILD keepalived-1.2.9.ebuild 1690 SHA256 91330f9f665a996af2b1e4208759d3ee3ec4eef494cb25bec6ab9b9c7a9dd52e WHIRLPOOL 52e2947aaccaa64d81da48266e591fb06e67eeadfb04d3ff3a8bbce20ded40fdf546c33902dc5709fe9c9ac2e215cbe3bda07ede1362e0bca00024d285311973 +MISC ChangeLog 339 SHA256 18c7c2217692a30b4662028ebfa0caf290148073e34c90bf3ee8f2e623bff33b WHIRLPOOL 5bee00e52beb45c0a2d66ce3a08fa0652f699028923c668d2d93f41b225022a3c3bf074362e7c942d5db4fcf77076c1e189744fdfd9bc04a2674d4f40c0a36dc +MISC metadata.xml 272 SHA256 7fde2180ebedf6971ce9767ab11e619ca60ade87b6c32b37c8fbf3a5442d56b1 WHIRLPOOL ed96940f240f8e6fc1c4e2bf8d9b2064ade28255ef6238e048b3d80d8f9334b101e19deb5c1f89f83016c042bbc533b7855d02e3e0d19c5e2582d93fe416a80f diff --git a/sys-cluster/keepalived/files/keepalived-1.2.2-libipvs-fix-backup-daemon.patch b/sys-cluster/keepalived/files/keepalived-1.2.2-libipvs-fix-backup-daemon.patch new file mode 100644 index 00000000..9898122e --- /dev/null +++ b/sys-cluster/keepalived/files/keepalived-1.2.2-libipvs-fix-backup-daemon.patch @@ -0,0 +1,51 @@ +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. +--- + keepalived/libipvs-2.6/libipvs.c | 11 ++++++----- + 1 files changed, 6 insertions(+), 5 deletions(-) + +diff --git a/keepalived/libipvs-2.6/libipvs.c b/keepalived/libipvs-2.6/libipvs.c +index ea5e851..6bee837 100644 +--- a/keepalived/libipvs-2.6/libipvs.c ++++ b/keepalived/libipvs-2.6/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/keepalived/files/keepalived-1.2.2-libipvs-fix-ipv6.patch b/sys-cluster/keepalived/files/keepalived-1.2.2-libipvs-fix-ipv6.patch new file mode 100644 index 00000000..f9435b02 --- /dev/null +++ b/sys-cluster/keepalived/files/keepalived-1.2.2-libipvs-fix-ipv6.patch @@ -0,0 +1,33 @@ +From cf8ff745812b7fe00d509fb50592348b6f60b433 Mon Sep 17 00:00:00 2001 +From: Alexander Holler <alexander.holler@1und1.de> +Date: Mon, 9 Jan 2012 12:58:12 +0100 +Subject: [PATCH] libipvs: Fix initialization of netlink (needed for IPv6) + when the module ip_vs wasn't loaded. + +The following happened when keepalived was started before the module for IPVS was loaded: + +ipvs_init() failed => netlink got disabled. +modprobe_ipvs() +ipvs_init() => netlink was not tested again => no netlink => no IPv6 + +Fixed through testing netlink always in ipvs_init(). +--- + keepalived/libipvs-2.6/libipvs.c | 2 ++ + 1 files changed, 2 insertions(+), 0 deletions(-) + +diff --git a/keepalived/libipvs-2.6/libipvs.c b/keepalived/libipvs-2.6/libipvs.c +index 2c75118..ea5e851 100644 +--- a/keepalived/libipvs-2.6/libipvs.c ++++ b/keepalived/libipvs-2.6/libipvs.c +@@ -114,6 +114,8 @@ int ipvs_init(void) + ipvs_func = ipvs_init; + + #ifdef LIBIPVS_USE_NL ++ try_nl = 1; ++ + if (ipvs_nl_send_message(NULL, NULL, NULL) == 0) { + return ipvs_getinfo(); + } +-- +1.7.6.5 + diff --git a/sys-cluster/keepalived/files/keepalived.confd b/sys-cluster/keepalived/files/keepalived.confd new file mode 100644 index 00000000..f1baa31a --- /dev/null +++ b/sys-cluster/keepalived/files/keepalived.confd @@ -0,0 +1,7 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/keepalived/files/keepalived.confd,v 1.1 2012/09/25 18:19:32 idl0r Exp $ + +# Keepalived options +# Increase logging: +#KEEPALIVED_OPTS="-D" diff --git a/sys-cluster/keepalived/files/keepalived.init b/sys-cluster/keepalived/files/keepalived.init new file mode 100644 index 00000000..0fcc4ce1 --- /dev/null +++ b/sys-cluster/keepalived/files/keepalived.init @@ -0,0 +1,34 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/keepalived/files/keepalived.init,v 1.3 2013/03/05 13:40:24 ultrabug Exp $ + +depend() { + use logger + # The interfaces do not actually need to exist to start, it handles them gracefully. + use net +} + +command="/usr/sbin/keepalived" +command_args="${KEEPALIVED_OPTS}" +pidfile="/var/run/keepalived.pid" + +extra_commands="checkconfig reload" + +checkconfig() { + # keepalived has a config check command, but it does not work while the daemon is running! + if [ ! -e /etc/keepalived/keepalived.conf ] ; then + eerror "You need an /etc/keepalived/keepalived.conf file to run keepalived" + return 1 + fi +} + +start_pre() { + checkconfig || return 1 +} + +reload() { + ebegin "Reloading keepalived.conf" + start-stop-daemon --pidfile $pidfile --signal HUP + eend $? +} diff --git a/sys-cluster/keepalived/keepalived-1.2.9.ebuild b/sys-cluster/keepalived/keepalived-1.2.9.ebuild new file mode 100644 index 00000000..76601fb4 --- /dev/null +++ b/sys-cluster/keepalived/keepalived-1.2.9.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/keepalived/keepalived-1.2.8.ebuild,v 1.1 2013/10/17 12:29:43 ultrabug Exp $ + +EAPI=4 + +inherit autotools base + +DESCRIPTION="A strong & robust keepalive facility to the Linux Virtual Server project" +HOMEPAGE="http://www.keepalived.org/" +SRC_URI="http://www.keepalived.org/software/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="debug ipv6 snmp" + +RDEPEND="dev-libs/popt + sys-apps/iproute2 + dev-libs/libnl:1.1 + dev-libs/openssl + snmp? ( net-analyzer/net-snmp )" +DEPEND="${RDEPEND} + >=sys-kernel/linux-headers-2.6.30" + +PATCHES=( + "${FILESDIR}"/${PN}-1.2.2-libipvs-fix-backup-daemon.patch + "${FILESDIR}"/${PN}-1.2.2-libipvs-fix-ipv6.patch +) + +DOCS=( README CONTRIBUTORS INSTALL VERSION ChangeLog AUTHOR TODO + doc/keepalived.conf.SYNOPSIS doc/NOTE_vrrp_vmac.txt ) + +src_prepare() { + base_src_prepare + eautoreconf +} + +src_configure() { + STRIP=/bin/true \ + econf \ + --with-kernel-dir=/usr \ + --enable-vrrp \ + $(use_enable debug) \ + $(use_enable snmp) +} + +src_install() { + default + + newinitd "${FILESDIR}"/keepalived.init keepalived + newconfd "${FILESDIR}"/keepalived.confd keepalived + + use snmp && dodoc doc/KEEPALIVED-MIB + + docinto genhash + dodoc genhash/README genhash/AUTHOR genhash/ChangeLog genhash/VERSION || die + # This was badly named by upstream, it's more HOWTO than anything else. + newdoc INSTALL INSTALL+HOWTO + + # Security risk to bundle SSL certs + rm -f "${ED}"/etc/keepalived/samples/*.pem + # Clean up sysvinit files + rm -rf "${ED}"/etc/sysconfig "${ED}"/etc/rc.d/ +} diff --git a/sys-cluster/keepalived/metadata.xml b/sys-cluster/keepalived/metadata.xml new file mode 100644 index 00000000..9baee71a --- /dev/null +++ b/sys-cluster/keepalived/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>cluster</herd> + <longdescription> + VRRP2 implementation. Used for setting up high availability clusters. + </longdescription> +</pkgmetadata> |