diff --git a/.gitignore b/.gitignore index 7c9ec66..7ecdbd8 100644 --- a/.gitignore +++ b/.gitignore @@ -147,3 +147,4 @@ /openjdk-jdk11u-jdk-11.0.20+1-4curve.tar.xz /openjdk-jdk11u-jdk-11.0.20+7-4curve.tar.xz /openjdk-jdk11u-jdk-11.0.20+8-4curve.tar.xz +/openjdk-jdk11u-jdk-11.0.20.1+1-4curve.tar.xz diff --git a/discover_trees.sh b/discover_trees.sh new file mode 100755 index 0000000..8c31278 --- /dev/null +++ b/discover_trees.sh @@ -0,0 +1,54 @@ +#!/bin/sh + +# Copyright (C) 2020 Red Hat, Inc. +# Written by Andrew John Hughes . +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + +TREE=${1} + +if test "x${TREE}" = "x"; then + TREE=${PWD} +fi + +if [ -e ${TREE}/nashorn/.hg -o -e ${TREE}/nashorn/merge.changeset ] ; then + NASHORN="nashorn" ; +fi + +if [ -e ${TREE}/corba/.hg -o -e ${TREE}/corba/merge.changeset ] ; then + CORBA="corba"; +fi + +if [ -e ${TREE}/jaxp/.hg -o -e ${TREE}/jaxp/merge.changeset ] ; then + JAXP="jaxp"; +fi + +if [ -e ${TREE}/jaxws/.hg -o -e ${TREE}/jaxws/merge.changeset ] ; then + JAXWS="jaxws"; +fi + +if [ -e ${TREE}/langtools/.hg -o -e ${TREE}/langtools/merge.changeset ] ; then + LANGTOOLS="langtools"; +fi + +if [ -e ${TREE}/jdk/.hg -o -e ${TREE}/jdk/merge.changeset ] ; then + JDK="jdk"; +fi + +if [ -e ${TREE}/hotspot/.hg -o -e ${TREE}/hotspot/merge.changeset ] ; then + HOTSPOT="hotspot"; +fi + +SUBTREES="${CORBA} ${JAXP} ${JAXWS} ${LANGTOOLS} ${NASHORN} ${JDK} ${HOTSPOT}"; +echo ${SUBTREES} diff --git a/java-11-openjdk.spec b/java-11-openjdk.spec index c07d7c9..3e33152 100644 --- a/java-11-openjdk.spec +++ b/java-11-openjdk.spec @@ -332,7 +332,7 @@ %global featurever 11 %global interimver 0 %global updatever 20 -%global patchver 0 +%global patchver 1 # buildjdkver is usually same as %%{featurever}, # but in time of bootstrap of next jdk, it is featurever-1, # and this it is better to change it here, on single place @@ -377,8 +377,8 @@ %global origin_nice OpenJDK %global top_level_dir_name %{origin} %global top_level_dir_name_backup %{top_level_dir_name}-backup -%global buildver 8 -%global rpmrelease 3 +%global buildver 1 +%global rpmrelease 1 # Settings used by the portable build %global portablerelease 1 %global portablerhel 8 @@ -1425,17 +1425,31 @@ Patch3: rh649512-remove_uses_of_far_in_jpeg_libjpeg_turbo_1_4_compat_for_jdk1 # need to be reviewed & pushed to the appropriate # updates tree of OpenJDK. ############################################# -Patch2001: jdk8242332-rh2108712-sha3-sunpkcs11.patch +Patch2002: jdk8242332-rh2108712-sha3-sunpkcs11.patch ############################################# # -# Patches appearing in 11.0.20 +# Patches appearing in 11.0.21 # # This section includes patches which are present # in the listed OpenJDK 11u release and should be # able to be removed once that release is out # and used by this RPM. ############################################# +# JDK-8243210, RH2229269: 8243210: ClhsdbScanOops fails with NullPointerException in FileMapHeader.inCopiedVtableSpace +Patch2001: jdk8243210-npe_in_clhsdbscanoops.patch + +############################################# +# +# Patches appearing in 11.0.22 +# +# This section includes patches which are present +# in the listed OpenJDK 8u release and should be +# able to be removed once that release is out +# and used by this RPM. +############################################# +# JDK-8312489, OJ2095: Increase jdk.jar.maxSignatureFileSize default which is too low for JARs such as WhiteSource/Mend unified agent jar +Patch2000: jdk8312489-max_sig_default_increase.patch BuildRequires: autoconf BuildRequires: automake @@ -1867,8 +1881,12 @@ pushd %{top_level_dir_name} %patch1001 -p1 # nss.cfg PKCS11 support; must come last as it also alters java.security %patch1000 -p1 -# PKCS11 SHA3 backport +# JDK-8312489 backport, coming in 11.0.22 +%patch2000 -p1 +# JDK-8243210 backport, coming in 11.0.21 %patch2001 -p1 +# PKCS11 SHA3 backport +%patch2002 -p1 popd # openjdk %patch600 @@ -2464,6 +2482,14 @@ require "copy_jdk_configs.lua" %endif %changelog +* Tue Sep 05 2023 Andrew Hughes - 1:11.0.20.1.1-1 +- Update to jdk-11.0.20.1+1 (GA) +- Add backport of JDK-8312489 already upstream in 11.0.22 (see OPENJDK-2095) +- Add backport of JDK-8243210 already upstream in 11.0.21 (see RH2229269) +- Update openjdk_news script to specify subdirectory last +- Add missing discover_trees script required by openjdk_news +- Resolves: rhbz#2236590 + * Thu Jul 20 2023 Andrew Hughes - 1:11.0.20.0.8-3 - Fix tzdata requirement copy-and-paste error that led to two BuildRequires and no Requires - Resolves: rhbz#2224420 diff --git a/jdk8243210-npe_in_clhsdbscanoops.patch b/jdk8243210-npe_in_clhsdbscanoops.patch new file mode 100644 index 0000000..6fe89da --- /dev/null +++ b/jdk8243210-npe_in_clhsdbscanoops.patch @@ -0,0 +1,23 @@ +commit 9d15f3e6537bf7a5ba081b2a6b7339a601ab7ba5 +Author: Thomas Stuefe +Date: Mon Aug 7 18:13:43 2023 +0000 + + 8243210: ClhsdbScanOops fails with NullPointerException in FileMapHeader.inCopiedVtableSpace + + Reviewed-by: clanger + Backport-of: 7f634155b5c4b9f07ab73ceb4c6042ac10dad65e + +diff --git a/src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/memory/FileMapInfo.java b/src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/memory/FileMapInfo.java +index 307598f47f..ef8258525d 100644 +--- a/src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/memory/FileMapInfo.java ++++ b/src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/memory/FileMapInfo.java +@@ -121,6 +121,9 @@ public class FileMapInfo { + } + + public boolean inCopiedVtableSpace(Address vptrAddress) { ++ if (vptrAddress == null) { ++ return false; ++ } + if (vptrAddress.greaterThan(mdRegionBaseAddress) && + vptrAddress.lessThanOrEqual(mdRegionEndAddress)) { + return true; diff --git a/jdk8312489-max_sig_default_increase.patch b/jdk8312489-max_sig_default_increase.patch new file mode 100644 index 0000000..e0c4eeb --- /dev/null +++ b/jdk8312489-max_sig_default_increase.patch @@ -0,0 +1,50 @@ +commit 50074a04e62f91faa080b831d9ce343396ead252 +Author: Andrew John Hughes +Date: Tue Sep 5 20:48:42 2023 +0000 + + 8312489: Increase jdk.jar.maxSignatureFileSize default which is too low for JARs such as WhiteSource/Mend unified agent jar + + Backport-of: e47a84f23dd2608c6f5748093eefe301fb5bf750 + +diff --git a/src/java.base/share/classes/java/util/jar/JarFile.java b/src/java.base/share/classes/java/util/jar/JarFile.java +index cb7e308e0d..cce897c0d3 100644 +--- a/src/java.base/share/classes/java/util/jar/JarFile.java ++++ b/src/java.base/share/classes/java/util/jar/JarFile.java +@@ -809,7 +809,9 @@ class JarFile extends ZipFile { + throw new IOException("Unsupported size: " + uncompressedSize + + " for JarEntry " + ze.getName() + + ". Allowed max size: " + +- SignatureFileVerifier.MAX_SIG_FILE_SIZE + " bytes"); ++ SignatureFileVerifier.MAX_SIG_FILE_SIZE + " bytes. " + ++ "You can use the jdk.jar.maxSignatureFileSize " + ++ "system property to increase the default value."); + } + int len = (int)uncompressedSize; + int bytesRead; +diff --git a/src/java.base/share/classes/sun/security/util/SignatureFileVerifier.java b/src/java.base/share/classes/sun/security/util/SignatureFileVerifier.java +index cb477fc134..a766b8249f 100644 +--- a/src/java.base/share/classes/sun/security/util/SignatureFileVerifier.java ++++ b/src/java.base/share/classes/sun/security/util/SignatureFileVerifier.java +@@ -852,16 +852,16 @@ public class SignatureFileVerifier { + * the maximum allowed number of bytes for the signature-related files + * in a JAR file. + */ +- Integer tmp = GetIntegerAction.privilegedGetProperty( +- "jdk.jar.maxSignatureFileSize", 8000000); ++ int tmp = GetIntegerAction.privilegedGetProperty( ++ "jdk.jar.maxSignatureFileSize", 16000000); + if (tmp < 0 || tmp > MAX_ARRAY_SIZE) { + if (debug != null) { +- debug.println("Default signature file size 8000000 bytes " + +- "is used as the specified size for the " + +- "jdk.jar.maxSignatureFileSize system property " + ++ debug.println("The default signature file size of 16000000 bytes " + ++ "will be used for the jdk.jar.maxSignatureFileSize " + ++ "system property since the specified value " + + "is out of range: " + tmp); + } +- tmp = 8000000; ++ tmp = 16000000; + } + return tmp; + } diff --git a/openjdk_news.sh b/openjdk_news.sh index 560b356..386aa53 100755 --- a/openjdk_news.sh +++ b/openjdk_news.sh @@ -18,8 +18,8 @@ OLD_RELEASE=$1 NEW_RELEASE=$2 -SUBDIR=$3 -REPO=$4 +REPO=$3 +SUBDIR=$4 SCRIPT_DIR=$(dirname ${0}) if test "x${SUBDIR}" = "x"; then diff --git a/sources b/sources index 09867a7..c0aa91b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz) = 97d026212363b3c83f6a04100ad7f6fdde833d16579717f8756e2b8c2eb70e144a41a330cb9ccde9c3badd37a2d54fdf4650a950ec21d8b686d545ecb2a64d30 -SHA512 (openjdk-jdk11u-jdk-11.0.20+8-4curve.tar.xz) = 5ccab8ed101e995cd78a0d522a83438bea22e2818eb8dddf6e96548625c524d4dbef9fe23f70e4472aafb5f32d9c2d234a5320563be98f0d201121bf5f73a1fa +SHA512 (openjdk-jdk11u-jdk-11.0.20.1+1-4curve.tar.xz) = 99b57227c4a0bdfa3f44ccef653608a71ab2a8c6bfa01975cbcf915a07ffc59785297f72fe6a27ed226bfac2a33a8821ac1cf5d0600c4d6b1d7790cf42608ca7