commit:     7800989084810e6f4f07971406c29c99f2852832
Author:     Jaco Kroon <jaco <AT> uls <DOT> co <DOT> za>
AuthorDate: Wed Oct  2 10:31:55 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Oct  4 08:11:48 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78009890

net-misc/frr: add 9.1.2 (security)

CVE-2024-31950
CVE-2024-31951
CVE-2024-31949
CVE-2024-44070

Closes: https://bugs.gentoo.org/907879
Closes: https://bugs.gentoo.org/872323
Closes: https://bugs.gentoo.org/894076
Bug: https://bugs.gentoo.org/940744
Signed-off-by: Jaco Kroon <jaco <AT> uls.co.za>
Reviewed-by: Alarig Le Lay <alarig <AT> swordarmor.fr>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-misc/frr/Manifest         |   1 +
 net-misc/frr/frr-9.1.2.ebuild | 147 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 148 insertions(+)

diff --git a/net-misc/frr/Manifest b/net-misc/frr/Manifest
index 63a61bdb4dc6..7e0d36caf630 100644
--- a/net-misc/frr/Manifest
+++ b/net-misc/frr/Manifest
@@ -1,3 +1,4 @@
 DIST frr-9.0.2.tar.gz 10341186 BLAKE2B 
e9c32bf48dc0adc7dd6c23ad1a2779065c762dc6e461a3f86d6b7afbef245345dc65b33d9dd5b499d4c4a7fb3b80a4416bdec9b42e7d15f2864d80c088e2ad4f
 SHA512 
2cfd1a63cf073b8767fd67d9992d9a775d856234a532b13699304b6b1f15eb68bf1301f2f4c503b151fd5c8191bff67aeac9c7a4dc4a3ddb06f9a5db081423b9
 DIST frr-9.0.4.tar.gz 10346069 BLAKE2B 
63c7cec0fdaccba058bac757b68906c2cf0ec307f5313a299ef943f1c708dfa0ec0dee8bd8f743f9e54a3ed06f484435bb032294c4e2d0a026a2bd4187e14ec2
 SHA512 
e3717945176f72e14722e929a99f1a62ddd5332988d671950253ea4efc2e83f0464043e7acf990df6bc9306b81f4a32633a0debf92c8a19d13edd38a9bb4eaea
+DIST frr-9.1.2.tar.gz 10790677 BLAKE2B 
dfa4967ee0e0bbecea016b9deeb70b1c1b9e409469de145050602608dddd41857be946e8df5c8a594dfaf6a124729af55d7ce4483e6fe6edc41125f09d9dabd2
 SHA512 
e0ed613090140ece181bff077a7067a00a5fca648ec6627c02d815060087497c68712c1ba244fa1534cdbcef49db92bd9432545d05027dc4b04db4f423726882
 DIST frr-9.1.tar.gz 10779477 BLAKE2B 
ba64f9455c38441f8cadce4eed435fb86344244e98bd1b675335887fb098be29adc035d722d3c128e136a4c6b0aa1adcbdc0e22815702e52170da940a5caf20a
 SHA512 
77b278a3ea87da9dfd7b87e4f9ae67f08ed0f24809f6dd228d2ab2e2c29e2b3191d59d50fc474e53e159ac6c79c302481b462125d0657889516f07b8e05e8562

diff --git a/net-misc/frr/frr-9.1.2.ebuild b/net-misc/frr/frr-9.1.2.ebuild
new file mode 100644
index 000000000000..789b55db98f6
--- /dev/null
+++ b/net-misc/frr/frr-9.1.2.ebuild
@@ -0,0 +1,147 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit autotools pam python-single-r1 systemd
+
+DESCRIPTION="The FRRouting Protocol Suite"
+HOMEPAGE="https://frrouting.org/";
+SRC_URI="https://github.com/FRRouting/frr/archive/${P}.tar.gz";
+# FRR tarballs have weird format.
+S="${WORKDIR}/frr-${P}"
+
+LICENSE="GPL-2+"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="doc fpm grpc nhrp ospfapi pam rpki snmp test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+       ${PYTHON_DEPS}
+       acct-user/frr
+       dev-libs/json-c:0=
+       dev-libs/protobuf-c:0=
+       >=net-libs/libyang-2.0.0
+       <net-libs/libyang-2.1.111
+       sys-libs/libcap
+       sys-libs/readline:0=
+       virtual/libcrypt:=
+       grpc? ( net-libs/grpc:= )
+       nhrp? ( net-dns/c-ares:0= )
+       pam? ( sys-libs/pam )
+       rpki? ( >=net-libs/rtrlib-0.8.0[ssh] )
+       snmp? ( net-analyzer/net-snmp:= )
+"
+BDEPEND="
+       sys-devel/flex
+       app-alternatives/yacc
+       doc? ( dev-python/sphinx )
+"
+DEPEND="
+       ${COMMON_DEPEND}
+       elibc_musl? ( sys-libs/queue-standalone )
+       test? (
+               $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
+               dev-util/cunit
+       )
+"
+RDEPEND="
+       ${COMMON_DEPEND}
+       $(python_gen_cond_dep 'dev-python/ipaddr[${PYTHON_USEDEP}]')
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-7.5-ipctl-forwarding.patch
+       "${FILESDIR}"/${PN}-8.4.1-logrotate.patch
+       "${FILESDIR}"/${PN}-9.1-mimic-gnu-basename-api-for-non-glibc.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+       mallinfo # No functional impact.
+       mallinfo2
+)
+
+src_prepare() {
+       default
+
+       python_fix_shebang tools
+       eautoreconf
+}
+
+src_configure() {
+       local myconf=(
+               LEX=flex
+               --with-pkg-extra-version="-gentoo"
+               --enable-configfile-mask=0640
+               --enable-logfile-mask=0640
+               --libdir="${EPREFIX}"/usr/lib/frr
+               --sbindir="${EPREFIX}"/usr/lib/frr
+               --libexecdir="${EPREFIX}"/usr/lib/frr
+               --sysconfdir="${EPREFIX}"/etc/frr
+               --localstatedir="${EPREFIX}"/run/frr
+               --with-moduledir="${EPREFIX}"/usr/lib/frr/modules
+               --enable-user=frr
+               --enable-group=frr
+               --enable-vty-group=frr
+               --enable-multipath=64
+               $(use_enable doc)
+               $(use_enable fpm)
+               $(use_enable grpc)
+               $(use_enable kernel_linux realms)
+               $(use_enable nhrp nhrpd)
+               $(usex ospfapi '--enable-ospfclient' '' '' '')
+               $(use_enable rpki)
+               $(use_enable snmp)
+       )
+
+       econf "${myconf[@]}"
+}
+
+src_compile() {
+       default
+
+       use doc && emake -C doc html
+}
+
+src_test() {
+       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+       default
+}
+
+src_install() {
+       default
+       find "${ED}" -name '*.la' -delete || die
+
+       # Install user documentation if asked
+       use doc && dodoc -r doc/user/_build/html
+
+       # Create configuration directory with correct permissions
+       # Create logs directory with the correct permissions
+       diropts -ofrr -gfrr -m0775
+       keepdir /var/log/frr /etc/frr
+
+       # Install the default configuration files
+       insinto /etc/frr
+       doins tools/etc/frr/{vtysh.conf,frr.conf,daemons}
+
+       # Fix permissions/owners.
+       fowners frr:frr /etc/frr/{vtysh.conf,frr.conf,daemons}
+       fperms 640 /etc/frr/{vtysh.conf,frr.conf,daemons}
+
+       # Install logrotate configuration
+       insinto /etc/logrotate.d
+       newins redhat/frr.logrotate frr
+
+       # Install PAM configuration file
+       use pam && newpamd "${FILESDIR}"/frr.pam frr
+
+       # Install init scripts
+       systemd_dounit tools/frr.service
+       newinitd "${FILESDIR}"/frr-openrc-v2 frr
+
+       # Conflict files, installed by net-libs/libsmi, bug #758383
+       rm "${ED}"/usr/share/yang/ietf-interfaces.yang || die
+}

Reply via email to