commit: e4010a3464c1b2de50164fb7bc551903f10016b3 Author: Robert Förster <Dessa <AT> gmake <DOT> de> AuthorDate: Mon Apr 7 19:45:29 2025 +0000 Commit: Alexys Jacob <ultrabug <AT> gentoo <DOT> org> CommitDate: Thu Apr 10 08:37:40 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e4010a34
dev-libs/libbson: add fix for CVE-2023-0437, add proper python dep for sphinx Closes: https://bugs.gentoo.org/639540 Closes: https://bugs.gentoo.org/721170 Closes: https://bugs.gentoo.org/921953 Bug: https://bugs.gentoo.org/936109 Signed-off-by: Robert Förster <Dessa <AT> gmake.de> Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org> dev-libs/libbson/Manifest | 1 + .../files/libbson-1.24.4-CVE-2023-0437.patch | 25 +++++++++ dev-libs/libbson/libbson-1.24.4-r1.ebuild | 64 ++++++++++++++++++++++ dev-libs/libbson/metadata.xml | 1 + 4 files changed, 91 insertions(+) diff --git a/dev-libs/libbson/Manifest b/dev-libs/libbson/Manifest index bd0172ca539f..fd6b81ea1b16 100644 --- a/dev-libs/libbson/Manifest +++ b/dev-libs/libbson/Manifest @@ -1 +1,2 @@ DIST libbson-1.24.4.tar.gz 7916661 BLAKE2B e361b52bf16eed7437428b0481d792ecf2f9cc283fdd6f23916d4a3ffb1b7d7c9ea7a7c4cf5f369e21fb6d4f564b91e07ac2ee44656855993218593dc4f1c166 SHA512 3563c061565d17a76581e188f6e184d7e41f2729812c8815afd34e03ebe6c1d25d7498a2cb1b599a09d24f6268c36473ef5113a14c7585a1532c9abf2e56e936 +DIST mongo-c-driver-1.24.4.tar.gz 7916661 BLAKE2B e361b52bf16eed7437428b0481d792ecf2f9cc283fdd6f23916d4a3ffb1b7d7c9ea7a7c4cf5f369e21fb6d4f564b91e07ac2ee44656855993218593dc4f1c166 SHA512 3563c061565d17a76581e188f6e184d7e41f2729812c8815afd34e03ebe6c1d25d7498a2cb1b599a09d24f6268c36473ef5113a14c7585a1532c9abf2e56e936 diff --git a/dev-libs/libbson/files/libbson-1.24.4-CVE-2023-0437.patch b/dev-libs/libbson/files/libbson-1.24.4-CVE-2023-0437.patch new file mode 100644 index 000000000000..d9ac4b171e40 --- /dev/null +++ b/dev-libs/libbson/files/libbson-1.24.4-CVE-2023-0437.patch @@ -0,0 +1,25 @@ +From be865dd759a28aa268232766f304d1bc11f1e8f7 Mon Sep 17 00:00:00 2001 +From: Kevin Albertson <[email protected]> +Date: Mon, 30 Oct 2023 18:01:30 +0000 +Subject: [PATCH] CDRIVER-4747 use `size_t` consistently in + `bson_utf8_validate` (#1458) + +--- + src/libbson/src/bson/bson-utf8.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/libbson/src/bson/bson-utf8.c b/src/libbson/src/bson/bson-utf8.c +index e122ac31f7..1cebd27069 100644 +--- a/src/libbson/src/bson/bson-utf8.c ++++ b/src/libbson/src/bson/bson-utf8.c +@@ -118,8 +118,8 @@ bson_utf8_validate (const char *utf8, /* IN */ + bson_unichar_t c; + uint8_t first_mask; + uint8_t seq_length; +- unsigned i; +- unsigned j; ++ size_t i; ++ size_t j; + + BSON_ASSERT (utf8); + diff --git a/dev-libs/libbson/libbson-1.24.4-r1.ebuild b/dev-libs/libbson/libbson-1.24.4-r1.ebuild new file mode 100644 index 000000000000..3a3050f47fca --- /dev/null +++ b/dev-libs/libbson/libbson-1.24.4-r1.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..13} pypy3_11 ) + +inherit cmake python-any-r1 + +DESCRIPTION="Library routines related to building,parsing and iterating BSON documents" +HOMEPAGE="https://github.com/mongodb/mongo-c-driver/tree/master/src/libbson" +SRC_URI="https://github.com/mongodb/mongo-c-driver/releases/download/${PV}/mongo-c-driver-${PV}.tar.gz" +S="${WORKDIR}/mongo-c-driver-${PV}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~hppa ~loong ~ppc ~riscv ~sparc ~x86" +IUSE="examples static-libs" + +# tests are covered in mongo-c-driver and are not easily runnable in here +RESTRICT="test" + +BDEPEND=" + $(python_gen_any_dep ' + dev-python/sphinx[${PYTHON_USEDEP}] + ') +" + +PATCHES=( + "${FILESDIR}/${P}-CVE-2023-0437.patch" +) + +python_check_deps() { + python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" +} + +src_prepare() { + cmake_src_prepare + + # remove doc files + sed -i '/^\s*install\s*(FILES COPYING NEWS/,/^\s*)/ {d}' CMakeLists.txt || die +} + +src_configure() { + local mycmakeargs=( + -DENABLE_EXAMPLES=OFF + -DENABLE_MAN_PAGES=ON + -DENABLE_MONGOC=OFF + -DENABLE_TESTS=OFF + -DENABLE_STATIC="$(usex static-libs ON OFF)" + -DENABLE_UNINSTALL=OFF + ) + + cmake_src_configure +} + +src_install() { + if use examples; then + docinto examples + dodoc src/libbson/examples/*.c + fi + + cmake_src_install +} diff --git a/dev-libs/libbson/metadata.xml b/dev-libs/libbson/metadata.xml index c01295da36f6..dc70db85ec30 100644 --- a/dev-libs/libbson/metadata.xml +++ b/dev-libs/libbson/metadata.xml @@ -6,6 +6,7 @@ <name>Ultrabug</name> </maintainer> <upstream> + <remote-id type="cpe">cpe:/a:mongodb:libbson</remote-id> <remote-id type="github">mongodb/mongo-c-driver</remote-id> </upstream> </pkgmetadata>
