commit:     d32abde3460a19cce033cff6660f06b86ad5dce9
Author:     Brahmajit Das <brahmajit.xyz <AT> gmail <DOT> com>
AuthorDate: Wed May  8 11:13:40 2024 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Fri Apr  4 19:33:11 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d32abde3

net-libs/daq: Fix passing from incompatible pointer type

And update EAPI 7 -> 8

Closes: https://bugs.gentoo.org/921572
Signed-off-by: Brahmajit Das <listout <AT> listout.xyz>
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 net-libs/daq/daq-2.0.7-r1.ebuild                   | 83 ++++++++++++++++++++++
 net-libs/daq/files/daq-2.0.7-gcc14-build-fix.patch | 12 ++++
 2 files changed, 95 insertions(+)

diff --git a/net-libs/daq/daq-2.0.7-r1.ebuild b/net-libs/daq/daq-2.0.7-r1.ebuild
new file mode 100644
index 000000000000..ef6d948ceb97
--- /dev/null
+++ b/net-libs/daq/daq-2.0.7-r1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Data Acquisition library, for packet I/O"
+HOMEPAGE="https://www.snort.org/";
+SRC_URI="https://www.snort.org/downloads/snort/${P}.tar.gz";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="ipv6 +afpacket +dump +pcap nfq ipq static-libs"
+
+PCAP_DEPEND=">=net-libs/libpcap-1.0.0"
+IPT_DEPEND="
+       >=net-firewall/iptables-1.4.10
+       dev-libs/libdnet
+       net-libs/libnetfilter_queue
+"
+DEPEND="
+       dump? ( ${PCAP_DEPEND} )
+       ipq? ( ${IPT_DEPEND} )
+       nfq? ( ${IPT_DEPEND} )
+       pcap? ( ${PCAP_DEPEND} )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-2.0.6-parallel-grammar.patch #673390
+       "${FILESDIR}"/${PN}-2.0.6-static-libs.patch
+       "${FILESDIR}"/${PN}-2.0.7-gcc14-build-fix.patch
+)
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_configure() {
+       # We forced libpcap to 1.x, so we can set this cache var so
+       # cross-compiling doesn't break on us.
+       local myeconfargs=(
+               $(use_enable afpacket afpacket-module)
+               $(use_enable dump dump-module)
+               $(use_enable ipq ipq-module)
+               $(use_enable ipv6)
+               $(use_enable nfq nfq-module)
+               $(use_enable pcap pcap-module)
+               $(use_enable static-libs static)
+               --disable-bundled-modules
+               --disable-ipfw-module
+               --enable-shared
+       )
+       daq_cv_libpcap_version_1x=yes \
+               econf "${myeconfargs[@]}"
+}
+
+src_install() {
+       default
+
+       find "${ED}" -name '*.la' -delete || die
+
+       # If not using static-libs don't install the static libraries
+       # This has been bugged upstream
+       if ! use static-libs; then
+               for z in libdaq_static libdaq_static_modules; do
+                       rm -f "${ED}"/usr/$(get_libdir)/${z}.a || die
+               done
+       fi
+}
+
+pkg_postinst() {
+       einfo "The Data Acquisition library (DAQ) for packet I/O replaces 
direct"
+       einfo "calls to PCAP functions with an abstraction layer that 
facilitates"
+       einfo "operation on a variety of hardware and software interfaces 
without"
+       einfo "requiring changes to application such as Snort."
+       einfo
+       einfo "Please see the README file for DAQ for information about 
specific"
+       einfo "DAQ modules."
+}

diff --git a/net-libs/daq/files/daq-2.0.7-gcc14-build-fix.patch 
b/net-libs/daq/files/daq-2.0.7-gcc14-build-fix.patch
new file mode 100644
index 000000000000..67e03b7671f0
--- /dev/null
+++ b/net-libs/daq/files/daq-2.0.7-gcc14-build-fix.patch
@@ -0,0 +1,12 @@
+Bug: https://bugs.gentoo.org/921572
+--- a/os-daq-modules/daq_nfq.c
++++ b/os-daq-modules/daq_nfq.c
+@@ -391,7 +391,7 @@ static inline int SetPktHdr (
+     DAQ_PktHdr_t* hdr,
+     uint8_t** pkt
+ ) {
+-    int len = nfq_get_payload(nfad, (char**)pkt);
++    int len = nfq_get_payload(nfad, (unsigned char**)pkt);
+ 
+     if ( len <= 0 )
+         return -1;

Reply via email to