net-analyzer/gvm-libs: add 22.21.0

Signed-off-by: Giuseppe Foti <foti.giuseppe@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/41684
Signed-off-by: Florian Schmaus <flow@gentoo.org>
This commit is contained in:
Giuseppe Foti
2025-04-21 12:00:52 +02:00
committed by Florian Schmaus
parent 0e7e8e1e9b
commit 1eaeb477d0
3 changed files with 239 additions and 0 deletions

View File

@@ -1,2 +1,3 @@
DIST gvm-libs-22.11.0.tar.gz 331231 BLAKE2B 0dbd92f1d87b711a08941851dea7044d4d285ec9010ddc48025a3c67ff9a75e32d956c0f1111c6e0904f51634312625f004447611f9ac59c2a2431f665cdc2c2 SHA512 379e0145baddf78b22ac540fbbd900e03bd9b7acbb1d233b8c101b287257638a0ca4d02d8ab73d1d289e2676e9da358f5e1d5ffe0258819b31619e7427ca50ee
DIST gvm-libs-22.15.1.tar.gz 360077 BLAKE2B 46d8bc6f701afd8d8b78004f67e13b4a2472e4ab872fd8c1cc5b870b09a21582979d0167c5d4623979d2628535c21d9c9f5201ff2d080afcd184e5ee9ae5daff SHA512 1d57cd1614100c3c24e3bc291a0d00c10e988830bf25fb1bb35632759d05ca62688ae19a7169d702f6e79547cbcddf687f03a18e54ecae7eff78ce2c90107e89
DIST gvm-libs-22.21.0.tar.gz 370293 BLAKE2B b539569a1cbacc30d4ac74b00f2a51f4b3852437a0ff17f1923ac72f472bc9a0abd97d75dcf4b320622a98b2d610569dfb48505dd888391c1ddfe81b6a45320d SHA512 e547da2ad274ab4c63431f48570e5e540bbd5b2d40cf4f4f3b652f0be89d7a52ec3926dfea9df937b2bb2c262e4a64f5ddab68c9bcf3110aae476b1e484e438f

View File

@@ -0,0 +1,115 @@
# Remove tests that don't work in the network sandbox
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -235,12 +235,12 @@ if (BUILD_TESTS AND NOT SKIP_SRC)
add_custom_target (tests DEPENDS
array-test
- boreas-alivedetection-test
- boreas-cli-test
+# boreas-alivedetection-test
+# boreas-cli-test
boreas-error-test
boreas-io-test
- boreas-ping-test
- boreas-sniffer-test
+# boreas-ping-test
+# boreas-sniffer-test
compressutils-test
cpeutils-test
cvss-test
@@ -248,15 +248,15 @@ if (BUILD_TESTS AND NOT SKIP_SRC)
httputils-test
json-test
jsonpull-test
- logging-test
+# logging-test
logging-domain-test
- networking-test
+# networking-test
nvti-test
openvasd-test
osp-test
passwordbasedauthentication-test
test-hosts
- util-test
+# util-test
version-test
versionutils-test
vtparser-test
--- a/base/CMakeLists.txt
+++ b/base/CMakeLists.txt
@@ -101,13 +101,17 @@ if (BUILD_TESTS)
add_unit_test (cvss-test cvss_tests.c -lm ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS})
set (NETWORKING_TEST_LINKER_WRAP_OPTIONS "-Wl,-wrap,g_io_channel_new_file,-wrap,g_io_channel_shutdown")
+#[===[
add_unit_test (networking-test networking_tests.c gvm_base_shared ${CGREEN_LIBRARIES} ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS} ${NETWORKING_TEST_LINKER_WRAP_OPTIONS})
+]===]
add_unit_test (pwpolicy-test pwpolicy_tests.c ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS})
add_unit_test (version-test version_tests.c ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS})
add_unit_test (nvti-test nvti_tests.c ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS})
add_unit_test (hosts-test hosts_tests.c gvm_base_shared gvm_util_shared ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS})
add_unit_test (logging-domain-test logging_domain_tests.c gvm_base_shared ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS})
+#[===[
add_unit_test (logging-test logging_tests.c gvm_base_shared ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS})
+]===]
endif (BUILD_TESTS)
--- a/boreas/CMakeLists.txt
+++ b/boreas/CMakeLists.txt
@@ -100,22 +100,27 @@ set (LIBGVM_BOREAS_NAME
## Tests
if (BUILD_TESTS)
+#[===[
add_unit_test (boreas-alivedetection-test alivedetection_tests.c gvm_boreas_shared gvm_base_shared gvm_util_shared
${GLIB_LDFLAGS} ${PCAP_LDFLAGS} ${LIBNET_LDFLAGS} ${LINKER_HARDENING_FLAGS} ${CMAKE_THREAD_LIBS_INIT})
+]===]
add_unit_test (boreas-error-test boreas_error_tests.c ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS} ${CMAKE_THREAD_LIBS_INIT})
add_unit_test (boreas-io-test boreas_io_tests.c gvm_boreas_shared gvm_base_shared gvm_util_shared
${PCAP_LDFLAGS} ${LIBNET_LDFLAGS} ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS} ${CMAKE_THREAD_LIBS_INIT})
+#[===[
add_unit_test (boreas-cli-test cli_tests.c gvm_boreas_shared gvm_base_shared gvm_util_shared
${GLIB_LDFLAGS} ${PCAP_LDFLAGS} ${LIBNET_LDFLAGS} ${LINKER_HARDENING_FLAGS} ${CMAKE_THREAD_LIBS_INIT})
add_unit_test (boreas-ping-test ping_tests.c gvm_boreas_shared gvm_base_shared
${GLIB_LDFLAGS} ${PCAP_LDFLAGS} ${LIBNET_LDFLAGS} ${LINKER_HARDENING_FLAGS} ${CMAKE_THREAD_LIBS_INIT})
add_unit_test (boreas-sniffer-test sniffer_tests.c gvm_boreas_shared gvm_base_shared gvm_util_shared
${PCAP_LDFLAGS} ${LIBNET_LDFLAGS} ${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS} ${CMAKE_THREAD_LIBS_INIT})
-
+]===]
set (UTIL_TEST_LINKER_WRAP_OPTIONS
"-Wl,-wrap,socket,-wrap,setsockopt")
+#[===[
add_unit_test (util-test util_tests.c gvm_base_shared
${GLIB_LDFLAGS} ${LINKER_HARDENING_FLAGS} ${CMAKE_THREAD_LIBS_INIT} ${UTIL_TEST_LINKER_WRAP_OPTIONS})
+]===]
endif (BUILD_TESTS)
## Install
--- a/util/CMakeLists.txt
+++ b/util/CMakeLists.txt
@@ -164,17 +164,21 @@ if (BUILD_TESTS)
${GCRYPT_LDFLAGS} ${LDAP_LDFLAGS} ${REDIS_LDFLAGS}
${LIBXML2_LDFLAGS} ${UUID_LDFLAGS}
${LINKER_HARDENING_FLAGS})
+#[===[
add_unit_test (mqtt-test mqtt_tests.c gvm_util_shared gvm_base_shared
${GLIB_LDFLAGS} ${LIBPAHO_LDFLAGS} ${UUID_LDFLAGS}
${LINKER_HARDENING_FLAGS})
+]===]
add_unit_test (kb-test kb_tests.c gvm_base_shared ${GLIB_LDFLAGS} ${REDIS_LDFLAGS}
${LINKER_HARDENING_FLAGS})
add_unit_test (radiusutils-test radiusutils_tests.c gvm_util_shared gvm_base_shared
${GLIB_LDFLAGS} ${RADIUS_LDFLAGS}
${LINKER_HARDENING_FLAGS})
+#[===[
add_unit_test (serverutils-test serverutils_tests.c gvm_util_shared gvm_base_shared
${GLIB_LDFLAGS} ${GCRYPT_LDFLAGS} ${GNUTLS_LDFLAGS}
${LINKER_HARDENING_FLAGS})
+]===]
add_unit_test (versionutils-test versionutils_tests.c
${GLIB_LDFLAGS} ${GIO_LDFLAGS} ${GPGME_LDFLAGS} ${ZLIB_LDFLAGS}
${RADIUS_LDFLAGS} ${LIBSSH_LDFLAGS} ${GNUTLS_LDFLAGS}

View File

@@ -0,0 +1,123 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake toolchain-funcs
DESCRIPTION="Greenbone Vulnerability Management (GVM) libraries"
HOMEPAGE="https://www.greenbone.net https://github.com/greenbone/gvm-libs/"
SRC_URI="https://github.com/greenbone/gvm-libs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64"
IUSE="doc ldap test radius"
RESTRICT="!test? ( test )"
DEPEND="
acct-user/gvm
>=app-crypt/gpgme-1.7.0:=
>=dev-libs/glib-2.42:2
>=dev-libs/hiredis-0.10.1:=
dev-libs/libgcrypt:=
dev-libs/libgpg-error
>=dev-libs/cJSON-1.7.14
>=dev-libs/libxml2-2.0:2
>=net-libs/gnutls-3.2.15:=
net-libs/libnet:1.1
net-libs/libpcap
>=net-libs/libssh-0.6.0:=
>=sys-apps/util-linux-2.25.0
sys-libs/libxcrypt:=
>=sys-libs/zlib-1.2.8
net-libs/paho-mqtt-c:1.3
>=net-misc/curl-7.83.0
ldap? ( net-nds/openldap:= )
radius? ( net-dialup/freeradius-client )
"
RDEPEND="${DEPEND}"
BDEPEND="
dev-vcs/git
app-alternatives/yacc
app-alternatives/lex
virtual/pkgconfig
doc? (
app-text/doxygen[dot]
app-text/xmltoman
app-text/htmldoc
dev-perl/CGI
dev-perl/SQL-Translator
)
test? ( dev-libs/cgreen )
"
PATCHES=(
# Remove tests that don't work in the network sandbox
"${FILESDIR}/${P}-remove-unworking-tests.patch"
)
pkg_setup() {
if tc-is-clang; then
local clang_major_version=$(clang-major-version);
if ! has_version "llvm-runtimes/compiler-rt-sanitizers:${clang_major_version}[profile]"; then
eerror "Compiling this package with clang requires llvm-runtimes/compiler-rt-sanitizers to be built with 'profile' USE flag enabled"
die "Clang detected, but llvm-runtimes/compiler-rt-sanitizers not build with 'profile' USE flag enabled"
fi
fi
}
src_prepare() {
cmake_src_prepare
# QA-Fix | Remove -Werror compiler flag | Bug: #909558
sed -i -e "s/-Werror//" "${S}"/CMakeLists.txt || die
# QA-Fix | Remove doxygen warnings for !CLANG
if use doc; then
if ! tc-is-clang; then
local f
for f in doc/*.in; do
sed -i \
-e "s*CLANG_ASSISTED_PARSING = NO*#CLANG_ASSISTED_PARSING = NO*g" \
-e "s*CLANG_OPTIONS*#CLANG_OPTIONS*g" \
"${f}" || die "couldn't disable CLANG parsing"
done
fi
fi
}
src_configure() {
local mycmakeargs=(
"-DLOCALSTATEDIR=${EPREFIX}/var"
"-DSYSCONFDIR=${EPREFIX}/etc"
"-DGVM_RUN_DIR=${EPREFIX}/var/lib/gvm"
"-DBUILD_TESTS=$(usex test)"
"-DBUILD_WITH_RADIUS=$(usex radius)"
"-DBUILD_WITH_LDAP=$(usex ldap)"
)
cmake_src_configure
}
src_compile() {
cmake_src_compile
if use doc; then
cmake_build -C "${BUILD_DIR}" doc
cmake_build doc-full -C "${BUILD_DIR}" doc
fi
cmake_build rebuild_cache
if use test; then
cmake_build tests
fi
}
src_install() {
if use doc; then
local HTML_DOCS=( "${BUILD_DIR}"/doc/generated/html/. )
fi
cmake_src_install
# Set proper permissions on required files/directories
keepdir /var/lib/gvm
if ! use prefix; then
fowners -R gvm:gvm /var/lib/gvm
fi
}