Skip to content

Most visited

Recently visited

navigation
Added in API level 1
Deprecated since API level 22

X509HostnameVerifier

public interface X509HostnameVerifier
implements HostnameVerifier

org.apache.http.conn.ssl.X509HostnameVerifier
Known Indirect Subclasses


This interface was deprecated in API level 22.
Please use openConnection() instead. Please visit this webpage for further details.

Interface for checking if a hostname matches the names stored inside the server's X.509 certificate. Implements javax.net.ssl.HostnameVerifier, but we don't actually use that interface. Instead we added some methods that take String parameters (instead of javax.net.ssl.HostnameVerifier's SSLSession). JUnit is a lot easier this way! :-)

We provide the HostnameVerifier.DEFAULT, HostnameVerifier.STRICT, and HostnameVerifier.ALLOW_ALL implementations. But feel free to define your own implementation!

Inspired by Sebastian Hauer's original StrictSSLProtocolSocketFactory in the HttpClient "contrib" repository.

Summary

Public methods

abstract boolean verify(String host, SSLSession session)

Verifies that the specified hostname is allowed within the specified SSL session.

abstract void verify(String host, X509Certificate cert)
abstract void verify(String host, SSLSocket ssl)
abstract void verify(String host, String[] cns, String[] subjectAlts)

Checks to see if the supplied hostname matches any of the supplied CNs or "DNS" Subject-Alts.

Inherited methods

From interface javax.net.ssl.HostnameVerifier

Public methods

verify

Added in API level 1
boolean verify (String host, 
                SSLSession session)

Verifies that the specified hostname is allowed within the specified SSL session.

Parameters
host String: the hostname.
session SSLSession: the SSL session of the connection.
Returns
boolean true if the specified hostname is allowed, otherwise false.

verify

Added in API level 1
void verify (String host, 
                X509Certificate cert)

Parameters
host String
cert X509Certificate
Throws
SSLException

verify

Added in API level 1
void verify (String host, 
                SSLSocket ssl)

Parameters
host String
ssl SSLSocket
Throws
IOException

verify

Added in API level 1
void verify (String host, 
                String[] cns, 
                String[] subjectAlts)

Checks to see if the supplied hostname matches any of the supplied CNs or "DNS" Subject-Alts. Most implementations only look at the first CN, and ignore any additional CNs. Most implementations do look at all of the "DNS" Subject-Alts. The CNs or Subject-Alts may contain wildcards according to RFC 2818.

Parameters
host String: The hostname to verify.
cns String: CN fields, in order, as extracted from the X.509 certificate.
subjectAlts String: Subject-Alt fields of type 2 ("DNS"), as extracted from the X.509 certificate.
Throws
SSLException If verification failed.
This site uses cookies to store your preferences for site-specific language and display options.

Hooray!

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.