dev-java/log4j-core: add 2.26.0 - CVE-2025-68161

Bug: https://bugs.gentoo.org/971360
Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
Part-of: https://codeberg.org/gentoo/gentoo/pulls/263
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Volkmar W. Pogatzki
2025-12-25 16:50:36 +01:00
committed by Sam James
parent 4688994aff
commit dbf04b0f4a
2 changed files with 117 additions and 0 deletions

View File

@@ -1,3 +1,5 @@
DIST apache-log4j-2.19.0-src.tar.gz 11764795 BLAKE2B 02ec7c5c825cabe9994a2f50d6761110f87a19ff46874c00d46986da7338c32148f3b6c3551c95721aaf94b71d1d5ce8bcea32462e11fa3fe0c3cbbc0cf5f887 SHA512 c72859c415e701921497bb4f02047fa022083f66b4d21b1dbae28361bd73498b2eae335b9a1ac2d7f796df734a6d54db2701ae5ebf999197597e9e2ad064c271
DIST apache-log4j-2.25.2-src.zip 7395022 BLAKE2B 5865672255ab640facdd24f8fd883b67853ddd01dff4d3e35f7318244d13db8995ccb97d687d94fd3dcce88d407b16058b89760723c4cefe29f1941b5bd945e7 SHA512 6d9f36d4aa829fad6eb1fdf92caa343dbf0add04574de3052be17cc75b6551bf2d62836c1be350acecddb5655fba748eeb8a7c73f00cc58e514bd727c391553d
DIST apache-log4j-2.25.2-src.zip.asc 833 BLAKE2B fe4eeabf107b1d89384b2f3ee8d0cdb0bead5208494be972ddab6a15c2dfe77e881d496d9750a816f3b9bc293f063164dc2a7f7b5796ae3f03f6e93182cc7347 SHA512 bb0847c3bec4ff0496baa8aab5236e4076676f1d99cae305eeac061fa3b6e5e1b8788509b92659e2b45904241b46a156e6ceff65458e8c88d5539a4ac4270cc0
DIST apache-log4j-2.26.0-src.zip 7460219 BLAKE2B bb30a3ddea745ad3cb101ba288d11b2b966cc6de11f386deb202b586a418d6326114555834f64e8cb4ea0339d5d54fad1590be419cf8efe3d9793121bda46c70 SHA512 b9f82de518c4040606aed926a1ce7be802c7535a3b91a872740560718174317ba4cf16b9f03561990dd049ca75dd375c73676191c15f8faae898d66c9acde2e2
DIST apache-log4j-2.26.0-src.zip.asc 833 BLAKE2B 7a0adcd31cfce9e2ea446ac49d8a1c0f9e1793c00f55c1fe7e8d4dd616b3296bf9182c1657fa57fb2f53c6d3cc834cbe682d994e6657718f582a38a516412068 SHA512 035863a0aecda3609b74d82216d93e42b77b6762c5e1f7a8f41ddb0b429c63db45dd8548ce4d2d4823529f9f6e3377f6de98dc226c25abba36a4440f3f446043

View File

@@ -0,0 +1,115 @@
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=9
# No tests, too many test-dependencies are not packaged.
JAVA_PKG_IUSE="doc source"
inherit java-pkg-2 java-pkg-simple junit5 verify-sig
DESCRIPTION="The Apache Log4j Implementation"
HOMEPAGE="https://logging.apache.org/log4j/2.x/"
SRC_URI="mirror://apache/logging/log4j/${PV}/apache-log4j-${PV}-src.zip
verify-sig? ( https://downloads.apache.org/logging/log4j/${PV}/apache-log4j-${PV}-src.zip.asc )"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64"
BDEPEND="
app-arch/unzip
verify-sig? ( >=sec-keys/openpgp-keys-apache-logging-20251104 )
"
CP_DEPEND="
>=dev-java/bnd-annotation-7.1.0:0
>=dev-java/commons-compress-1.28.0:0
>=dev-java/commons-csv-1.14.1-r1:0
>=dev-java/conversant-disruptor-1.2.20:0
>=dev-java/jackson-annotations-2.20:0
>=dev-java/jackson-core-2.20.0:0
>=dev-java/jackson-databind-2.20.0:0
>=dev-java/jackson-dataformat-xml-2.20.0:0
>=dev-java/jackson-dataformat-yaml-2.20.0:0
>=dev-java/javax-mail-1.6.7-r2:0
>=dev-java/jctools-core-4.0.5-r1:0
>=dev-java/jeromq-0.6.0-r1:0
>=dev-java/javax-jms-api-2.0.3:0
>=dev-java/jspecify-1.0.0:0
>=dev-java/kafka-clients-1.1.1-r2:0
>=dev-java/lmax-disruptor-3.4.4:0
~dev-java/log4j-api-${PV}:0
>=dev-java/osgi-annotation-8.1.0:0
>=dev-java/osgi-core-8.0.0:0
>=dev-java/stax2-api-4.2.2:0
"
DEPEND="
${CP_DEPEND}
>=dev-java/asm-9.10.1:0
>=dev-java/brotli-dec-0.1.2-r1:0
>=dev-java/commons-codec-1.21.0:0
>=dev-java/commons-io-2.21.0:0
>=dev-java/commons-lang-3.20.0:0
>=dev-java/jakarta-activation-api-1.2.2-r1:1
>=dev-java/jnacl-1.0-r1:0
>=dev-java/snakeyaml-2.5:0
>=dev-java/xz-java-1.12:0
>=dev-java/zstd-jni-1.5.7.6:0
>=virtual/jdk-9:*
"
RDEPEND="
${CP_DEPEND}
>=virtual/jre-1.8:*
"
JAVA_CLASSPATH_EXTRA="asm brotli-dec commons-codec commons-io
commons-lang jakarta-activation-api-1 jnacl snakeyaml xz-java zstd-jni"
JAVA_INTERMEDIATE_JAR_NAME="org.apache.logging.log4j.core"
JAVA_MODULE_INFO_OUT="log4j-core-java9/src/main/java"
JAVA_RELEASE_SRC_DIRS=( ["9"]="log4j-core-java9/src/main/java" )
JAVA_RESOURCE_DIRS="${PN}/src/main/resources"
JAVA_SRC_DIR="${PN}/src/main/java"
VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/logging.apache.org.asc"
src_prepare() {
java-pkg-2_src_prepare
# according to what we get from grep -nr '@ServiceProvider' log4j-core/*
mkdir -p log4j-core/src/main/resources/META-INF/services || die "mkdir"
pushd $_ >/dev/null || die "pushd"
echo "org.apache.logging.log4j.core.config.plugins.processor.GraalVmProcessor" \
> javax.annotation.processing.Processor || die
echo "org.apache.logging.log4j.core.config.plugins.processor.PluginProcessor" \
>> javax.annotation.processing.Processor || die
echo "org.apache.logging.log4j.core.impl.ThreadContextDataProvider" \
> org.apache.logging.log4j.core.util.ContextDataProvider || die
echo "org.apache.logging.log4j.core.message.ExtendedThreadInfoFactory" \
> 'org.apache.logging.log4j.message.ThreadDumpMessage$ThreadInfoFactory' || die
echo "org.apache.logging.log4j.core.impl.Log4jProvider" \
> org.apache.logging.log4j.spi.Provider || die
popd >/dev/null || die popd
}
src_compile() {
# we run this twice, first time to get PluginProcessor into processorpath.
java-pkg-simple_src_compile
# using PluginProcessor.class
JAVAC_ARGS=" -processorpath target/classes:$(java-pkg_getjars log4j-api) \
-processor org.apache.logging.log4j.core.config.plugins.processor.PluginProcessor"
java-pkg-simple_src_compile
# For versions/9, upstream packages only what's listed in log4j-core-java9/src/assembly/java9.xml
# We remove the jar, remove from target/classes what's not needed and re-create the jar.
rm log4j-core.jar || die
rm -r target/classes/META-INF/versions/9/org/apache/logging/log4j/core/pattern || die
rm target/classes/META-INF/versions/9/org/apache/logging/log4j/core/util/Integers.class || die
rm target/classes/META-INF/versions/9/org/apache/logging/log4j/core/impl/ExtendedClassInfo.class || die
rm target/classes/META-INF/versions/9/org/apache/logging/log4j/core/jackson/StackTraceElementConstants.class || die
mv target/classes/{META-INF/versions/9/,}module-info.class || die
echo 'Multi-Release: true' >> target/classes/META-INF/MANIFEST.MF || die "add true"
jar cfm log4j-core.jar target/classes/META-INF/MANIFEST.MF -C target/classes . || die
}