commit:     d6d31519339f95017875475954b66b61a3e9cca1
Author:     Giuseppe Foti <foti.giuseppe <AT> gmail <DOT> com>
AuthorDate: Fri Mar 29 23:21:50 2024 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Wed Apr  3 17:34:48 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d6d31519

net-analyzer/openvas-scanner: add 23.0.1

Signed-off-by: Giuseppe Foti <foti.giuseppe <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/35995
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 net-analyzer/openvas-scanner/Manifest              |   1 +
 .../files/openvas-scanner-23.0.1-link-pcap.patch   |  16 ++
 .../openvas-scanner/openvas-scanner-23.0.1.ebuild  | 163 +++++++++++++++++++++
 3 files changed, 180 insertions(+)

diff --git a/net-analyzer/openvas-scanner/Manifest 
b/net-analyzer/openvas-scanner/Manifest
index 883c03b3f20b..678d032cb5a3 100644
--- a/net-analyzer/openvas-scanner/Manifest
+++ b/net-analyzer/openvas-scanner/Manifest
@@ -1 +1,2 @@
 DIST openvas-scanner-22.7.9.tar.gz 1069904 BLAKE2B 
908810997880d1267f41df59905acc2ac2d491ab8453001ae8e2cc6881958150e8866b07b4e335888e8e574b5a347b33880bd24c9b8d140edd6c384e498e5dc9
 SHA512 
279a781fe698496fb88efd28c0ee6ede66a0180237b60c4d7b083fe10c7b7ac054ec04b08c9b33e6dd142f60529faedfef4441421cc04e95eaa08865e47b58dd
+DIST openvas-scanner-23.0.1.tar.gz 1387550 BLAKE2B 
22f0b7f10fbb8be7d0897ce1895035ec9e330adee2a56d7c724e9e9fd54808ed10de5f05b3bb02918e44e45a7f85035e7d63fdd89345dcdb09d5180740823c74
 SHA512 
e2107ca762abcbb20d4506d2cc4479d5fbf5efd744a598ec63ea3c66ae6a6f1743deeb4b7aa9863b78c186c8a4d4b5f2212d241cef51b91c6c5bcd0879c45dc7

diff --git 
a/net-analyzer/openvas-scanner/files/openvas-scanner-23.0.1-link-pcap.patch 
b/net-analyzer/openvas-scanner/files/openvas-scanner-23.0.1-link-pcap.patch
new file mode 100644
index 000000000000..9d7294708360
--- /dev/null
+++ b/net-analyzer/openvas-scanner/files/openvas-scanner-23.0.1-link-pcap.patch
@@ -0,0 +1,16 @@
+Fixes underlinking pcatp lib in nasl/CMakeLists.txt
+Upstream PR: https://github.com/greenbone/openvas-scanner/pull/1611
+
+diff --git a/nasl/CMakeLists.txt b/nasl/CMakeLists.txt
+index 975154a..dd1b925 100644
+--- a/nasl/CMakeLists.txt
++++ b/nasl/CMakeLists.txt
+@@ -188,7 +188,7 @@ set_target_properties (openvas_nasl_shared PROPERTIES 
CLEAN_DIRECT_OUTPUT 1)
+ set_target_properties (openvas_nasl_shared PROPERTIES SOVERSION 
"${PROJECT_VERSION_MAJOR}")
+ set_target_properties (openvas_nasl_shared PROPERTIES VERSION 
"${PROJECT_VERSION_STRING}")
+ # line below is needed so it also works with no-undefined which is e.g. used 
by Mandriva
+-target_link_libraries (openvas_nasl_shared openvas_misc_shared ${GLIB_LDFLAGS}
++target_link_libraries (openvas_nasl_shared openvas_misc_shared pcap 
${GLIB_LDFLAGS}
+                          ${LIBOPENVAS_MISC_LDFLAGS}
+                          ${GLIB_JSON_LDFLAGS} 
+                          ${GCRYPT_LDFLAGS} ${GPGME_LDFLAGS} m

diff --git a/net-analyzer/openvas-scanner/openvas-scanner-23.0.1.ebuild 
b/net-analyzer/openvas-scanner/openvas-scanner-23.0.1.ebuild
new file mode 100644
index 000000000000..4d62998ccc00
--- /dev/null
+++ b/net-analyzer/openvas-scanner/openvas-scanner-23.0.1.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake systemd tmpfiles toolchain-funcs readme.gentoo-r1 optfeature
+
+MY_DN="openvas"
+
+DESCRIPTION="Open Vulnerability Assessment Scanner"
+HOMEPAGE="https://www.greenbone.net 
https://github.com/greenbone/openvas-scanner/";
+SRC_URI="
+       https://github.com/greenbone/openvas-scanner/archive/v${PV}.tar.gz -> 
${P}.tar.gz
+"
+
+SLOT="0"
+LICENSE="GPL-2 GPL-2+"
+KEYWORDS="amd64 ~x86"
+IUSE="doc snmp test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       acct-user/gvm
+       app-crypt/gpgme:=
+       >=dev-db/redis-5.0.3
+       >=dev-libs/glib-2.42:2
+       >=dev-libs/libgcrypt-1.6:=
+       dev-libs/libgpg-error
+       >=dev-libs/libksba-1.0.7
+       dev-libs/libbsd
+       >=net-libs/libssh-0.6.0:=
+       >=dev-libs/json-glib-1.4.4
+       >=net-analyzer/gvm-libs-22.4
+       >=net-libs/gnutls-3.6.4:=
+       net-libs/libpcap
+       >=net-misc/curl-7.74.0[ssl]
+       snmp? ( net-analyzer/net-snmp:= )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+       >=sys-devel/bison-2.5
+       app-alternatives/lex
+       virtual/pkgconfig
+       doc? (
+               app-text/doxygen[dot]
+               app-text/xmltoman
+               app-text/htmldoc
+               dev-perl/CGI
+               dev-perl/SQL-Translator
+               virtual/pandoc
+       )
+       test? ( dev-libs/cgreen )
+"
+PATCHES=(
+       # See https://github.com/greenbone/openvas-scanner/pull/1611
+       "${FILESDIR}"/openvas-scanner-23.0.1-link-pcap.patch
+)
+
+src_prepare() {
+       cmake_src_prepare
+       # QA-Fix | Remove -Werror compiler flag
+       sed -i -e "s/-Werror//" "${S}"/CMakeLists.txt || die #909560
+       # QA-Fix | Remove !CLANG doxygen warnings for 7.0.0
+       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
+
+       #Remove tests that doesn't work in the network sandbox
+       if use test; then
+               sed -i 's/add_test (pcap-test pcap-test)/ /g' 
misc/CMakeLists.txt || die
+       fi
+}
+
+src_configure() {
+       local mycmakeargs=(
+               "-DLOCALSTATEDIR=${EPREFIX}/var"
+               "-DSYSCONFDIR=${EPREFIX}/etc"
+               "-DSBINDIR=${EPREFIX}/usr/bin"
+               
"-DOPENVAS_FEED_LOCK_PATH=${EPREFIX}/var/lib/openvas/feed-update.lock"
+               "-DOPENVAS_RUN_DIR=/run/ospd"
+               "-DINSTALL_OLD_SYNC_SCRIPT=OFF"
+               "-DBUILD_WITH_NETSNMP=$(usex snmp)"
+       )
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+       if use doc; then
+               cmake_build -C "${BUILD_DIR}" doxygen-full manual
+       fi
+       cmake_build rebuild_cache
+       if use test; then
+               cmake_build tests
+       fi
+}
+
+src_install() {
+       if use doc; then
+               mv "${BUILD_DIR}"/doc/html "${BUILD_DIR}"/doc/html-manual || die
+               local HTML_DOCS=(
+                       "${BUILD_DIR}"/doc/generated/html/.
+                       "${BUILD_DIR}"/doc/html-manual
+               )
+       fi
+       cmake_src_install
+
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}/${MY_DN}.logrotate" "${MY_DN}"
+
+       # Set proper permissions on required files/directories
+       keepdir /var/log/gvm
+       if ! use prefix; then
+               fowners gvm:gvm /var/log/gvm
+       fi
+
+       keepdir /var/lib/openvas/{gnupg,plugins}
+       if ! use prefix; then
+               fowners -R gvm:gvm /var/lib/openvas
+       fi
+
+       insinto /etc/openvas
+       newins "${FILESDIR}/openvas.conf-22" openvas.conf
+
+       systemd_newunit "${FILESDIR}/redis-openvas.service" 
redis-openvas.service
+       newtmpfiles "${FILESDIR}/redis-openvas.tmpfiles" redis-openvas.conf
+
+       insinto /etc/gvm
+       doins config/redis-openvas.conf
+       if ! use prefix; then
+               fowners -R gvm:gvm /etc/gvm /etc/gvm/redis-openvas.conf
+       fi
+
+       fperms 0750 /etc/gvm
+       fperms 0640 /etc/gvm/redis-openvas.conf
+
+       newconfd "${FILESDIR}/redis-openvas.confd" redis-openvas
+       newinitd "${FILESDIR}/redis-openvas.initd" redis-openvas
+
+       if use prefix; then
+               diropts -m0750
+       else
+               diropts -m0750 -o gvm -g gvm
+       fi
+       keepdir /var/lib/openvas/redis
+
+       readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+       tmpfiles_process redis-openvas.conf
+       optfeature "port scanner" net-analyzer/nmap
+       readme.gentoo_print_elog
+}

Reply via email to