repo/gentoo:master commit in: sys-process/audit/

"Sam James" <[email protected]>
Newsgroups gmane.linux.gentoo.cvs
Message-ID <1786709976.fcd4d420f475bd27277e57802f0a1aed94dcaf29.sam@gentoo>
commit:     fcd4d420f475bd27277e57802f0a1aed94dcaf29
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 14 12:18:31 2026 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 14 12:19:36 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fcd4d420

sys-process/audit: add 4.2.1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-process/audit/Manifest           |   1 +
 sys-process/audit/audit-4.2.1.ebuild | 199 +++++++++++++++++++++++++++++++++++
 2 files changed, 200 insertions(+)

diff --git a/sys-process/audit/Manifest b/sys-process/audit/Manifest
index f3ed195cf54e..03ab856d6705 100644
--- a/sys-process/audit/Manifest
+++ b/sys-process/audit/Manifest
@@ -1 +1,2 @@
 DIST audit-4.1.4.tar.gz 665162 BLAKE2B 709bba8f66fc16dfc8eb9e26767ae41df9f9c6a9e9769b02c0ab1379627e3e6d148b716f8a97c60995844306a74bb4c089606d0eb08300beef17f6678bee6237 SHA512 e5493f434dddbded65f33bfd56981036af6975c192289a05378d773ce914ab3ffe6b7071cae03e8f69da4e33246a38608d848f64d01647f2572a7eb6651f3ba0
+DIST audit-4.2.1.tar.gz 756167 BLAKE2B 7642a3be30b65ee9fbc10f0929592a0dccd8ef4aca67a237983b5ee644c52d5def62a84161184eae1f9d5741355314d799f39a39b149ae451026f0274c0b9c51 SHA512 71c4ac50b471138da866a82a0fa45970cf26181962f005ae570bdbb76e7cd15b66f8ebeba75a075bf04e52b20d039f012e2bbf8b1055f44641c36897f132894d

diff --git a/sys-process/audit/audit-4.2.1.ebuild b/sys-process/audit/audit-4.2.1.ebuild
new file mode 100644
index 000000000000..465bfa99e235
--- /dev/null
+++ b/sys-process/audit/audit-4.2.1.ebuild
@@ -0,0 +1,199 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# As with sys-libs/libcap-ng, same maintainer in Fedora as upstream, so
+# check Fedora's packaging (https://src.fedoraproject.org/rpms/audit/tree/rawhide)
+# on bumps (or if hitting a bug) to see what they've done there.
+
+PYTHON_COMPAT=( python3_{12..15} )
+TMPFILES_OPTIONAL=1
+
+inherit autotools multilib-minimal toolchain-funcs python-r1 linux-info
+inherit systemd tmpfiles usr-ldscript
+
+DESCRIPTION="Userspace utilities for storing and processing auditing records"
+HOMEPAGE="https://people.redhat.com/sgrubb/audit/"
+SRC_URI="https://github.com/linux-audit/audit-userspace/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/audit-userspace-${PV}"
+
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="build gssapi io-uring ldap python ssl static-libs"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+	sys-libs/libcap-ng
+	gssapi? ( virtual/krb5 )
+	ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
+	python? ( ${PYTHON_DEPS} )
+	ssl? ( >=dev-libs/openssl-1.1.1:= )
+"
+DEPEND="
+	${RDEPEND}
+	>=sys-kernel/linux-headers-5
+"
+BDEPEND="
+	python? (
+		dev-lang/swig
+		dev-python/setuptools[${PYTHON_USEDEP}]
+	)
+"
+IDEPEND="!build? ( virtual/tmpfiles )"
+
+CONFIG_CHECK="~AUDIT"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+	# missing on musl. Uses handrolled AC_LINK_IFELSE but fails at link time
+	# for older compilers regardless. bug #898828
+	strndupa
+)
+
+src_prepare() {
+	default
+
+	# audisp-remote moved in multilib_src_install_all
+	sed -i \
+		-e "s,/sbin/audisp-remote,${EPREFIX}/usr/sbin/audisp-remote," \
+		audisp/plugins/remote/au-remote.conf || die
+
+	# Disable installing sample rules so they can be installed as docs.
+	echo -e '%:\n\t:' | tee rules/Makefile.{am,in} >/dev/null || die
+
+	# Tries to send a real audit event so fails
+	sed -i -e '/test_audit_logging_comm_format()/d' \
+		lib/test/audit_logging_test.c || die
+
+	eautoreconf
+}
+
+multilib_src_configure() {
+	local myeconfargs=(
+		--sbindir="${EPREFIX}"/sbin
+		--localstatedir="${EPREFIX}"/var
+		--runstatedir="${EPREFIX}"/run
+		$(use_enable gssapi gssapi-krb5)
+		$(use_enable ldap zos-remote)
+		$(use_enable ssl tls)
+		$(use_enable static-libs static)
+		$(use_with arm)
+		$(use_with arm64 aarch64)
+		$(use_with io-uring io_uring)
+		--without-golang
+		--without-libwrap
+		--without-python3
+	)
+
+	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+
+	if multilib_is_native_abi && use python; then
+		python_configure() {
+			mkdir -p "${BUILD_DIR}" || die
+			pushd "${BUILD_DIR}" &>/dev/null || die
+
+			ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" --with-python3
+			find . -type f -name 'Makefile' -exec sed -i "s;-I/usr/include/python;-I${SYSROOT}/usr/include/python;g" {} +
+
+			popd &>/dev/null || die
+		}
+
+		python_foreach_impl python_configure
+	fi
+
+	# Make target bindings/python/auparse_python.c doesn't get copied to ${BUILD_DIR}. bug #944338
+	ln -s "${S}/bindings/python/auparse_python.c" "${BUILD_DIR}/bindings/python/auparse_python.c" || die
+}
+
+src_configure() {
+	tc-export_build_env BUILD_{CC,CPP}
+
+	local -x CC_FOR_BUILD="${BUILD_CC}"
+	local -x CPP_FOR_BUILD="${BUILD_CPP}"
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_compile() {
+	default
+
+	# We could copy this for tests but the only thing the bindings do
+	# in check-local is rebuild (!) with -Wl,--no-undefined.
+	if multilib_is_native_abi; then
+		local native_build="${BUILD_DIR}"
+
+		python_compile() {
+			emake -C "${BUILD_DIR}"/bindings/swig top_builddir="${native_build}"
+			emake -C "${BUILD_DIR}"/bindings/python/python3 top_builddir="${native_build}"
+		}
+
+		use python && python_foreach_impl python_compile
+	fi
+}
+
+multilib_src_install() {
+	emake DESTDIR="${D}" initdir="$(systemd_get_systemunitdir)" install
+
+	if multilib_is_native_abi; then
+		local native_build="${BUILD_DIR}"
+
+		python_install() {
+			emake -C "${BUILD_DIR}"/bindings/swig DESTDIR="${D}" top_builddir="${native_build}" install
+			emake -C "${BUILD_DIR}"/bindings/python/python3 DESTDIR="${D}" top_builddir="${native_build}" install
+			python_optimize
+		}
+
+		use python && python_foreach_impl python_install
+
+		# Things like shadow use this so we need to be in /
+		gen_usr_ldscript -a audit auparse
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS ChangeLog README* THANKS
+	docinto contrib
+	dodoc contrib/avc_snap
+	docinto contrib/plugin
+	dodoc contrib/plugin/*
+	docinto rules
+	dodoc rules/*rules
+
+	newinitd "${FILESDIR}"/auditd-init.d-4.1.4 auditd
+	newconfd "${FILESDIR}"/auditd-conf.d-2.1.3 auditd
+
+	if [[ -f "${ED}"/sbin/audisp-remote ]] ; then
+		dodir /usr/sbin
+		mv "${ED}"/{sbin,usr/sbin}/audisp-remote || die
+	fi
+
+	# Gentoo rules
+	insinto /etc/audit
+	newins "${FILESDIR}"/audit.rules-2.1.3 audit.rules
+	doins "${FILESDIR}"/audit.rules.stop*
+	keepdir /etc/audit/rules.d
+
+	# audit logs go here
+	keepdir /var/log/audit
+
+	find "${ED}" -type f -name '*.la' -delete || die
+
+	# Security
+	lockdown_perms "${ED}"
+}
+
+pkg_postinst() {
+	lockdown_perms "${EROOT}"
+	! use build && tmpfiles_process audit.conf
+}
+
+lockdown_perms() {
+	# Upstream wants these to have restrictive perms.
+	# Should not || die as not all paths may exist.
+	local basedir="${1}"
+	chmod 0750 "${basedir}"/sbin/au{ditctl,ditd,report,search,trace} 2>/dev/null
+	chmod 0750 "${basedir}"/var/log/audit 2>/dev/null
+	chmod 0640 "${basedir}"/etc/audit/{auditd.conf,audit*.rules*} 2>/dev/null
+}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.