Interface CertificateCallback


public interface CertificateCallback
Is called during handshake and hooked into openssl via SSL_CTX_set_cert_cb. IMPORTANT: Implementations of this interface should be static as it is stored as a global reference via JNI. This means if you use an inner / anonymous class to implement this and also depend on the finalizer of the class to free up the SSLContext the finalizer will never run as the object is never GC, due the hard reference to the enclosing class. This will most likely result in a memory leak.
  • Field Details

  • Method Details

    • handle

      void handle(long ssl, byte[] keyTypeBytes, byte[][] asn1DerEncodedPrincipals) throws Exception
      Called during cert selection. If a certificate chain / key should be used SSL.setKeyMaterial(long, long, long) must be called from this callback after all preparations / validations were completed.
      Parameters:
      ssl - the SSL instance
      keyTypeBytes - an array of the key types on client-mode or null on server-mode.
      asn1DerEncodedPrincipals - the principals or null.
      Throws:
      Exception