diff options
author | Koushik Dutta <koushd@gmail.com> | 2014-07-28 22:39:08 -0700 |
---|---|---|
committer | Koushik Dutta <koushd@gmail.com> | 2014-07-28 22:39:08 -0700 |
commit | cfaf22a7a260b60f6814545cede08237e60206c1 (patch) | |
tree | 7e1a5f6c10dc0310cf008a8b33a7c1189a34d3fe | |
parent | 06987e72af6bad8d4c88a8b587218375f1955810 (diff) | |
download | AndroidAsync-cfaf22a7a260b60f6814545cede08237e60206c1.tar.gz AndroidAsync-cfaf22a7a260b60f6814545cede08237e60206c1.tar.bz2 AndroidAsync-cfaf22a7a260b60f6814545cede08237e60206c1.zip |
remove conscrypt dependency. not necessary with alpn not
exhibiting the same handshake bug as npn.
4 files changed, 23 insertions, 19 deletions
diff --git a/AndroidAsync/AndroidAsync-AndroidAsync.iml b/AndroidAsync/AndroidAsync-AndroidAsync.iml index f88736b..1cdbd09 100644 --- a/AndroidAsync/AndroidAsync-AndroidAsync.iml +++ b/AndroidAsync/AndroidAsync-AndroidAsync.iml @@ -60,12 +60,6 @@ <excludeFolder url="file://$MODULE_DIR$/build/outputs" /> <excludeFolder url="file://$MODULE_DIR$/build/tmp" /> </content> - <content url="file://$MODULE_DIR$/../compat"> - <sourceFolder url="file://$MODULE_DIR$/../compat" isTestSource="false" /> - </content> - <content url="file://$MODULE_DIR$/../conscrypt"> - <sourceFolder url="file://$MODULE_DIR$/../conscrypt" isTestSource="false" /> - </content> <orderEntry type="jdk" jdkName="Android API 19 Platform" jdkType="Android SDK" /> <orderEntry type="sourceFolder" forTests="false" /> </component> diff --git a/AndroidAsync/build.gradle b/AndroidAsync/build.gradle index 77970b0..05d82ca 100644 --- a/AndroidAsync/build.gradle +++ b/AndroidAsync/build.gradle @@ -16,8 +16,8 @@ android { jniLibs.srcDirs = ['libs/'] java.srcDirs=['src/' - , '../conscrypt/' - , '../compat/' +// , '../conscrypt/' +// , '../compat/' ] } androidTest.java.srcDirs=['test/src/'] diff --git a/AndroidAsync/src/com/koushikdutta/async/http/spdy/SpdyMiddleware.java b/AndroidAsync/src/com/koushikdutta/async/http/spdy/SpdyMiddleware.java index b5a608c..c4bbe52 100644 --- a/AndroidAsync/src/com/koushikdutta/async/http/spdy/SpdyMiddleware.java +++ b/AndroidAsync/src/com/koushikdutta/async/http/spdy/SpdyMiddleware.java @@ -1,6 +1,7 @@ package com.koushikdutta.async.http.spdy; import android.net.Uri; +import android.text.TextUtils; import com.koushikdutta.async.AsyncSSLSocket; import com.koushikdutta.async.AsyncSSLSocketWrapper; @@ -141,9 +142,13 @@ public class SpdyMiddleware extends AsyncSSLSocketMiddleware { } private static String requestPath(Uri uri) { - String pathAndQuery = uri.getPath(); - if (pathAndQuery == null) return "/"; - if (!pathAndQuery.startsWith("/")) return "/" + pathAndQuery; + String pathAndQuery = uri.getEncodedPath(); + if (pathAndQuery == null) + pathAndQuery = "/"; + else if (!pathAndQuery.startsWith("/")) + pathAndQuery = "/" + pathAndQuery; + if (!TextUtils.isEmpty(uri.getEncodedQuery())) + pathAndQuery += "?" + uri.getEncodedQuery(); return pathAndQuery; } diff --git a/AndroidAsync/test/src/com/koushikdutta/async/test/ConscryptTests.java b/AndroidAsync/test/src/com/koushikdutta/async/test/ConscryptTests.java index 2bcfd5a..ac18ead 100644 --- a/AndroidAsync/test/src/com/koushikdutta/async/test/ConscryptTests.java +++ b/AndroidAsync/test/src/com/koushikdutta/async/test/ConscryptTests.java @@ -17,10 +17,8 @@ package com.koushikdutta.async.test; -import junit.framework.TestCase; - -import org.conscrypt.OpenSSLEngineImpl; -import org.conscrypt.OpenSSLProvider; +import android.content.Context; +import android.test.AndroidTestCase; import java.io.InputStream; import java.io.OutputStream; @@ -30,7 +28,6 @@ import java.net.InetSocketAddress; import java.net.Socket; import java.nio.ByteBuffer; import java.nio.charset.Charset; -import java.security.Security; import javax.net.ssl.SSLContext; import javax.net.ssl.SSLEngine; @@ -39,7 +36,7 @@ import javax.net.ssl.SSLEngineResult; /** * Created by koush on 7/15/14. */ -public class ConscryptTests extends TestCase { +public class ConscryptTests extends AndroidTestCase { boolean initialized; Field peerHost; Field peerPort; @@ -104,11 +101,19 @@ public class ConscryptTests extends TestCase { } public void testConscryptSSLEngineNPNHandshakeBug() throws Exception { - Security.insertProviderAt(new OpenSSLProvider("MyNameBlah"), 1); +// Security.insertProviderAt(new OpenSSLProvider("MyNameBlah"), 1); + + Context gms = getContext().createPackageContext("com.google.android.gms", Context.CONTEXT_INCLUDE_CODE | Context.CONTEXT_IGNORE_SECURITY); + gms + .getClassLoader() + .loadClass("com.google.android.gms.common.security.ProviderInstallerImpl") + .getMethod("insertProvider", Context.class) + .invoke(null, getContext()); + SSLContext ctx = SSLContext.getInstance("TLS"); ctx.init(null, null, null); - OpenSSLEngineImpl engine = (OpenSSLEngineImpl)ctx.createSSLEngine(); + SSLEngine engine = ctx.createSSLEngine(); configure(engine, "www.google.com", 443); engine.setUseClientMode(true); engine.beginHandshake(); |