On the svn-auth-x509 branch: Update the JavaHL authentication and
credentials APIs to match the changes in certificate processing.

[in subversion/bindings/javahl]
* src/org/apache/subversion/javahl/callback/AuthnCallback.java
  (AuthnCallback.SSLServerCertInfo): Rewrite this class.
* src/org/apache/subversion/javahl/util/ConfigLib.java
  (ConfigLib.searchCredentials): Replace the parameter hostnamePattern
   with subjectPattern, that matches the cert subject and also any
   host names.
   Remove the commented-out code for addCredential.

* native/AuthnCallback.hpp
  (AuthnCallback::SSLServerCertInfo::SSLServerCertInfo):
   Change the constructor to accept a single Base64-encoded
   certificate instead of pre-parsed cert info.
* native/AuthnCallback.cpp
  (AuthnCallback::SSLServerCertInfo::ClassImpl::ClassImpl):
   Update the Java constructor signature.
  (AuthnCallback::SSLServerCertInfo::SSLServerCertInfo):
   Update the constructor implementation so that it parses
   the certificate and extracts the information needed
   by the Java constructor.
* javahl/native/Prompter.cpp
  (Prompter::dispatch_ssl_server_trust_prompt):
   Update the call to the AuthnCallback::SSLServerCertInfo constructor.

* native/jniwrapper/jni_exception.hpp, native/jniwrapper/jni_base.cpp
  (Java::IllegalArgumentException): New exception wrapper class.
* native/org_apache_subversion_javahl_util_ConfigLib.cpp
  (build_credential): Update construction of AuthnCallback::SSLServerCertInfo.
  (Java_org_apache_subversion_javahl_util_ConfigLib_nativeSearchCredentials):
   Update the handling of the cert subject and hostnames. Do not add
   the valid-from and valid-to dates to the full-text search.

* tests/org/apache/subversion/javahl/UtilTests.java
  (UtilTests.util_cred_ssl_server): Add a valid certificate to the test data.
  (UtilTests.testCredentials): Update the testcase.


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/svn-auth-x509@1613833 13f79535-47bb-0310-9956-ffa450edef68