diff options
author | Ariadne Conill <ariadne@dereferenced.org> | 2020-10-08 18:31:49 -0600 |
---|---|---|
committer | Ariadne Conill <ariadne@dereferenced.org> | 2020-10-08 18:32:11 -0600 |
commit | f3895e77df1338d36160aef8b263d5bab0b20c4a (patch) | |
tree | 081fd54ec433895a768e65ff72ee31856dc3f957 | |
parent | f793dd44c8ab1d0987f4c86522af79d5cd274632 (diff) |
community/frr: allow invalid NLRI attributes
-rw-r--r-- | community/frr/APKBUILD | 6 | ||||
-rw-r--r-- | community/frr/allow-invalid-nlri-attributes.patch | 33 |
2 files changed, 37 insertions, 2 deletions
diff --git a/community/frr/APKBUILD b/community/frr/APKBUILD index cf63f0c77ab..a79b66d2ca7 100644 --- a/community/frr/APKBUILD +++ b/community/frr/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Daniel Corbe <daniel@corbe.net> pkgname=frr pkgver=7.4 -pkgrel=0 +pkgrel=1 pkgdesc="Free Range Routing is a fork of Quagga" pkgusers="frr" pkggroups="frr frrvty" @@ -35,6 +35,7 @@ subpackages="$pkgname-dbg " source="https://github.com/FRRouting/frr/archive/frr-$pkgver.tar.gz frr.initd + allow-invalid-nlri-attributes.patch " builddir="$srcdir"/$pkgname-$pkgname-$pkgver @@ -125,4 +126,5 @@ snmp() { } sha512sums="d5c4e3bf7527bc094a65b24fda1b7a86f87e996fb3d98abe646e878274e0ca30f45aefca76816414b9d44607616cd2eb8ad118045b8986a92dd130f3a704162f frr-7.4.tar.gz -b495b2be9f2cbb065104ccc0c3474471e870b53ac62ed4fba40020c8d50866e637a99ef3d7af5de1018ff659c4757baac4f40d7648a9de99ed14db33c8992b54 frr.initd" +b495b2be9f2cbb065104ccc0c3474471e870b53ac62ed4fba40020c8d50866e637a99ef3d7af5de1018ff659c4757baac4f40d7648a9de99ed14db33c8992b54 frr.initd +5a41a4daf479aa24c424565728cf1bd175c993704ddc7527f11c466dd89fef409069e772cee87cdd9f30903d7a3ee33b1b662c3948ae4bbac126313e6a83ff8f allow-invalid-nlri-attributes.patch" diff --git a/community/frr/allow-invalid-nlri-attributes.patch b/community/frr/allow-invalid-nlri-attributes.patch new file mode 100644 index 00000000000..07bceb7ceb2 --- /dev/null +++ b/community/frr/allow-invalid-nlri-attributes.patch @@ -0,0 +1,33 @@ +Purpose: Allows invalid NLRI attributes due to truncation issue. +Upstream: Not at the moment + +diff -urN frr-frr-7.4.orig/bgpd/bgp_attr.c frr-frr-7.4/bgpd/bgp_attr.c +--- frr-frr-7.4.orig/bgpd/bgp_attr.c 2020-10-08 18:05:11.115803185 -0600 ++++ frr-frr-7.4/bgpd/bgp_attr.c 2020-10-08 18:06:18.132718181 -0600 +@@ -2169,9 +2169,13 @@ + */ + if (length == 0) { + attr->lcommunity = NULL; ++#if 0 + /* Empty extcomm doesn't seem to be invalid per se */ + return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_OPT_ATTR_ERR, + args->total); ++#else ++ return BGP_ATTR_PARSE_PROCEED; ++#endif + } + + attr->lcommunity = lcommunity_parse(stream_pnt(peer->curr), length); +@@ -2179,8 +2183,12 @@ + stream_forward_getp(peer->curr, length); + + if (!attr->lcommunity) ++#if 0 + return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_OPT_ATTR_ERR, + args->total); ++#else ++ return BGP_ATTR_PARSE_PROCEED; ++#endif + + attr->flag |= ATTR_FLAG_BIT(BGP_ATTR_LARGE_COMMUNITIES); + |