== How to fix it in Java SE === Code examples include::../../common/fix/code-rationale.adoc[] :cert_method_name: javax.net.ssl.HostnameVerifier.verify() include::../../common/fix/code-rationale-override.adoc[] ==== Noncompliant code example [source,java,diff-id=21,diff-type=noncompliant] ---- import java.io.InputStream; import java.net.URL; import javax.net.ssl.HttpsURLConnection; import javax.net.ssl.SSLSession; import javax.net.ssl.HostnameVerifier; public InputStream doRequest() { URL url = new URL("https://example.org/"); HttpsURLConnection urlConnection = (HttpsURLConnection)url.openConnection(); urlConnection.setHostnameVerifier(new HostnameVerifier() { @Override public boolean verify(String requestedHost, SSLSession remoteServerSession) { return true; // Noncompliant } }); return urlConnection.getInputStream(); } ---- ==== Compliant solution [source,java,diff-id=21,diff-type=compliant] ---- import java.io.InputStream; import java.net.URL; import javax.net.ssl.HttpsURLConnection; import javax.net.ssl.SSLSession; public InputStream doRequest() { URL url = new URL("https://example.org/"); HttpsURLConnection urlConnection = (HttpsURLConnection)url.openConnection(); return urlConnection.getInputStream(); } ---- === How does this work? include::../../common/fix/validation.adoc[] include::../../common/fix/keytool.adoc[]