Compare commits
1 Commits
Author | SHA256 | Date | |
---|---|---|---|
d764f0e8de |
@@ -1,78 +0,0 @@
|
||||
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java
|
||||
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java
|
||||
@@ -1015,6 +1015,9 @@ public class HtmlDocletWriter {
|
||||
// @see reference label...
|
||||
label = ref.subList(1, ref.size());
|
||||
}
|
||||
+ case ERRONEOUS -> {
|
||||
+ return HtmlTree.SPAN(Text.of(resources.getText("doclet.tag.invalid_input", seeText)));
|
||||
+ }
|
||||
default ->
|
||||
throw new IllegalStateException(ref.get(0).getKind().toString());
|
||||
}
|
||||
--- a/test/langtools/jdk/javadoc/doclet/testSeeTag/TestSeeTag.java
|
||||
+++ b/test/langtools/jdk/javadoc/doclet/testSeeTag/TestSeeTag.java
|
||||
@@ -23,15 +23,19 @@
|
||||
|
||||
/*
|
||||
* @test
|
||||
- * @bug 8017191 8182765 8200432 8239804 8250766 8262992
|
||||
+ * @bug 8017191 8182765 8200432 8239804 8250766 8262992 8281944
|
||||
* @summary Javadoc is confused by at-link to imported classes outside of the set of generated packages
|
||||
- * @library ../../lib
|
||||
+ * @library /tools/lib ../../lib
|
||||
* @modules jdk.javadoc/jdk.javadoc.internal.tool
|
||||
- * @build javadoc.tester.*
|
||||
+ * @build toolbox.ToolBox javadoc.tester.*
|
||||
* @run main TestSeeTag
|
||||
*/
|
||||
|
||||
import javadoc.tester.JavadocTester;
|
||||
+import toolbox.ToolBox;
|
||||
+
|
||||
+import java.io.IOException;
|
||||
+import java.nio.file.Path;
|
||||
|
||||
public class TestSeeTag extends JavadocTester {
|
||||
|
||||
@@ -105,4 +109,40 @@ public class TestSeeTag extends JavadocTester {
|
||||
</dd>
|
||||
</dl>""");
|
||||
}
|
||||
+
|
||||
+ ToolBox tb = new ToolBox();
|
||||
+
|
||||
+ @Test
|
||||
+ public void testErroneous() throws IOException {
|
||||
+ Path src = Path.of("erroneous", "src");
|
||||
+ tb.writeJavaFiles(src, """
|
||||
+ package erroneous;
|
||||
+ /**
|
||||
+ * Comment.
|
||||
+ * @see <a href="
|
||||
+ */
|
||||
+ public class C {
|
||||
+ private C() { }
|
||||
+ }
|
||||
+ """);
|
||||
+
|
||||
+ javadoc("-d", Path.of("erroneous", "api").toString(),
|
||||
+ "-sourcepath", src.toString(),
|
||||
+ "--no-platform-links",
|
||||
+ "erroneous");
|
||||
+ checkExit(Exit.ERROR);
|
||||
+
|
||||
+ checkOutput("erroneous/C.html", true,
|
||||
+ """
|
||||
+ <dl class="notes">
|
||||
+ <dt>See Also:</dt>
|
||||
+ <dd>
|
||||
+ <ul class="see-list">
|
||||
+ <li><span>invalid input: '<a href="'</span></li>
|
||||
+ </ul>
|
||||
+ </dd>
|
||||
+ </dl>
|
||||
+ """);
|
||||
+
|
||||
+ }
|
||||
}
|
69
fips.patch
69
fips.patch
@@ -1417,7 +1417,7 @@
|
||||
+}
|
||||
--- a/src/java.base/share/conf/security/java.security
|
||||
+++ b/src/java.base/share/conf/security/java.security
|
||||
@@ -82,6 +82,17 @@ security.provider.tbd=Apple
|
||||
@@ -83,6 +83,17 @@
|
||||
#endif
|
||||
security.provider.tbd=SunPKCS11
|
||||
|
||||
@@ -1435,7 +1435,7 @@
|
||||
#
|
||||
# A list of preferred providers for specific algorithms. These providers will
|
||||
# be searched for matching algorithms before the list of registered providers.
|
||||
@@ -292,6 +303,47 @@ policy.ignoreIdentityScope=false
|
||||
@@ -293,6 +304,47 @@ policy.ignoreIdentityScope=false
|
||||
#
|
||||
keystore.type=pkcs12
|
||||
|
||||
@@ -1483,7 +1483,7 @@
|
||||
#
|
||||
# Controls compatibility mode for JKS and PKCS12 keystore types.
|
||||
#
|
||||
@@ -329,6 +381,13 @@ package.definition=sun.misc.,\
|
||||
@@ -330,6 +382,13 @@ package.definition=sun.misc.,\
|
||||
#
|
||||
security.overridePropertiesFile=true
|
||||
|
||||
@@ -2408,7 +2408,7 @@
|
||||
private static final long serialVersionUID = -2575874101938349339L;
|
||||
|
||||
private static final String PUBLIC = "public";
|
||||
@@ -393,9 +398,10 @@ abstract class P11Key implements Key, Length {
|
||||
@@ -406,9 +411,10 @@ abstract class P11Key implements Key, Length {
|
||||
new CK_ATTRIBUTE(CKA_EXTRACTABLE),
|
||||
});
|
||||
|
||||
@@ -2417,12 +2417,12 @@
|
||||
- attrs[1].getBoolean() || !attrs[2].getBoolean();
|
||||
+ boolean exportable = plainKeySupportEnabled && !algorithm.equals("DH");
|
||||
+ boolean keySensitive = (!exportable &&
|
||||
+ ((attrs[0].getBoolean() && P11Util.isNSS(session.token)) ||
|
||||
+ attrs[1].getBoolean() || !attrs[2].getBoolean()));
|
||||
+ (attrs[0].getBoolean() && P11Util.isNSS(session.token)) ||
|
||||
+ attrs[1].getBoolean() || !attrs[2].getBoolean());
|
||||
|
||||
switch (algorithm) {
|
||||
case "RSA":
|
||||
@@ -450,7 +456,8 @@ abstract class P11Key implements Key, Length {
|
||||
@@ -463,7 +469,8 @@ abstract class P11Key implements Key, Length {
|
||||
|
||||
public String getFormat() {
|
||||
token.ensureValid();
|
||||
@@ -3285,29 +3285,7 @@
|
||||
d(SIG, "RawDSA", P11Signature,
|
||||
List.of("NONEwithDSA"),
|
||||
m(CKM_DSA));
|
||||
@@ -1144,9 +1356,21 @@ public final class SunPKCS11 extends AuthProvider {
|
||||
if (ds == null) {
|
||||
continue;
|
||||
}
|
||||
+ descLoop:
|
||||
for (Descriptor d : ds) {
|
||||
Integer oldMech = supportedAlgs.get(d);
|
||||
if (oldMech == null) {
|
||||
+ if (d.requiredMechs != null) {
|
||||
+ // Check that other mechanisms required for the
|
||||
+ // service are supported before listing it as
|
||||
+ // available for the first time.
|
||||
+ for (int requiredMech : d.requiredMechs) {
|
||||
+ if (token.getMechanismInfo(
|
||||
+ requiredMech & 0xFFFFFFFFL) == null) {
|
||||
+ continue descLoop;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
supportedAlgs.put(d, integerMech);
|
||||
continue;
|
||||
}
|
||||
@@ -1220,11 +1444,52 @@ public final class SunPKCS11 extends AuthProvider {
|
||||
@@ -1211,11 +1423,52 @@ public final class SunPKCS11 extends AuthProvider {
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -3360,7 +3338,7 @@
|
||||
try {
|
||||
return newInstance0(param);
|
||||
} catch (PKCS11Exception e) {
|
||||
@@ -1244,6 +1509,8 @@ public final class SunPKCS11 extends AuthProvider {
|
||||
@@ -1235,6 +1488,8 @@ public final class SunPKCS11 extends AuthProvider {
|
||||
} else if (algorithm.endsWith("GCM/NoPadding") ||
|
||||
algorithm.startsWith("ChaCha20-Poly1305")) {
|
||||
return new P11AEADCipher(token, algorithm, mechanism);
|
||||
@@ -3369,7 +3347,7 @@
|
||||
} else {
|
||||
return new P11Cipher(token, algorithm, mechanism);
|
||||
}
|
||||
@@ -1579,6 +1846,9 @@ public final class SunPKCS11 extends AuthProvider {
|
||||
@@ -1570,6 +1825,9 @@ public final class SunPKCS11 extends AuthProvider {
|
||||
try {
|
||||
session = token.getOpSession();
|
||||
p11.C_Logout(session.id());
|
||||
@@ -3855,7 +3833,7 @@
|
||||
/**
|
||||
* Connects this object to the specified PKCS#11 library. This method is for
|
||||
* internal use only.
|
||||
@@ -1625,7 +1677,7 @@ public class PKCS11 {
|
||||
@@ -1661,7 +1713,7 @@ public class PKCS11 {
|
||||
static class SynchronizedPKCS11 extends PKCS11 {
|
||||
|
||||
SynchronizedPKCS11(String pkcs11ModulePath, String functionListName)
|
||||
@@ -3864,7 +3842,7 @@
|
||||
super(pkcs11ModulePath, functionListName);
|
||||
}
|
||||
|
||||
@@ -1911,4 +1963,194 @@ static class SynchronizedPKCS11 extends PKCS11 {
|
||||
@@ -1947,4 +1999,194 @@ static class SynchronizedPKCS11 extends PKCS11 {
|
||||
super.C_GenerateRandom(hSession, randomData);
|
||||
}
|
||||
}
|
||||
@@ -4121,7 +4099,7 @@
|
||||
}
|
||||
--- a/src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_convert.c
|
||||
+++ b/src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_convert.c
|
||||
@@ -1515,6 +1515,10 @@ CK_VOID_PTR jMechParamToCKMechParamPtrSlow(JNIEnv *env, jobject jParam,
|
||||
@@ -1518,6 +1518,10 @@ CK_VOID_PTR jMechParamToCKMechParamPtrSlow(JNIEnv *env, jobject jParam,
|
||||
case CKM_PBE_SHA1_DES3_EDE_CBC:
|
||||
case CKM_PBE_SHA1_DES2_EDE_CBC:
|
||||
case CKM_PBA_SHA1_WITH_SHA1_HMAC:
|
||||
@@ -4132,7 +4110,7 @@
|
||||
ckpParamPtr = jPbeParamToCKPbeParamPtr(env, jParam, ckpLength);
|
||||
break;
|
||||
case CKM_PKCS5_PBKD2:
|
||||
@@ -1658,13 +1662,13 @@ jPbeParamToCKPbeParamPtr(JNIEnv *env, jobject jParam, CK_ULONG *pLength)
|
||||
@@ -1661,13 +1665,13 @@ jPbeParamToCKPbeParamPtr(JNIEnv *env, jobject jParam, CK_ULONG *pLength)
|
||||
// retrieve java values
|
||||
jPbeParamsClass = (*env)->FindClass(env, CLASS_PBE_PARAMS);
|
||||
if (jPbeParamsClass == NULL) { return NULL; }
|
||||
@@ -4148,7 +4126,7 @@
|
||||
if (fieldID == NULL) { return NULL; }
|
||||
jSalt = (*env)->GetObjectField(env, jParam, fieldID);
|
||||
fieldID = (*env)->GetFieldID(env, jPbeParamsClass, "ulIteration", "J");
|
||||
@@ -1680,15 +1684,15 @@ jPbeParamToCKPbeParamPtr(JNIEnv *env, jobject jParam, CK_ULONG *pLength)
|
||||
@@ -1683,15 +1687,15 @@ jPbeParamToCKPbeParamPtr(JNIEnv *env, jobject jParam, CK_ULONG *pLength)
|
||||
|
||||
// populate using java values
|
||||
ckParamPtr->ulIteration = jLongToCKULong(jIteration);
|
||||
@@ -4167,7 +4145,7 @@
|
||||
if ((*env)->ExceptionCheck(env)) {
|
||||
goto cleanup;
|
||||
}
|
||||
@@ -1767,31 +1771,59 @@ void copyBackPBEInitializationVector(JNIEnv *env, CK_MECHANISM *ckMechanism, job
|
||||
@@ -1770,31 +1774,59 @@ void copyBackPBEInitializationVector(JNIEnv *env, CK_MECHANISM *ckMechanism, job
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4236,7 +4214,7 @@
|
||||
fieldID = (*env)->GetFieldID(env, jPkcs5Pbkd2ParamsClass, "saltSource", "J");
|
||||
if (fieldID == NULL) { return NULL; }
|
||||
jSaltSource = (*env)->GetLongField(env, jParam, fieldID);
|
||||
@@ -1807,36 +1839,60 @@ jPkcs5Pbkd2ParamToCKPkcs5Pbkd2ParamPtr(JNIEnv *env, jobject jParam, CK_ULONG *pL
|
||||
@@ -1810,36 +1842,60 @@ jPkcs5Pbkd2ParamToCKPkcs5Pbkd2ParamPtr(JNIEnv *env, jobject jParam, CK_ULONG *pL
|
||||
fieldID = (*env)->GetFieldID(env, jPkcs5Pbkd2ParamsClass, "pPrfData", "[B");
|
||||
if (fieldID == NULL) { return NULL; }
|
||||
jPrfData = (*env)->GetObjectField(env, jParam, fieldID);
|
||||
@@ -4340,7 +4318,7 @@
|
||||
// PBE mechs, WTLS mechs, CMS mechs,
|
||||
// CKM_EXTRACT_KEY_FROM_KEY, CKM_OTP, CKM_KIP,
|
||||
// CKM_DSA_PARAMETER_GEN?, CKM_GOSTR3410_*
|
||||
@@ -517,12 +533,11 @@ void jBooleanArrayToCKBBoolArray(JNIEnv *env, const jbooleanArray jArray, CK_BBO
|
||||
@@ -528,12 +544,11 @@ void jBooleanArrayToCKBBoolArray(JNIEnv *env, const jbooleanArray jArray, CK_BBO
|
||||
jboolean* jpTemp;
|
||||
CK_ULONG i;
|
||||
|
||||
@@ -4355,7 +4333,7 @@
|
||||
jpTemp = (jboolean*) calloc(*ckpLength, sizeof(jboolean));
|
||||
if (jpTemp == NULL) {
|
||||
throwOutOfMemoryError(env, 0);
|
||||
@@ -559,12 +574,11 @@ void jByteArrayToCKByteArray(JNIEnv *env, const jbyteArray jArray, CK_BYTE_PTR *
|
||||
@@ -570,12 +585,11 @@ void jByteArrayToCKByteArray(JNIEnv *env, const jbyteArray jArray, CK_BYTE_PTR *
|
||||
jbyte* jpTemp;
|
||||
CK_ULONG i;
|
||||
|
||||
@@ -4370,7 +4348,7 @@
|
||||
jpTemp = (jbyte*) calloc(*ckpLength, sizeof(jbyte));
|
||||
if (jpTemp == NULL) {
|
||||
throwOutOfMemoryError(env, 0);
|
||||
@@ -606,12 +620,11 @@ void jLongArrayToCKULongArray(JNIEnv *env, const jlongArray jArray, CK_ULONG_PTR
|
||||
@@ -617,12 +631,11 @@ void jLongArrayToCKULongArray(JNIEnv *env, const jlongArray jArray, CK_ULONG_PTR
|
||||
jlong* jTemp;
|
||||
CK_ULONG i;
|
||||
|
||||
@@ -4385,7 +4363,7 @@
|
||||
jTemp = (jlong*) calloc(*ckpLength, sizeof(jlong));
|
||||
if (jTemp == NULL) {
|
||||
throwOutOfMemoryError(env, 0);
|
||||
@@ -648,12 +661,11 @@ void jCharArrayToCKCharArray(JNIEnv *env, const jcharArray jArray, CK_CHAR_PTR *
|
||||
@@ -659,12 +672,11 @@ void jCharArrayToCKCharArray(JNIEnv *env, const jcharArray jArray, CK_CHAR_PTR *
|
||||
jchar* jpTemp;
|
||||
CK_ULONG i;
|
||||
|
||||
@@ -4400,7 +4378,7 @@
|
||||
jpTemp = (jchar*) calloc(*ckpLength, sizeof(jchar));
|
||||
if (jpTemp == NULL) {
|
||||
throwOutOfMemoryError(env, 0);
|
||||
@@ -690,12 +702,11 @@ void jCharArrayToCKUTF8CharArray(JNIEnv *env, const jcharArray jArray, CK_UTF8CH
|
||||
@@ -701,12 +713,11 @@ void jCharArrayToCKUTF8CharArray(JNIEnv *env, const jcharArray jArray, CK_UTF8CH
|
||||
jchar* jTemp;
|
||||
CK_ULONG i;
|
||||
|
||||
@@ -5854,6 +5832,3 @@
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
--
|
||||
2.45.2
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package java-17-openjdk
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -33,8 +33,8 @@
|
||||
# Standard JPackage naming and versioning defines.
|
||||
%global featurever 17
|
||||
%global interimver 0
|
||||
%global updatever 12
|
||||
%global buildver 7
|
||||
%global updatever 16
|
||||
%global buildver 8
|
||||
%global openjdk_repo jdk17u
|
||||
%global openjdk_tag jdk-%{featurever}.%{interimver}.%{updatever}%{?patchver:.%{patchver}}+%{buildver}
|
||||
%global openjdk_dir %{openjdk_repo}-jdk-%{featurever}.%{interimver}.%{updatever}%{?patchver:.%{patchver}}-%{buildver}
|
||||
@@ -170,12 +170,12 @@ Patch17: reproducible-jlink.patch
|
||||
Patch20: loadAssistiveTechnologies.patch
|
||||
#
|
||||
Patch21: reproducible-javadoc-timestamp.patch
|
||||
Patch22: reproducible-directory-mtime.patch
|
||||
#
|
||||
# OpenJDK specific patches
|
||||
#
|
||||
Patch200: ppc_stack_overflow_fix.patch
|
||||
#
|
||||
Patch300: JDK-8282944.patch
|
||||
Patch301: JDK-8303509.patch
|
||||
Patch302: disable-doclint-by-default.patch
|
||||
Patch303: unsigned-sni-server-name.patch
|
||||
@@ -416,10 +416,10 @@ rm -rvf src/java.desktop/share/native/liblcms/lcms2*
|
||||
%patch -P 20 -p1
|
||||
|
||||
%patch -P 21 -p1
|
||||
%patch -P 22 -p1
|
||||
|
||||
%patch -P 200 -p1
|
||||
|
||||
%patch -P 300 -p1
|
||||
%patch -P 301 -p1
|
||||
%patch -P 302 -p1
|
||||
%patch -P 303 -p1
|
||||
|
BIN
jdk-17.0.12+7.tar.gz
(Stored with Git LFS)
BIN
jdk-17.0.12+7.tar.gz
(Stored with Git LFS)
Binary file not shown.
BIN
jdk-17.0.16+8.tar.gz
(Stored with Git LFS)
Normal file
BIN
jdk-17.0.16+8.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
15
reproducible-directory-mtime.patch
Normal file
15
reproducible-directory-mtime.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
--- a/src/java.base/share/classes/java/io/File.java
|
||||
+++ b/src/java.base/share/classes/java/io/File.java
|
||||
@@ -1376,7 +1376,11 @@ public class File
|
||||
if (isInvalid()) {
|
||||
return false;
|
||||
}
|
||||
- return fs.createDirectory(this);
|
||||
+ boolean result = fs.createDirectory(this);
|
||||
+ if ( result && System.getenv("SOURCE_DATE_EPOCH") != null ) {
|
||||
+ fs.setLastModifiedTime(this, 1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH")));
|
||||
+ }
|
||||
+ return result;
|
||||
}
|
||||
|
||||
/**
|
Reference in New Issue
Block a user