Added in API level 1
Deprecated in API level 22

AbstractVerifier

public abstract class AbstractVerifier
extends Object implements X509HostnameVerifier

java.lang.Object
   ↳ org.apache.http.conn.ssl.AbstractVerifier


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

Abstract base class for all standard X509HostnameVerifier implementations.

Summary

Public constructors

AbstractVerifier()

Public methods

static boolean acceptableCountryWildcard(String cn)
static int countDots(String s)

Counts the number of dots "." in a string.

static String[] getCNs(X509Certificate cert)
static String[] getDNSSubjectAlts(X509Certificate cert)

Extracts the array of SubjectAlt DNS names from an X509Certificate.

final void verify(String host, SSLSocket ssl)
final void verify(String host, String[] cns, String[] subjectAlts, boolean strictWithSubDomains)
final void verify(String host, X509Certificate cert)
final boolean verify(String host, SSLSession session)

Verify that the host name is an acceptable match with the server's authentication scheme.

Inherited methods

Public constructors

AbstractVerifier

Added in API level 1
public AbstractVerifier ()

Public methods

acceptableCountryWildcard

Added in API level 1
public static boolean acceptableCountryWildcard (String cn)

Parameters
cn String

Returns
boolean

countDots

Added in API level 1
public static int countDots (String s)

Counts the number of dots "." in a string.

Parameters
s String: string to count dots from

Returns
int number of dots

getCNs

Added in API level 1
public static String[] getCNs (X509Certificate cert)

Parameters
cert X509Certificate

Returns
String[]

getDNSSubjectAlts

Added in API level 1
public static String[] getDNSSubjectAlts (X509Certificate cert)

Extracts the array of SubjectAlt DNS names from an X509Certificate. Returns null if there aren't any.

Note: Java doesn't appear able to extract international characters from the SubjectAlts. It can only extract international characters from the CN field.

(Or maybe the version of OpenSSL I'm using to test isn't storing the international characters correctly in the SubjectAlts?).

Parameters
cert X509Certificate: X509Certificate

Returns
String[] Array of SubjectALT DNS names stored in the certificate.

verify

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

Parameters
host String

ssl SSLSocket

Throws
IOException

verify

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

Parameters
host String

cns String

subjectAlts String

strictWithSubDomains boolean

Throws
SSLException

verify

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

Parameters
host String

cert X509Certificate

Throws
SSLException

verify

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

Verify that the host name is an acceptable match with the server's authentication scheme.

Parameters
host String: the host name

session SSLSession: SSLSession used on the connection to host

Returns
boolean true if the host name is acceptable