summaryrefslogtreecommitdiffstats
path: root/main/quagga
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2015-03-09 08:47:56 +0000
committerTimo Teräs <timo.teras@iki.fi>2015-03-09 08:47:56 +0000
commit7d838dd9aca6cf3a75a393ae1b3529cfe4aa86d2 (patch)
tree040863b8f53fb1bea4494fd4d67bc3d1a2a495fc /main/quagga
parentdf5ebae46140fd1eac79b18e9c87b269d375f380 (diff)
downloadaports-7d838dd9aca6cf3a75a393ae1b3529cfe4aa86d2.tar.bz2
aports-7d838dd9aca6cf3a75a393ae1b3529cfe4aa86d2.tar.xz
main/quagga: upgrade to 0.99.24.1
enable pimd, remove deprecated configure options and upstreamed patch
Diffstat (limited to 'main/quagga')
-rw-r--r--main/quagga/1001-bgpd-implement-next-hop-self-all.patch151
-rw-r--r--main/quagga/APKBUILD16
2 files changed, 6 insertions, 161 deletions
diff --git a/main/quagga/1001-bgpd-implement-next-hop-self-all.patch b/main/quagga/1001-bgpd-implement-next-hop-self-all.patch
deleted file mode 100644
index dd5e3e1aa..000000000
--- a/main/quagga/1001-bgpd-implement-next-hop-self-all.patch
+++ /dev/null
@@ -1,151 +0,0 @@
-From 9e7a53c179f6897128b24435452b5d3d0f8c715a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
-Date: Thu, 24 Apr 2014 10:22:37 +0300
-Subject: [PATCH] bgpd: implement "next-hop-self all"
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-As specified in:
-http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/iproute_bgp/command/irg-cr-book/bgp-m1.html#wp4972925610
-
-This allows overriding next-hop for ibgp learned routes on an
-RR for reflected routes.
-
-Especially useful for using iBGP in DMVPN setups. See:
-http://blog.ipspace.net/2014/04/changes-in-ibgp-next-hop-processing.html
-
-Signed-off-by: Timo Teräs <timo.teras@iki.fi>
----
- bgpd/bgp_route.c | 3 ++-
- bgpd/bgp_vty.c | 30 +++++++++++++++++++++++-------
- bgpd/bgpd.c | 5 ++++-
- bgpd/bgpd.h | 1 +
- doc/bgpd.texi | 8 +++++---
- 5 files changed, 35 insertions(+), 12 deletions(-)
-
-diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
-index f421ca5..232a6a1 100644
---- a/bgpd/bgp_route.c
-+++ b/bgpd/bgp_route.c
-@@ -976,7 +976,8 @@ bgp_announce_check (struct bgp_info *ri, struct peer *peer, struct prefix *p,
- }
-
- /* next-hop-set */
-- if (transparent || reflect
-+ if (transparent
-+ || (reflect && ! CHECK_FLAG (peer->af_flags[afi][safi], PEER_FLAG_NEXTHOP_SELF_ALL))
- || (CHECK_FLAG (peer->af_flags[afi][safi], PEER_FLAG_NEXTHOP_UNCHANGED)
- && ((p->family == AF_INET && attr->nexthop.s_addr)
- #ifdef HAVE_IPV6
-diff --git a/bgpd/bgp_vty.c b/bgpd/bgp_vty.c
-index 3c6973b..a818fe7 100644
---- a/bgpd/bgp_vty.c
-+++ b/bgpd/bgp_vty.c
-@@ -2093,25 +2093,41 @@ DEFUN (no_neighbor_capability_orf_prefix,
- /* neighbor next-hop-self. */
- DEFUN (neighbor_nexthop_self,
- neighbor_nexthop_self_cmd,
-- NEIGHBOR_CMD2 "next-hop-self",
-+ NEIGHBOR_CMD2 "next-hop-self {all}",
- NEIGHBOR_STR
- NEIGHBOR_ADDR_STR2
-- "Disable the next hop calculation for this neighbor\n")
-+ "Disable the next hop calculation for this neighbor\n"
-+ "Apply also to ibgp-learned routes when acting as a route reflector\n")
- {
-- return peer_af_flag_set_vty (vty, argv[0], bgp_node_afi (vty),
-- bgp_node_safi (vty), PEER_FLAG_NEXTHOP_SELF);
-+ u_int32_t flags = PEER_FLAG_NEXTHOP_SELF, unset = 0;
-+ int rc;
-+
-+ /* Check if "all" is specified */
-+ if (argv[1] != NULL)
-+ flags |= PEER_FLAG_NEXTHOP_SELF_ALL;
-+ else
-+ unset |= PEER_FLAG_NEXTHOP_SELF_ALL;
-+
-+ rc = peer_af_flag_set_vty (vty, argv[0], bgp_node_afi (vty),
-+ bgp_node_safi (vty), flags);
-+ if ( rc == CMD_SUCCESS && unset )
-+ rc = peer_af_flag_unset_vty (vty, argv[0], bgp_node_afi (vty),
-+ bgp_node_safi (vty), unset);
-+ return rc;
- }
-
- DEFUN (no_neighbor_nexthop_self,
- no_neighbor_nexthop_self_cmd,
-- NO_NEIGHBOR_CMD2 "next-hop-self",
-+ NO_NEIGHBOR_CMD2 "next-hop-self {all}",
- NO_STR
- NEIGHBOR_STR
- NEIGHBOR_ADDR_STR2
-- "Disable the next hop calculation for this neighbor\n")
-+ "Disable the next hop calculation for this neighbor\n"
-+ "Apply also to ibgp-learned routes when acting as a route reflector\n")
- {
- return peer_af_flag_unset_vty (vty, argv[0], bgp_node_afi (vty),
-- bgp_node_safi (vty), PEER_FLAG_NEXTHOP_SELF);
-+ bgp_node_safi (vty),
-+ PEER_FLAG_NEXTHOP_SELF|PEER_FLAG_NEXTHOP_SELF_ALL);
- }
-
- /* neighbor remove-private-AS. */
-diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c
-index 19b96fa..4d374cc 100644
---- a/bgpd/bgpd.c
-+++ b/bgpd/bgpd.c
-@@ -2355,6 +2355,7 @@ static const struct peer_flag_action peer_af_flag_action_list[] =
- { PEER_FLAG_ORF_PREFIX_SM, 1, peer_change_reset },
- { PEER_FLAG_ORF_PREFIX_RM, 1, peer_change_reset },
- { PEER_FLAG_NEXTHOP_LOCAL_UNCHANGED, 0, peer_change_reset_out },
-+ { PEER_FLAG_NEXTHOP_SELF_ALL, 1, peer_change_reset_out },
- { 0, 0, 0 }
- };
-
-@@ -4990,7 +4991,9 @@ bgp_config_write_peer (struct vty *vty, struct bgp *bgp,
- /* Nexthop self. */
- if (peer_af_flag_check (peer, afi, safi, PEER_FLAG_NEXTHOP_SELF)
- && ! peer->af_group[afi][safi])
-- vty_out (vty, " neighbor %s next-hop-self%s", addr, VTY_NEWLINE);
-+ vty_out (vty, " neighbor %s next-hop-self%s%s", addr,
-+ peer_af_flag_check (peer, afi, safi, PEER_FLAG_NEXTHOP_SELF_ALL) ?
-+ " all" : "", VTY_NEWLINE);
-
- /* Remove private AS. */
- if (peer_af_flag_check (peer, afi, safi, PEER_FLAG_REMOVE_PRIVATE_AS)
-diff --git a/bgpd/bgpd.h b/bgpd/bgpd.h
-index a1b1273..eae803d 100644
---- a/bgpd/bgpd.h
-+++ b/bgpd/bgpd.h
-@@ -412,6 +412,7 @@ struct peer
- #define PEER_FLAG_MAX_PREFIX (1 << 14) /* maximum prefix */
- #define PEER_FLAG_MAX_PREFIX_WARNING (1 << 15) /* maximum prefix warning-only */
- #define PEER_FLAG_NEXTHOP_LOCAL_UNCHANGED (1 << 16) /* leave link-local nexthop unchanged */
-+#define PEER_FLAG_NEXTHOP_SELF_ALL (1 << 17) /* next-hop-self all */
-
- /* MD5 password */
- char *password;
-diff --git a/doc/bgpd.texi b/doc/bgpd.texi
-index cb9789b..de70970 100644
---- a/doc/bgpd.texi
-+++ b/doc/bgpd.texi
-@@ -299,10 +299,12 @@ This command is deprecated and may be removed in a future release. Its
- use should be avoided.
- @end deffn
-
--@deffn {BGP} {neighbor @var{peer} next-hop-self} {}
--@deffnx {BGP} {no neighbor @var{peer} next-hop-self} {}
-+@deffn {BGP} {neighbor @var{peer} next-hop-self [all]} {}
-+@deffnx {BGP} {no neighbor @var{peer} next-hop-self [all]} {}
- This command specifies an announced route's nexthop as being equivalent
--to the address of the bgp router.
-+to the address of the bgp router if it is learned via eBGP.
-+If the optional keyword @code{all} is specified the modifiation is done
-+also for routes learned via iBGP.
- @end deffn
-
- @deffn {BGP} {neighbor @var{peer} update-source @var{<ifname|address>}} {}
---
-2.1.0
-
diff --git a/main/quagga/APKBUILD b/main/quagga/APKBUILD
index 82fa25a6a..3ee86fb18 100644
--- a/main/quagga/APKBUILD
+++ b/main/quagga/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=quagga
-pkgver=0.99.23.1
-pkgrel=1
+pkgver=0.99.24.1
+pkgrel=0
pkgdesc="A free routing daemon replacing Zebra supporting RIP, OSPF and BGP."
url="http://quagga.net/"
arch="all"
@@ -13,7 +13,6 @@ subpackages="$pkgname-dev $pkgname-doc $pkgname-dbg"
pkgusers="quagga"
pkggroups="quagga"
source="http://download.savannah.gnu.org/releases/quagga/quagga-$pkgver.tar.xz
- 1001-bgpd-implement-next-hop-self-all.patch
bgpd-gr-route-selection-fix.patch
bgpd.initd
zebra.initd
@@ -38,7 +37,6 @@ build() {
--host=$CHOST \
--prefix=/usr \
--disable-static \
- --enable-ipv6 \
--enable-ospf6d \
--enable-rtadv \
--enable-user=quagga \
@@ -47,6 +45,7 @@ build() {
--enable-vtysh \
--enable-snmp \
--enable-multipath=64 \
+ --enable-pimd \
--sysconfdir=/etc/quagga \
--enable-exampledir=/usr/share/doc/quagga/ \
--localstatedir=/var/run/quagga \
@@ -71,20 +70,17 @@ package() {
install -Dm644 "$srcdir/zebra.confd" "$pkgdir"/etc/conf.d/zebra
install -o quagga -g quagga -d -m755 "$pkgdir"/etc/quagga
}
-md5sums="da14aed6ae4be582486816f3eac2a46f quagga-0.99.23.1.tar.xz
-cb97c9d7e192ca05b64c9da909daa97a 1001-bgpd-implement-next-hop-self-all.patch
+md5sums="b168db69435100ee04564c4fb39c7413 quagga-0.99.24.1.tar.xz
1fbfcff69bc7df56f9e6682012261004 bgpd-gr-route-selection-fix.patch
e80a3df594eba8b09e19aa28d9283698 bgpd.initd
33d0e34f11460881161ab930d3d3b987 zebra.initd
34e06a1d2bc602ce691abc9ed169dd15 zebra.confd"
-sha256sums="202e8b7fbec810f28a84e3fbb6aafdaf08a3b51527c258807abc8a74ed617eb8 quagga-0.99.23.1.tar.xz
-cd1a3cebe2e666fe95036dac5fe0b4c19772dc1d39859f5390c5c5d84695b8b3 1001-bgpd-implement-next-hop-self-all.patch
+sha256sums="6fd6baadb136a801c29c1dd72d0fe69da9f19ae498e87bff7057778361e43b14 quagga-0.99.24.1.tar.xz
66de5b7c097aeb1767001547e219af51e43f968bd241dec7f0c71b68b54855de bgpd-gr-route-selection-fix.patch
41471bfda120cb57bc0f40e87ec23a4f150d2b97c97ececdda6c408eab7cf9a3 bgpd.initd
d6cc9280df63859ba711ad2071b38b9ce317d718c34840a2b101debef3fa7b56 zebra.initd
f7a52d383f60270a5a8fee5d4ac522c5c0ec2b7c4b5252cff54e260f32d9b323 zebra.confd"
-sha512sums="7a222d4a5aa41deeb233f2e9ce922e5c29787c2f74c1b99177089e3183b69d3c0e4db5846676485a1990b728e007e687070ba4cecab67aa61f8be6c0851581cc quagga-0.99.23.1.tar.xz
-a8b7c2f8c4e31841b735f17e2476adfc5d0b9caee4808ade19774fedf8abf935f0afda1bf43e79606dd5aca821a11435b69c84eec3cd6860c24e35775ff0bc3e 1001-bgpd-implement-next-hop-self-all.patch
+sha512sums="71c340ce0f4e52c69892d8fed82d30956161b09b029fb0a82ba774664aa2303b493068664ea057870bec3c7c2a1ffea0a68fba0c400d6868efef691d7b055d2a quagga-0.99.24.1.tar.xz
3e3e1862739ed47da38720d87669ee0bfa2d6e2c2c65388727c92a22cad8b5bf9f4c302701cbd0cf3ac0186eeb1498aefed74c85d8f43ced41c78680fdbbc2ac bgpd-gr-route-selection-fix.patch
d2bf7e8f2da49d0b039e72e76a77860b5b49d41a80550d6dc84791bbdec1d52e579393c5d42b45aa615991742421fef53ec1b92a5e740779b6060e20f5dd0413 bgpd.initd
a4955fe54729ec8cb17b72f3d2205d0a4ba814a51a5eb3635a85339de9a2d2342e4814ef8b1e011803fa1dc3c6f9a23b178848e0812576876343104854feb723 zebra.initd