You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Bruce Adams (JIRA)" <ji...@apache.org> on 2016/10/12 00:32:21 UTC

[jira] [Updated] (HTTPCLIENT-1784) TLS Client Hello is always TLS 1.0 (0x0301) under IBM Java

     [ https://issues.apache.org/jira/browse/HTTPCLIENT-1784?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bruce Adams updated HTTPCLIENT-1784:
------------------------------------
    Attachment: Get.java
                ApacheGet.java

Simple (and not quite identical) HTTP "GET" programs, one using Apache HttpClient and the other using the HTTP libraries bundled with Java.

> TLS Client Hello is always TLS 1.0 (0x0301) under IBM Java
> ----------------------------------------------------------
>
>                 Key: HTTPCLIENT-1784
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1784
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: HttpClient (classic)
>    Affects Versions: 4.5.2
>         Environment: IBM Java, many versions including latest Java 8.
>            Reporter: Bruce Adams
>              Labels: tls
>         Attachments: ApacheGet.java, Get.java
>
>
> A simple client program fails to connect to any site that _requires_ TLSv1.2. The Java program below, given the URL https://www.sandbox.paypal.com fails with:
> bq. javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
> when run on the latest released IBM Java, {{pxa6480sr3fp12-20160919_01(SR3 FP12)}} (available in a Docker image {{ibmcom/ibmjava:8-sdk}}). The same run is successful on a recent Oracle Java 8.
> I similar, simple, Java program that uses the built-in Java libraries instead of Apache HttpClient works fine on both IBM Java and Oracle Java.
> {{ApacheGet.java}}
> // Sorry. I didn't figure out how to properly format code in here.
> import org.apache.http.client.methods.CloseableHttpResponse;
> import org.apache.http.client.methods.HttpGet;
> import org.apache.http.impl.client.CloseableHttpClient;
> import org.apache.http.impl.client.HttpClients;
> class ApacheGet {
>   public static void main(String args[]) throws Exception {
>     String urlString = args[0];
>     HttpGet httpGet = new HttpGet(urlString);
>     CloseableHttpClient httpClient = HttpClients.createDefault();
>     try {
>       CloseableHttpResponse response = httpClient.execute(httpGet);
>       try {
>         System.out.println(response.getStatusLine());
>       } finally {
>         response.close();
>       }
>     } finally {
>       httpClient.close();
>     }
>   }
> }



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org