You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2014/03/06 14:53:36 UTC
svn commit: r1574880 - in
/httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http:
conn/ssl/SSLConnectionSocketFactory.java impl/client/HttpClientBuilder.java
Author: olegk
Date: Thu Mar 6 13:53:36 2014
New Revision: 1574880
URL: http://svn.apache.org/r1574880
Log:
Use Android SSLCertificateSocketFactory by default
Modified:
httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/conn/ssl/SSLConnectionSocketFactory.java
httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/impl/client/HttpClientBuilder.java
Modified: httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/conn/ssl/SSLConnectionSocketFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/conn/ssl/SSLConnectionSocketFactory.java?rev=1574880&r1=1574879&r2=1574880&view=diff
==============================================================================
--- httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/conn/ssl/SSLConnectionSocketFactory.java (original)
+++ httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/conn/ssl/SSLConnectionSocketFactory.java Thu Mar 6 13:53:36 2014
@@ -35,8 +35,8 @@ import org.apache.http.util.Args;
import org.apache.http.util.TextUtils;
import javax.net.SocketFactory;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.SSLSocket;
+import javax.net.ssl.*;
+
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.Socket;
@@ -145,7 +145,7 @@ public class SSLConnectionSocketFactory
*/
public static SSLConnectionSocketFactory getSocketFactory() throws SSLInitializationException {
return new SSLConnectionSocketFactory(
- SSLContexts.createDefault(),
+ (javax.net.ssl.SSLSocketFactory) SSLCertificateSocketFactory.getDefault(0),
BROWSER_COMPATIBLE_HOSTNAME_VERIFIER);
}
@@ -167,7 +167,7 @@ public class SSLConnectionSocketFactory
*/
public static SSLConnectionSocketFactory getSystemSocketFactory() throws SSLInitializationException {
return new SSLConnectionSocketFactory(
- (javax.net.ssl.SSLSocketFactory) javax.net.ssl.SSLSocketFactory.getDefault(),
+ (javax.net.ssl.SSLSocketFactory) SSLCertificateSocketFactory.getDefault(0),
split(System.getProperty("https.protocols")),
split(System.getProperty("https.cipherSuites")),
BROWSER_COMPATIBLE_HOSTNAME_VERIFIER);
@@ -281,6 +281,7 @@ public class SSLConnectionSocketFactory
// Android specific code to enable SNI
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
+
if (this.socketfactory instanceof SSLCertificateSocketFactory) {
if (Log.isLoggable(TAG, Log.DEBUG)) {
Log.d(TAG, "Enabling SNI for " + target);
Modified: httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/impl/client/HttpClientBuilder.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/impl/client/HttpClientBuilder.java?rev=1574880&r1=1574879&r2=1574880&view=diff
==============================================================================
--- httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/impl/client/HttpClientBuilder.java (original)
+++ httpcomponents/httpclient-android/branches/4.3.3-android/src/main/java/org/apache/http/impl/client/HttpClientBuilder.java Thu Mar 6 13:53:36 2014
@@ -76,7 +76,6 @@ import org.apache.http.conn.socket.Conne
import org.apache.http.conn.socket.LayeredConnectionSocketFactory;
import org.apache.http.conn.socket.PlainConnectionSocketFactory;
import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
-import org.apache.http.conn.ssl.SSLContexts;
import org.apache.http.conn.ssl.X509HostnameVerifier;
import org.apache.http.cookie.CookieSpecProvider;
import org.apache.http.impl.DefaultConnectionReuseStrategyHC4;
@@ -111,6 +110,8 @@ import org.apache.http.protocol.RequestU
import org.apache.http.util.TextUtils;
import org.apache.http.util.VersionInfoHC4;
+import android.net.SSLCertificateSocketFactory;
+
/**
* Builder for {@link CloseableHttpClient} instances.
* <p/>
@@ -711,11 +712,11 @@ public class HttpClientBuilder {
} else {
if (systemProperties) {
sslSocketFactory = new SSLConnectionSocketFactory(
- (SSLSocketFactory) SSLSocketFactory.getDefault(),
+ (SSLSocketFactory) SSLCertificateSocketFactory.getDefault(0),
supportedProtocols, supportedCipherSuites, hostnameVerifier);
} else {
sslSocketFactory = new SSLConnectionSocketFactory(
- SSLContexts.createDefault(),
+ (SSLSocketFactory) SSLCertificateSocketFactory.getDefault(0),
hostnameVerifier);
}
}