org.apache.http.conn.ssl
Class BrowserCompatHostnameVerifier

java.lang.Object
  extended by org.apache.http.conn.ssl.AbstractVerifier
      extended by org.apache.http.conn.ssl.BrowserCompatHostnameVerifier
All Implemented Interfaces:
HostnameVerifier, X509HostnameVerifier

@Immutable
public class BrowserCompatHostnameVerifier
extends AbstractVerifier

The HostnameVerifier that works the same way as Curl and Firefox.

The hostname must match either the first CN, or any of the subject-alts. A wildcard can occur in the CN, and in any of the subject-alts.

The only difference between BROWSER_COMPATIBLE and STRICT is that a wildcard (such as "*.foo.com") with BROWSER_COMPATIBLE matches all subdomains, including "a.b.foo.com".

Since:
4.0

Constructor Summary
BrowserCompatHostnameVerifier()
           
 
Method Summary
 String toString()
           
 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.
 
Methods inherited from class org.apache.http.conn.ssl.AbstractVerifier
acceptableCountryWildcard, countDots, getCNs, getDNSSubjectAlts, verify, verify, verify, verify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BrowserCompatHostnameVerifier

public BrowserCompatHostnameVerifier()
Method Detail

verify

public final void verify(String host,
                         String[] cns,
                         String[] subjectAlts)
                  throws SSLException
Description copied from interface: X509HostnameVerifier
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 - The hostname to verify.
cns - CN fields, in order, as extracted from the X.509 certificate.
subjectAlts - Subject-Alt fields of type 2 ("DNS"), as extracted from the X.509 certificate.
Throws:
SSLException - if the verification process fails.

toString

public final String toString()
Overrides:
toString in class Object


Copyright © 1999-2010 Apache Software Foundation. All Rights Reserved.