{"action":"opened","issue":{"url":"https://api.github.com/repos/gradle/gradle/issues/2993","repository_url":"https://api.github.com/repos/gradle/gradle","labels_url":"https://api.github.com/repos/gradle/gradle/issues/2993/labels{/name}","comments_url":"https://api.github.com/repos/gradle/gradle/issues/2993/comments","events_url":"https://api.github.com/repos/gradle/gradle/issues/2993/events","html_url":"https://github.com/gradle/gradle/issues/2993","id":259635393,"number":2993,"title":"Gradle cannot use TLSv1.2 for HTTPS with IBM Java/JDK/JRE","user":{"login":"nathan-hughes","id":367557,"avatar_url":"https://avatars3.githubusercontent.com/u/367557?v=4","gravatar_id":"","url":"https://api.github.com/users/nathan-hughes","html_url":"https://github.com/nathan-hughes","followers_url":"https://api.github.com/users/nathan-hughes/followers","following_url":"https://api.github.com/users/nathan-hughes/following{/other_user}","gists_url":"https://api.github.com/users/nathan-hughes/gists{/gist_id}","starred_url":"https://api.github.com/users/nathan-hughes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nathan-hughes/subscriptions","organizations_url":"https://api.github.com/users/nathan-hughes/orgs","repos_url":"https://api.github.com/users/nathan-hughes/repos","events_url":"https://api.github.com/users/nathan-hughes/events{/privacy}","received_events_url":"https://api.github.com/users/nathan-hughes/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-09-21T21:17:07Z","updated_at":"2017-09-21T21:17:07Z","closed_at":null,"author_association":"NONE","body":"DefaultSslContextFactory doesn't really call the default provider, it calls the first provider of \"TLS\" to do SSL connections.\r\n\r\nThe problem is that the SSLContext is initialized to use \"TLS\". It seems like the same provider provides TLS, TLSv1.1 and TLSv1. support in Sun Java. In IBM Java, TLS in one provider, but TLSv1.2 and maybe TLSv1.1 is in another. Gradle should respect the default chosen by the java.security file and the system properties set by the user.\r\n\r\nOriginally reported on the forums:\r\nhttps://discuss.gradle.org/t/gradle-cannot-use-tlsv1-2-for-https-with-ibm-java-jdk-jre/17551\r\n\r\nThe issue https://issues.gradle.org/browse/GRADLE-3451 was created but closed due to OP not replying.\r\n\r\nWe are building using gradle with IBM JDK against a nexus repository; when the repository was configured to use TLS1.2 only, our builds could no longer connect to it. We have had to switch over to the Oracle JDK for builds and the choice to use gradle is getting called into question.\r\n\r\nThe steps to reproduce from the old issue are still the same. This occurs on JDK 8 as well as on JDK 6 and 7. Tested using gradle 3.4.1. The old issue proposed replacing the current impl with a call to getDefault(), which is not ideal due to the JVM caching the SSLContext, so the gradle daemon can end up using a stale copy. \r\n"}}
{"actor":{"display_login":"nathan-hughes"}}