Track changes to JSSE
Bug: 8769295
(cherry picked from commit 0f9937b494fc6dd31fd04956963a3e258aece11b)
Change-Id: I8c8f1572c79adc48b0dbd44e5c889c4432dce56a
diff --git a/bcprov/src/main/java/org/bouncycastle/crypto/digests/AndroidDigestFactory.java b/bcprov/src/main/java/org/bouncycastle/crypto/digests/AndroidDigestFactory.java
index 3dc7059..b7bac28 100644
--- a/bcprov/src/main/java/org/bouncycastle/crypto/digests/AndroidDigestFactory.java
+++ b/bcprov/src/main/java/org/bouncycastle/crypto/digests/AndroidDigestFactory.java
@@ -34,15 +34,18 @@
try {
factoryImplementationClass = Class.forName(OpenSSLFactoryClassName);
// Double check for NativeCrypto in case we are running on RI for testing
- Class.forName("org.apache.harmony.xnet.provider.jsse.NativeCrypto");
+ Class.forName("com.android.org.conscrypt.NativeCrypto");
} catch (ClassNotFoundException e1) {
try {
factoryImplementationClass = Class.forName(BouncyCastleFactoryClassName);
} catch (ClassNotFoundException e2) {
- throw new AssertionError("Failed to load AndroidDigestFactoryInterface "
+ AssertionError e = new AssertionError("Failed to load "
+ + "AndroidDigestFactoryInterface "
+ "implementation. Looked for "
+ OpenSSLFactoryClassName + " and "
+ BouncyCastleFactoryClassName);
+ e.initCause(e1);
+ throw e;
}
}
if (!AndroidDigestFactoryInterface.class.isAssignableFrom(factoryImplementationClass)) {
diff --git a/patches/bcprov.patch b/patches/bcprov.patch
index 7ea1ec9..e6e7f40 100644
--- a/patches/bcprov.patch
+++ b/patches/bcprov.patch
@@ -313,8 +313,8 @@
}
diff -Naur bcprov-jdk15on-149.orig/org/bouncycastle/crypto/digests/AndroidDigestFactory.java bcprov-jdk15on-149/org/bouncycastle/crypto/digests/AndroidDigestFactory.java
--- bcprov-jdk15on-149.orig/org/bouncycastle/crypto/digests/AndroidDigestFactory.java 1970-01-01 00:00:00.000000000 +0000
-+++ bcprov-jdk15on-149/org/bouncycastle/crypto/digests/AndroidDigestFactory.java 2012-09-17 23:04:47.000000000 +0000
-@@ -0,0 +1,80 @@
++++ bcprov-jdk15on-149/org/bouncycastle/crypto/digests/AndroidDigestFactory.java 2013-05-01 01:48:41.000000000 +0000
+@@ -0,0 +1,83 @@
+/*
+ * Copyright (C) 2012 The Android Open Source Project
+ *
@@ -351,15 +351,18 @@
+ try {
+ factoryImplementationClass = Class.forName(OpenSSLFactoryClassName);
+ // Double check for NativeCrypto in case we are running on RI for testing
-+ Class.forName("org.apache.harmony.xnet.provider.jsse.NativeCrypto");
++ Class.forName("com.android.org.conscrypt.NativeCrypto");
+ } catch (ClassNotFoundException e1) {
+ try {
+ factoryImplementationClass = Class.forName(BouncyCastleFactoryClassName);
+ } catch (ClassNotFoundException e2) {
-+ throw new AssertionError("Failed to load AndroidDigestFactoryInterface "
++ AssertionError e = new AssertionError("Failed to load "
++ + "AndroidDigestFactoryInterface "
+ + "implementation. Looked for "
+ + OpenSSLFactoryClassName + " and "
+ + BouncyCastleFactoryClassName);
++ e.initCause(e1);
++ throw e;
+ }
+ }
+ if (!AndroidDigestFactoryInterface.class.isAssignableFrom(factoryImplementationClass)) {