diff options
Diffstat (limited to 'main/quagga')
-rw-r--r-- | main/quagga/1001-bgpd-allow-using-ebgp-multihop-for-ibgp-connections.patch | 69 | ||||
-rw-r--r-- | main/quagga/APKBUILD | 25 |
2 files changed, 79 insertions, 15 deletions
diff --git a/main/quagga/1001-bgpd-allow-using-ebgp-multihop-for-ibgp-connections.patch b/main/quagga/1001-bgpd-allow-using-ebgp-multihop-for-ibgp-connections.patch new file mode 100644 index 0000000000..f38522950a --- /dev/null +++ b/main/quagga/1001-bgpd-allow-using-ebgp-multihop-for-ibgp-connections.patch @@ -0,0 +1,69 @@ +From 43b861e1322c492970dcb83db880c27427b13b51 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> +Date: Wed, 19 Oct 2016 13:45:13 +0300 +Subject: [PATCH] bgpd: allow using ebgp-multihop for ibgp connections +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Allow setting ebgp-multihop for iBGP. It will basically only set +TTL for iBGP connections as the other features of ebgp-multihop +affect only eBGP. This improves compatibility with other +implementations that allow setting TTL for all connections. +Enabling this has similar reasoning as for enabling gtsm for ibgp +(see commit 5d804b439a4138c77). + +Signed-off-by: Timo Teräs <timo.teras@iki.fi> +--- + bgpd/bgp_vty.c | 3 --- + bgpd/bgpd.c | 3 --- + bgpd/bgpd.h | 5 ++--- + 3 files changed, 2 insertions(+), 9 deletions(-) + +diff --git a/bgpd/bgp_vty.c b/bgpd/bgp_vty.c +index 8eeaff9..332ce21 100644 +--- a/bgpd/bgp_vty.c ++++ b/bgpd/bgp_vty.c +@@ -276,9 +276,6 @@ bgp_vty_return (struct vty *vty, int ret) + case BGP_ERR_NO_EBGP_MULTIHOP_WITH_TTLHACK: + str = "ebgp-multihop and ttl-security cannot be configured together"; + break; +- case BGP_ERR_NO_IBGP_WITH_TTLHACK: +- str = "ttl-security only allowed for EBGP peers"; +- break; + } + if (str) + { +diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c +index 56e4322..68ddfc4 100644 +--- a/bgpd/bgpd.c ++++ b/bgpd/bgpd.c +@@ -2865,9 +2865,6 @@ peer_ebgp_multihop_set (struct peer *peer, int ttl) + struct listnode *node, *nnode; + struct peer *peer1; + +- if (peer->sort == BGP_PEER_IBGP) +- return BGP_ERR_NO_IBGP_WITH_TTLHACK; +- + if (peer->gtsm_hops != 0) + return BGP_ERR_NO_EBGP_MULTIHOP_WITH_TTLHACK; + +diff --git a/bgpd/bgpd.h b/bgpd/bgpd.h +index a4c608d..dbdcfa1 100644 +--- a/bgpd/bgpd.h ++++ b/bgpd/bgpd.h +@@ -831,9 +831,8 @@ enum bgp_clear_type + #define BGP_ERR_CANNOT_HAVE_LOCAL_AS_SAME_AS -28 + #define BGP_ERR_TCPSIG_FAILED -29 + #define BGP_ERR_NO_EBGP_MULTIHOP_WITH_TTLHACK -30 +-#define BGP_ERR_NO_IBGP_WITH_TTLHACK -31 +-#define BGP_ERR_CANNOT_HAVE_LOCAL_AS_SAME_AS_REMOTE_AS -32 +-#define BGP_ERR_MAX -33 ++#define BGP_ERR_CANNOT_HAVE_LOCAL_AS_SAME_AS_REMOTE_AS -31 ++#define BGP_ERR_MAX -32 + + extern struct bgp_master *bm; + +-- +2.10.1 + diff --git a/main/quagga/APKBUILD b/main/quagga/APKBUILD index 7e8e631a01..cd6940024b 100644 --- a/main/quagga/APKBUILD +++ b/main/quagga/APKBUILD @@ -1,18 +1,22 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=quagga -pkgver=1.1.1 +pkgver=1.2.0 pkgrel=0 -pkgdesc="A free routing daemon replacing Zebra supporting RIP, OSPF and BGP." +pkgdesc="A free routing daemon replacing Zebra supporting RIP, OSPF, BGP and NHRP" url="http://quagga.net/" arch="all" license="GPL2" depends="iproute2" -makedepends="linux-headers readline-dev ncurses-dev gawk texinfo perl net-snmp-dev" +replaces="quagga-nhrp" +provides="quagga-nhrp=$pkgver" +makedepends="linux-headers readline-dev ncurses-dev c-ares-dev net-snmp-dev + gawk texinfo perl" install="$pkgname.pre-install $pkgname.post-install $pkgname.post-upgrade" subpackages="$pkgname-dev $pkgname-doc $pkgname-dbg" pkgusers="quagga" pkggroups="quagga" source="http://download.savannah.gnu.org/releases/quagga/quagga-$pkgver.tar.gz + 1001-bgpd-allow-using-ebgp-multihop-for-ibgp-connections.patch dont-hook-core-signals.patch bgpd.initd @@ -60,23 +64,14 @@ package() { for i in zebra bgpd; do install -Dm755 "$srcdir"/$i.initd "$pkgdir"/etc/init.d/$i done - for i in ripd ospfd ripngd ospf6d; do + for i in ripd ospfd ripngd ospf6d nhrpd; do ln -s bgpd "$pkgdir"/etc/init.d/$i || return 1 done install -Dm644 "$srcdir/zebra.confd" "$pkgdir"/etc/conf.d/zebra install -o quagga -g quagga -d -m755 "$pkgdir"/etc/quagga } -md5sums="fb7e4f50638886b5701422bc2279a9af quagga-1.1.1.tar.gz -1224ba91ea6b6e81f583bad7813aba98 dont-hook-core-signals.patch -09a77e2e84e71c43f5a449738c026261 bgpd.initd -916f1dd1a286ee7b862cda4fe56cbf21 zebra.initd -34e06a1d2bc602ce691abc9ed169dd15 zebra.confd" -sha256sums="b5a94e5bdad3062e04595a5692b8cc435f0a85102f75dfdca0a06d093b4ef63f quagga-1.1.1.tar.gz -4b71588e34ac14f8d6e72e6064b5e4ec302f286ebbe43df94c97411cceb66a23 dont-hook-core-signals.patch -aab037454c6a70cd5cb45e14c47b7dfea358f8d81c7d12418edcf7e58a86c679 bgpd.initd -c1d7526581927e990e687cbd5d08447eb060f76a439475572785b5b90c60c460 zebra.initd -f7a52d383f60270a5a8fee5d4ac522c5c0ec2b7c4b5252cff54e260f32d9b323 zebra.confd" -sha512sums="51eb64ada07b42c663705cedf56be5b8b54143a5543b472e3dc7c703a4ab0542f39cfbeed64d1c33ceee6a15ea8d25ef84616fa40b6bf9cc32023f7241c18c58 quagga-1.1.1.tar.gz +sha512sums="0ad28b828c2e52ad486189bd68e21041fe7c4affada7e3f12ba83a95f3532e0b012ba6b4271f9d0de63d4f5b15e80c706977b3afa54b57a3a5ec02400227d5ae quagga-1.2.0.tar.gz +dfa33341119fe51caa7bc33b44256f57361f2e3f8192862cca215b312ceb68e6a8c264dbf2a43d6244e6152bfad110cb0fdbefb065d95dd50389cf613d9720b3 1001-bgpd-allow-using-ebgp-multihop-for-ibgp-connections.patch 5ef5c5e6d70d991b33b13a062e25b6fbde395dceee36aea29384b0640a48d2957ed5f50d416a1f2f770bf69bae2340133e35b1114be7e1fa722eb6d3d021f37a dont-hook-core-signals.patch 13b5b57e10df013bd2d931abc49bf76b8c4dee59dbceab22c9f151ccb988b2c5f7167f2909027d5e0f990b59da8de115667b02484aee9a67d347625700f6cacd bgpd.initd 1638a4a64ffd066b1884f7e5a4243edab68739aabd83bd35ea8c9608af7b8623eece1d59fb08feead84e4386b6d1da4220764ccf5fd7f2a9959a8470d5cce86a zebra.initd |