[packages/icedtea7] Version: 2.5.4
jajcus
jajcus at pld-linux.org
Mon Jan 26 13:11:57 CET 2015
commit c9daa15e9d8c92415b68f6f14bac365bb0294536
Author: Jacek Konieczny <j.konieczny at eggsoft.pl>
Date: Mon Jan 26 13:11:33 2015 +0100
Version: 2.5.4
icedtea7-bug-2123.patch, icedtea7-bug-2135.patch applied upstream.
icedtea7-bug-2123.patch | 180 ------------------------------------------
icedtea7-bug-2135.patch | 202 ------------------------------------------------
icedtea7.spec | 32 ++++----
3 files changed, 14 insertions(+), 400 deletions(-)
---
diff --git a/icedtea7.spec b/icedtea7.spec
index 8063a7e..db1040c 100644
--- a/icedtea7.spec
+++ b/icedtea7.spec
@@ -31,36 +31,34 @@
Summary: OpenJDK and GNU Classpath code
Summary(pl.UTF-8): Kod OpenJDK i GNU Classpath
Name: icedtea7
-Version: 2.5.3
-Release: 9
+Version: 2.5.4
+Release: 0.1
License: GPL v2
Group: Development/Languages/Java
Source0: http://icedtea.wildebeest.org/download/source/icedtea-%{version}.tar.gz
-# Source0-md5: dfd8f5f356a5fc05e63bb38e7c4c030a
+# Source0-md5: 646064d7a8d57c2cae0ef35a05de57c8
Source1: http://icedtea.wildebeest.org/download/drops/icedtea7/%{version}/openjdk.tar.bz2
-# Source1-md5: 730679eec8f645c05c0c518ae73a6f6d
+# Source1-md5: 90c83c73214a083b24adfee9a1be56a4
Source2: http://icedtea.wildebeest.org/download/drops/icedtea7/%{version}/corba.tar.bz2
-# Source2-md5: b7dbab5f1ca314d613a9e7cf0a5939e1
+# Source2-md5: 06235b1e4b024402d6ec5cf0672cc353
Source3: http://icedtea.wildebeest.org/download/drops/icedtea7/%{version}/jaxp.tar.bz2
-# Source3-md5: 40e6d2e0e6b35a671bf1b0908c63ef9d
+# Source3-md5: d3ffad8f8b415f002fd0f308279accbc
Source4: http://icedtea.wildebeest.org/download/drops/icedtea7/%{version}/jaxws.tar.bz2
-# Source4-md5: 1615b1c82ac6a189d6805eedb8692402
+# Source4-md5: 03bb3aa6f03765816adf3d312feed05e
Source5: http://icedtea.wildebeest.org/download/drops/icedtea7/%{version}/jdk.tar.bz2
-# Source5-md5: 7cc129b8ff8f195583cf40620588e013
+# Source5-md5: 4e848b426d98b60523f71e9f35edfff8
Source6: http://icedtea.wildebeest.org/download/drops/icedtea7/%{version}/langtools.tar.bz2
-# Source6-md5: fd28b781a95a609cd966c7048486e4ca
+# Source6-md5: ffc690fecd801662d4b4f8874aecbc68
Source7: http://icedtea.wildebeest.org/download/drops/icedtea7/%{version}/hotspot.tar.bz2
-# Source7-md5: e58128728b81b99bf94d9cac39015975
+# Source7-md5: c3bbd2ff7bf67eae93f9c55ad3ff3b91
Source10: make-cacerts.sh
# 0-99 patches for the IcedTea files
Patch0: %{name}-x32-ac.patch
# 100-... patches applied to the extracted sources
Patch100: %{name}-libpath.patch
Patch101: %{name}-giflib.patch
-Patch102: icedtea7-bug-2123.patch
-Patch103: icedtea7-bug-2135.patch
-Patch104: %{name}-x32.patch
-Patch105: currency-change-fix.patch
+Patch102: %{name}-x32.patch
+Patch103: currency-change-fix.patch
URL: http://icedtea.classpath.org/wiki/Main_Page
BuildRequires: alsa-lib-devel
BuildRequires: ant
@@ -422,12 +420,10 @@ Przykłady dla OpenJDK.
install -d pld-patches
cp -p %{PATCH100} pld-patches
cp -p %{PATCH101} pld-patches
-cp -p %{PATCH102} pld-patches
-cp -p %{PATCH103} pld-patches
%ifarch x32
-cp -p %{PATCH104} pld-patches
+cp -p %{PATCH102} pld-patches
%endif
-cp -p %{PATCH105} pld-patches
+cp -p %{PATCH103} pld-patches
# let the build system extract the sources where it wants them
install -d drops
diff --git a/icedtea7-bug-2123.patch b/icedtea7-bug-2123.patch
deleted file mode 100644
index 502ffdc..0000000
--- a/icedtea7-bug-2123.patch
+++ /dev/null
@@ -1,180 +0,0 @@
-
-# HG changeset patch
-# User andrew
-# Date 1417748009 0
-# Node ID 9665966de2e7d56cc437c9a8965ef43df2fb6168
-# Parent 899ad74ad3039f31f8d21087d00e3b33b91443a5
-PR2123: SunEC provider crashes when built using system NSS
-
-diff -r 899ad74ad303 -r 9665966de2e7 src/share/native/sun/security/ec/ECC_JNI.cpp
---- openjdk/jdk/src/share/native/sun/security/ec/ECC_JNI.cpp Thu Dec 04 20:38:07 2014 +0000
-+++ openjdk/jdk/src/share/native/sun/security/ec/ECC_JNI.cpp Fri Dec 05 02:53:29 2014 +0000
-@@ -32,6 +32,13 @@
- #define INVALID_PARAMETER_EXCEPTION \
- "java/security/InvalidParameterException"
- #define KEY_EXCEPTION "java/security/KeyException"
-+#define INTERNAL_ERROR "java/lang/InternalError"
-+
-+#ifdef SYSTEM_NSS
-+#define SYSTEM_UNUSED(x) UNUSED(x)
-+#else
-+#define SYSTEM_UNUSED(x) x
-+#endif
-
- extern "C" {
-
-@@ -47,8 +54,13 @@
- /*
- * Deep free of the ECParams struct
- */
--void FreeECParams(ECParams *ecparams, jboolean freeStruct)
-+void FreeECParams(ECParams *ecparams, jboolean SYSTEM_UNUSED(freeStruct))
- {
-+#ifdef SYSTEM_NSS
-+ // Needs to be freed using the matching method to the one
-+ // that allocated it. PR_TRUE means the memory is zeroed.
-+ PORT_FreeArena(ecparams->arena, PR_TRUE);
-+#else
- // Use B_FALSE to free the SECItem->data element, but not the SECItem itself
- // Use B_TRUE to free both
-
-@@ -62,7 +74,7 @@
- SECITEM_FreeItem(&ecparams->curveOID, B_FALSE);
- if (freeStruct)
- free(ecparams);
--
-+#endif
- }
-
- jbyteArray getEncodedBytes(JNIEnv *env, SECItem *hSECItem)
-@@ -104,6 +116,13 @@
- params_item.data =
- (unsigned char *) env->GetByteArrayElements(encodedParams, 0);
-
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Init() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ goto cleanup;
-+ }
-+#endif
-+
- // Fill a new ECParams using the supplied OID
- if (EC_DecodeParams(¶ms_item, &ecparams, 0) != SECSuccess) {
- /* bad curve OID */
-@@ -159,6 +178,11 @@
- if (params_item.data) {
- env->ReleaseByteArrayElements(encodedParams,
- (jbyte *) params_item.data, JNI_ABORT);
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Shutdown() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ }
-+#endif
- }
-
- if (ecparams) {
-@@ -167,10 +191,15 @@
-
- if (privKey) {
- FreeECParams(&privKey->ecParams, false);
-+#ifndef SYSTEM_NSS
-+ // The entire ECPrivateKey is allocated in the arena
-+ // when using system NSS, so only the in-tree version
-+ // needs to clear these manually.
- SECITEM_FreeItem(&privKey->version, B_FALSE);
- SECITEM_FreeItem(&privKey->privateValue, B_FALSE);
- SECITEM_FreeItem(&privKey->publicValue, B_FALSE);
- free(privKey);
-+#endif
- }
-
- if (pSeedBuffer) {
-@@ -217,6 +246,13 @@
- params_item.data =
- (unsigned char *) env->GetByteArrayElements(encodedParams, 0);
-
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Init() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ goto cleanup;
-+ }
-+#endif
-+
- // Fill a new ECParams using the supplied OID
- if (EC_DecodeParams(¶ms_item, &ecparams, 0) != SECSuccess) {
- /* bad curve OID */
-@@ -258,6 +294,11 @@
- if (params_item.data) {
- env->ReleaseByteArrayElements(encodedParams,
- (jbyte *) params_item.data, JNI_ABORT);
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Shutdown() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ }
-+#endif
- }
-
- if (privKey.privateValue.data) {
-@@ -326,6 +367,13 @@
- params_item.data =
- (unsigned char *) env->GetByteArrayElements(encodedParams, 0);
-
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Init() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ goto cleanup;
-+ }
-+#endif
-+
- // Fill a new ECParams using the supplied OID
- if (EC_DecodeParams(¶ms_item, &ecparams, 0) != SECSuccess) {
- /* bad curve OID */
-@@ -346,9 +394,15 @@
-
- cleanup:
- {
-- if (params_item.data)
-+ if (params_item.data) {
- env->ReleaseByteArrayElements(encodedParams,
- (jbyte *) params_item.data, JNI_ABORT);
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Shutdown() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ }
-+#endif
-+ }
-
- if (pubKey.publicValue.data)
- env->ReleaseByteArrayElements(publicKey,
-@@ -397,6 +451,13 @@
- params_item.data =
- (unsigned char *) env->GetByteArrayElements(encodedParams, 0);
-
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Init() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ goto cleanup;
-+ }
-+#endif
-+
- // Fill a new ECParams using the supplied OID
- if (EC_DecodeParams(¶ms_item, &ecparams, 0) != SECSuccess) {
- /* bad curve OID */
-@@ -435,9 +496,15 @@
- env->ReleaseByteArrayElements(publicKey,
- (jbyte *) publicValue_item.data, JNI_ABORT);
-
-- if (params_item.data)
-+ if (params_item.data) {
- env->ReleaseByteArrayElements(encodedParams,
- (jbyte *) params_item.data, JNI_ABORT);
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Shutdown() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ }
-+#endif
-+ }
-
- if (ecparams)
- FreeECParams(ecparams, true);
-
diff --git a/icedtea7-bug-2135.patch b/icedtea7-bug-2135.patch
deleted file mode 100644
index f5940cf..0000000
--- a/icedtea7-bug-2135.patch
+++ /dev/null
@@ -1,202 +0,0 @@
-
-# HG changeset patch
-# User andrew
-# Date 1418148279 0
-# Node ID 610eb1b5fd0beb4c4cf8918f418eeddf9ff58121
-# Parent 9ed0bdd5de2a5ebfa5fedb9442ee630b8d63ef0e
-PR2135: Race condition in SunEC provider with system NSS
-
-diff -r 9ed0bdd5de2a -r 610eb1b5fd0b make/sun/security/ec/Makefile
---- openjdk/jdk/make/sun/security/ec/Makefile Fri Dec 05 09:52:04 2014 +0000
-+++ openjdk/jdk/make/sun/security/ec/Makefile Tue Dec 09 18:04:39 2014 +0000
-@@ -158,7 +158,8 @@
- FILES_export = \
- $(PKGDIR)/ECDHKeyAgreement.java \
- $(PKGDIR)/ECDSASignature.java \
-- $(PKGDIR)/ECKeyPairGenerator.java
-+ $(PKGDIR)/ECKeyPairGenerator.java \
-+ $(PKGDIR)/SunEC.java
-
- JAVAHFLAGS = -bootclasspath \
- "$(CLASSDESTDIR)$(CLASSPATH_SEPARATOR)$(CLASSBINDIR)$(JCE_PATH)"
-diff -r 9ed0bdd5de2a -r 610eb1b5fd0b make/sun/security/ec/mapfile-vers
---- openjdk/jdk/make/sun/security/ec/mapfile-vers Fri Dec 05 09:52:04 2014 +0000
-+++ openjdk/jdk/make/sun/security/ec/mapfile-vers Tue Dec 09 18:04:39 2014 +0000
-@@ -31,6 +31,8 @@
- Java_sun_security_ec_ECDSASignature_signDigest;
- 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 -r 9ed0bdd5de2a -r 610eb1b5fd0b src/share/classes/sun/security/ec/SunEC.java
---- openjdk/jdk/src/share/classes/sun/security/ec/SunEC.java Fri Dec 05 09:52:04 2014 +0000
-+++ openjdk/jdk/src/share/classes/sun/security/ec/SunEC.java Tue Dec 09 18:04:39 2014 +0000
-@@ -58,6 +58,7 @@
- AccessController.doPrivileged(new PrivilegedAction<Void>() {
- public Void run() {
- System.loadLibrary("sunec"); // check for native library
-+ initialize();
- return null;
- }
- });
-@@ -81,4 +82,22 @@
- }
- }
-
-+ /**
-+ * 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 -r 9ed0bdd5de2a -r 610eb1b5fd0b src/share/native/sun/security/ec/ECC_JNI.cpp
---- openjdk/jdk/src/share/native/sun/security/ec/ECC_JNI.cpp Fri Dec 05 09:52:04 2014 +0000
-+++ openjdk/jdk/src/share/native/sun/security/ec/ECC_JNI.cpp Tue Dec 09 18:04:39 2014 +0000
-@@ -116,13 +116,6 @@
- params_item.data =
- (unsigned char *) env->GetByteArrayElements(encodedParams, 0);
-
--#ifdef SYSTEM_NSS
-- if (SECOID_Init() != SECSuccess) {
-- ThrowException(env, INTERNAL_ERROR);
-- goto cleanup;
-- }
--#endif
--
- // Fill a new ECParams using the supplied OID
- if (EC_DecodeParams(¶ms_item, &ecparams, 0) != SECSuccess) {
- /* bad curve OID */
-@@ -178,11 +171,6 @@
- if (params_item.data) {
- env->ReleaseByteArrayElements(encodedParams,
- (jbyte *) params_item.data, JNI_ABORT);
--#ifdef SYSTEM_NSS
-- if (SECOID_Shutdown() != SECSuccess) {
-- ThrowException(env, INTERNAL_ERROR);
-- }
--#endif
- }
-
- if (ecparams) {
-@@ -246,13 +234,6 @@
- params_item.data =
- (unsigned char *) env->GetByteArrayElements(encodedParams, 0);
-
--#ifdef SYSTEM_NSS
-- if (SECOID_Init() != SECSuccess) {
-- ThrowException(env, INTERNAL_ERROR);
-- goto cleanup;
-- }
--#endif
--
- // Fill a new ECParams using the supplied OID
- if (EC_DecodeParams(¶ms_item, &ecparams, 0) != SECSuccess) {
- /* bad curve OID */
-@@ -294,11 +275,6 @@
- if (params_item.data) {
- env->ReleaseByteArrayElements(encodedParams,
- (jbyte *) params_item.data, JNI_ABORT);
--#ifdef SYSTEM_NSS
-- if (SECOID_Shutdown() != SECSuccess) {
-- ThrowException(env, INTERNAL_ERROR);
-- }
--#endif
- }
-
- if (privKey.privateValue.data) {
-@@ -367,13 +343,6 @@
- params_item.data =
- (unsigned char *) env->GetByteArrayElements(encodedParams, 0);
-
--#ifdef SYSTEM_NSS
-- if (SECOID_Init() != SECSuccess) {
-- ThrowException(env, INTERNAL_ERROR);
-- goto cleanup;
-- }
--#endif
--
- // Fill a new ECParams using the supplied OID
- if (EC_DecodeParams(¶ms_item, &ecparams, 0) != SECSuccess) {
- /* bad curve OID */
-@@ -397,11 +366,6 @@
- if (params_item.data) {
- env->ReleaseByteArrayElements(encodedParams,
- (jbyte *) params_item.data, JNI_ABORT);
--#ifdef SYSTEM_NSS
-- if (SECOID_Shutdown() != SECSuccess) {
-- ThrowException(env, INTERNAL_ERROR);
-- }
--#endif
- }
-
- if (pubKey.publicValue.data)
-@@ -451,13 +415,6 @@
- params_item.data =
- (unsigned char *) env->GetByteArrayElements(encodedParams, 0);
-
--#ifdef SYSTEM_NSS
-- if (SECOID_Init() != SECSuccess) {
-- ThrowException(env, INTERNAL_ERROR);
-- goto cleanup;
-- }
--#endif
--
- // Fill a new ECParams using the supplied OID
- if (EC_DecodeParams(¶ms_item, &ecparams, 0) != SECSuccess) {
- /* bad curve OID */
-@@ -499,11 +456,6 @@
- if (params_item.data) {
- env->ReleaseByteArrayElements(encodedParams,
- (jbyte *) params_item.data, JNI_ABORT);
--#ifdef SYSTEM_NSS
-- if (SECOID_Shutdown() != SECSuccess) {
-- ThrowException(env, INTERNAL_ERROR);
-- }
--#endif
- }
-
- if (ecparams)
-@@ -513,4 +465,26 @@
- return jSecret;
- }
-
-+JNIEXPORT void
-+JNICALL Java_sun_security_ec_SunEC_initialize
-+ (JNIEnv *env, jclass UNUSED(clazz))
-+{
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Init() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ }
-+#endif
-+}
-+
-+JNIEXPORT void
-+JNICALL Java_sun_security_ec_SunEC_cleanup
-+ (JNIEnv *env, jclass UNUSED(clazz))
-+{
-+#ifdef SYSTEM_NSS
-+ if (SECOID_Shutdown() != SECSuccess) {
-+ ThrowException(env, INTERNAL_ERROR);
-+ }
-+#endif
-+}
-+
- } /* extern "C" */
-
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/icedtea7.git/commitdiff/c9daa15e9d8c92415b68f6f14bac365bb0294536
More information about the pld-cvs-commit
mailing list