5d847512a3
- updated to aarch64-shenandoah-jdk8u151-b12 (from aarch64-port/jdk8u-shenandoah) of hotspot - used aarch64-port-jdk8u-aarch64-jdk8u151-b12.tar.xz as new sources - used aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u151-b12.tar.xz as new sources for hotspot - tapset updated to 3.6pre02 - policies adapted to new limited/unlimited schmea - above acomapnied by c-j-c 3.3 - alligned patches and added PPC ones (thanx to gnu_andrew) - added patch209: 8035496-hotspot.patch - added patch210: suse_linuxfilestore.patc
68 lines
2.0 KiB
Diff
68 lines
2.0 KiB
Diff
# HG changeset patch
|
|
# User andrew
|
|
# Date 1508194072 -3600
|
|
# Mon Oct 16 23:47:52 2017 +0100
|
|
# Node ID 5dcb55da00c1531264934559c9f10c2e0ae46420
|
|
# Parent bf62c56e3604fee0018b19f65fd56c76dc156630
|
|
PR3479, RH1486025: ECC and NSS JVM crash
|
|
Summary: SunEC provider can have multiple instances, leading to premature NSS shutdown
|
|
Contributed-by: Martin Balao <mbalao@redhat.com>
|
|
|
|
diff --git a/make/mapfiles/libsunec/mapfile-vers b/make/mapfiles/libsunec/mapfile-vers
|
|
--- openjdk/jdk/make/mapfiles/libsunec/mapfile-vers
|
|
+++ openjdk/jdk/make/mapfiles/libsunec/mapfile-vers
|
|
@@ -32,7 +32,6 @@
|
|
Java_sun_security_ec_ECDSASignature_verifySignedDigest;
|
|
Java_sun_security_ec_ECDHKeyAgreement_deriveKey;
|
|
Java_sun_security_ec_SunEC_initialize;
|
|
- Java_sun_security_ec_SunEC_cleanup;
|
|
local:
|
|
*;
|
|
};
|
|
diff --git a/src/share/classes/sun/security/ec/SunEC.java b/src/share/classes/sun/security/ec/SunEC.java
|
|
--- openjdk/jdk/src/share/classes/sun/security/ec/SunEC.java
|
|
+++ openjdk/jdk/src/share/classes/sun/security/ec/SunEC.java
|
|
@@ -83,21 +83,8 @@
|
|
}
|
|
|
|
/**
|
|
- * Cleanup native resources during finalisation.
|
|
- */
|
|
- @Override
|
|
- protected void finalize() {
|
|
- cleanup();
|
|
- }
|
|
-
|
|
- /**
|
|
* Initialize the native code.
|
|
*/
|
|
private static native void initialize();
|
|
|
|
- /**
|
|
- * Cleanup in the native layer.
|
|
- */
|
|
- private static native void cleanup();
|
|
-
|
|
}
|
|
diff --git a/src/share/native/sun/security/ec/ECC_JNI.cpp b/src/share/native/sun/security/ec/ECC_JNI.cpp
|
|
--- openjdk/jdk/src/share/native/sun/security/ec/ECC_JNI.cpp
|
|
+++ openjdk/jdk/src/share/native/sun/security/ec/ECC_JNI.cpp
|
|
@@ -525,14 +525,12 @@
|
|
}
|
|
|
|
JNIEXPORT void
|
|
-JNICALL Java_sun_security_ec_SunEC_cleanup
|
|
- (JNIEnv *env, jclass UNUSED(clazz))
|
|
+JNICALL JNI_OnUnload
|
|
+ (JavaVM *vm, void *reserved)
|
|
{
|
|
#ifdef SYSTEM_NSS
|
|
RNG_RNGShutdown();
|
|
- if (SECOID_Shutdown() != SECSuccess) {
|
|
- ThrowException(env, INTERNAL_ERROR);
|
|
- }
|
|
+ SECOID_Shutdown();
|
|
#endif
|
|
}
|
|
|