Apache Tomcat 7.0.28

org.apache.tomcat.jni
Class SSL

java.lang.Object
  extended by org.apache.tomcat.jni.SSL

public final class SSL
extends Object

SSL

Version:
$Id: SSL.java 1199985 2011-11-09 21:43:23Z schultz $
Author:
Mladen Turk

Field Summary
static int SSL_AIDX_DSA
           
static int SSL_AIDX_MAX
           
static int SSL_AIDX_RSA
           
static int SSL_ALGO_ALL
           
static int SSL_ALGO_DSA
           
static int SSL_ALGO_RSA
           
static int SSL_ALGO_UNKNOWN
           
static int SSL_CRT_FORMAT_ASN1
           
static int SSL_CRT_FORMAT_ENGINE
           
static int SSL_CRT_FORMAT_NETSCAPE
           
static int SSL_CRT_FORMAT_PEM
           
static int SSL_CRT_FORMAT_PKCS12
           
static int SSL_CRT_FORMAT_SMIME
           
static int SSL_CRT_FORMAT_TEXT
           
static int SSL_CRT_FORMAT_UNDEF
           
static int SSL_CVERIFY_NONE
           
static int SSL_CVERIFY_OPTIONAL
           
static int SSL_CVERIFY_OPTIONAL_NO_CA
           
static int SSL_CVERIFY_REQUIRE
           
static int SSL_CVERIFY_UNSET
           
static int SSL_INFO_CIPHER
           
static int SSL_INFO_CIPHER_ALGKEYSIZE
           
static int SSL_INFO_CIPHER_DESCRIPTION
           
static int SSL_INFO_CIPHER_USEKEYSIZE
           
static int SSL_INFO_CIPHER_VERSION
           
static int SSL_INFO_CLIENT_A_KEY
           
static int SSL_INFO_CLIENT_A_SIG
           
static int SSL_INFO_CLIENT_CERT
           
static int SSL_INFO_CLIENT_CERT_CHAIN
           
static int SSL_INFO_CLIENT_I_DN
           
static int SSL_INFO_CLIENT_M_SERIAL
           
static int SSL_INFO_CLIENT_M_VERSION
           
static int SSL_INFO_CLIENT_S_DN
           
static int SSL_INFO_CLIENT_V_END
           
static int SSL_INFO_CLIENT_V_REMAIN
           
static int SSL_INFO_CLIENT_V_START
           
static int SSL_INFO_DN_COMMONNAME
           
static int SSL_INFO_DN_COUNTRYNAME
           
static int SSL_INFO_DN_DESCRIPTION
           
static int SSL_INFO_DN_EMAILADDRESS
           
static int SSL_INFO_DN_GIVENNAME
           
static int SSL_INFO_DN_INITIALS
           
static int SSL_INFO_DN_LOCALITYNAME
           
static int SSL_INFO_DN_ORGANIZATIONALUNITNAME
           
static int SSL_INFO_DN_ORGANIZATIONNAME
           
static int SSL_INFO_DN_STATEORPROVINCENAME
           
static int SSL_INFO_DN_SURNAME
           
static int SSL_INFO_DN_TITLE
           
static int SSL_INFO_DN_UNIQUEIDENTIFIER
           
static int SSL_INFO_PROTOCOL
           
static int SSL_INFO_SERVER_A_KEY
           
static int SSL_INFO_SERVER_A_SIG
           
static int SSL_INFO_SERVER_CERT
           
static int SSL_INFO_SERVER_I_DN
           
static int SSL_INFO_SERVER_M_SERIAL
           
static int SSL_INFO_SERVER_M_VERSION
           
static int SSL_INFO_SERVER_S_DN
           
static int SSL_INFO_SERVER_V_END
           
static int SSL_INFO_SERVER_V_START
           
static int SSL_INFO_SESSION_ID
           
static int SSL_MODE_CLIENT
           
static int SSL_MODE_COMBINED
           
static int SSL_MODE_SERVER
           
static int SSL_OP_ALL
           
static int SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION
           
static int SSL_OP_CIPHER_SERVER_PREFERENCE
           
static int SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS
           
static int SSL_OP_EPHEMERAL_RSA
           
static int SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER
           
static int SSL_OP_MICROSOFT_SESS_ID_BUG
           
static int SSL_OP_MSIE_SSLV2_RSA_PADDING
           
static int SSL_OP_NETSCAPE_CA_DN_BUG
           
static int SSL_OP_NETSCAPE_CHALLENGE_BUG
           
static int SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG
           
static int SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG
           
static int SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION
           
static int SSL_OP_NO_SSLv2
           
static int SSL_OP_NO_SSLv3
           
static int SSL_OP_NO_TLSv1
           
static int SSL_OP_PKCS1_CHECK_1
           
static int SSL_OP_PKCS1_CHECK_2
           
static int SSL_OP_SINGLE_DH_USE
           
static int SSL_OP_SINGLE_ECDH_USE
           
static int SSL_OP_SSLEAY_080_CLIENT_DH_BUG
           
static int SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG
           
static int SSL_OP_TLS_BLOCK_PADDING_BUG
           
static int SSL_OP_TLS_D5_BUG
           
static int SSL_OP_TLS_ROLLBACK_BUG
           
static int SSL_OPT_ALL
           
static int SSL_OPT_EXPORTCERTDATA
           
static int SSL_OPT_FAKEBASICAUTH
           
static int SSL_OPT_NONE
           
static int SSL_OPT_OPTRENEGOTIATE
           
static int SSL_OPT_RELSET
           
static int SSL_OPT_STDENVVARS
           
static int SSL_OPT_STRICTREQUIRE
           
static int SSL_PROTOCOL_ALL
           
static int SSL_PROTOCOL_NONE
           
static int SSL_PROTOCOL_SSLV2
           
static int SSL_PROTOCOL_SSLV3
           
static int SSL_PROTOCOL_TLSV1
           
static int SSL_SHUTDOWN_TYPE_ACCURATE
           
static int SSL_SHUTDOWN_TYPE_STANDARD
           
static int SSL_SHUTDOWN_TYPE_UNCLEAN
           
static int SSL_SHUTDOWN_TYPE_UNSET
           
static int SSL_TMP_KEY_DH_1024
           
static int SSL_TMP_KEY_DH_2048
           
static int SSL_TMP_KEY_DH_4096
           
static int SSL_TMP_KEY_DH_512
           
static int SSL_TMP_KEY_MAX
           
static int SSL_TMP_KEY_RSA_1024
           
static int SSL_TMP_KEY_RSA_2048
           
static int SSL_TMP_KEY_RSA_4096
           
static int SSL_TMP_KEY_RSA_512
           
static int SSL_VERIFY_CLIENT_ONCE
           
static int SSL_VERIFY_FAIL_IF_NO_PEER_CERT
           
static int SSL_VERIFY_NONE
           
static int SSL_VERIFY_PEER
           
static int SSL_VERIFY_PEER_STRICT
           
static int UNSET
           
 
Constructor Summary
SSL()
           
 
Method Summary
static int closeBIO(long bio)
          Close BIO and dereference callback object
static int fipsModeSet(int mode)
          Enable/Disable FIPS Mode.
static boolean generateRSATempKey(int idx)
          Generate temporary RSA key.
static String getLastError()
          Return last SSL error string
static boolean hasOp(int op)
          Return true if SSL_OP_ if defined.
static int initialize(String engine)
          Initialize OpenSSL support.
static boolean loadDSATempKey(int idx, String file)
          Load temporary DSA key from file
Index can be one of: SSL_TMP_KEY_DH_512 SSL_TMP_KEY_DH_1024 SSL_TMP_KEY_DH_2048 SSL_TMP_KEY_DH_4096
static long newBIO(long pool, BIOCallback callback)
          Initialize new BIO
static boolean randLoad(String filename)
          Add content of the file to the PRNG
static boolean randMake(String filename, int len, boolean base64)
          Creates random data to filename
static boolean randSave(String filename)
          Writes a number of random bytes (currently 1024) to file filename which can be used to initialize the PRNG by calling randLoad in a later session.
static void randSet(String filename)
          Sets global random filename.
static void setPassword(String password)
          Set global Password for decrypting certificates and keys.
static void setPasswordCallback(PasswordCallback callback)
          Set global Password callback for obtaining passwords.
static int version()
           
static String versionString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

UNSET

public static final int UNSET
See Also:
Constant Field Values

SSL_ALGO_UNKNOWN

public static final int SSL_ALGO_UNKNOWN
See Also:
Constant Field Values

SSL_ALGO_RSA

public static final int SSL_ALGO_RSA
See Also:
Constant Field Values

SSL_ALGO_DSA

public static final int SSL_ALGO_DSA
See Also:
Constant Field Values

SSL_ALGO_ALL

public static final int SSL_ALGO_ALL
See Also:
Constant Field Values

SSL_AIDX_RSA

public static final int SSL_AIDX_RSA
See Also:
Constant Field Values

SSL_AIDX_DSA

public static final int SSL_AIDX_DSA
See Also:
Constant Field Values

SSL_AIDX_MAX

public static final int SSL_AIDX_MAX
See Also:
Constant Field Values

SSL_TMP_KEY_RSA_512

public static final int SSL_TMP_KEY_RSA_512
See Also:
Constant Field Values

SSL_TMP_KEY_RSA_1024

public static final int SSL_TMP_KEY_RSA_1024
See Also:
Constant Field Values

SSL_TMP_KEY_RSA_2048

public static final int SSL_TMP_KEY_RSA_2048
See Also:
Constant Field Values

SSL_TMP_KEY_RSA_4096

public static final int SSL_TMP_KEY_RSA_4096
See Also:
Constant Field Values

SSL_TMP_KEY_DH_512

public static final int SSL_TMP_KEY_DH_512
See Also:
Constant Field Values

SSL_TMP_KEY_DH_1024

public static final int SSL_TMP_KEY_DH_1024
See Also:
Constant Field Values

SSL_TMP_KEY_DH_2048

public static final int SSL_TMP_KEY_DH_2048
See Also:
Constant Field Values

SSL_TMP_KEY_DH_4096

public static final int SSL_TMP_KEY_DH_4096
See Also:
Constant Field Values

SSL_TMP_KEY_MAX

public static final int SSL_TMP_KEY_MAX
See Also:
Constant Field Values

SSL_OPT_NONE

public static final int SSL_OPT_NONE
See Also:
Constant Field Values

SSL_OPT_RELSET

public static final int SSL_OPT_RELSET
See Also:
Constant Field Values

SSL_OPT_STDENVVARS

public static final int SSL_OPT_STDENVVARS
See Also:
Constant Field Values

SSL_OPT_EXPORTCERTDATA

public static final int SSL_OPT_EXPORTCERTDATA
See Also:
Constant Field Values

SSL_OPT_FAKEBASICAUTH

public static final int SSL_OPT_FAKEBASICAUTH
See Also:
Constant Field Values

SSL_OPT_STRICTREQUIRE

public static final int SSL_OPT_STRICTREQUIRE
See Also:
Constant Field Values

SSL_OPT_OPTRENEGOTIATE

public static final int SSL_OPT_OPTRENEGOTIATE
See Also:
Constant Field Values

SSL_OPT_ALL

public static final int SSL_OPT_ALL
See Also:
Constant Field Values

SSL_PROTOCOL_NONE

public static final int SSL_PROTOCOL_NONE
See Also:
Constant Field Values

SSL_PROTOCOL_SSLV2

public static final int SSL_PROTOCOL_SSLV2
See Also:
Constant Field Values

SSL_PROTOCOL_SSLV3

public static final int SSL_PROTOCOL_SSLV3
See Also:
Constant Field Values

SSL_PROTOCOL_TLSV1

public static final int SSL_PROTOCOL_TLSV1
See Also:
Constant Field Values

SSL_PROTOCOL_ALL

public static final int SSL_PROTOCOL_ALL
See Also:
Constant Field Values

SSL_CVERIFY_UNSET

public static final int SSL_CVERIFY_UNSET
See Also:
Constant Field Values

SSL_CVERIFY_NONE

public static final int SSL_CVERIFY_NONE
See Also:
Constant Field Values

SSL_CVERIFY_OPTIONAL

public static final int SSL_CVERIFY_OPTIONAL
See Also:
Constant Field Values

SSL_CVERIFY_REQUIRE

public static final int SSL_CVERIFY_REQUIRE
See Also:
Constant Field Values

SSL_CVERIFY_OPTIONAL_NO_CA

public static final int SSL_CVERIFY_OPTIONAL_NO_CA
See Also:
Constant Field Values

SSL_VERIFY_NONE

public static final int SSL_VERIFY_NONE
See Also:
Constant Field Values

SSL_VERIFY_PEER

public static final int SSL_VERIFY_PEER
See Also:
Constant Field Values

SSL_VERIFY_FAIL_IF_NO_PEER_CERT

public static final int SSL_VERIFY_FAIL_IF_NO_PEER_CERT
See Also:
Constant Field Values

SSL_VERIFY_CLIENT_ONCE

public static final int SSL_VERIFY_CLIENT_ONCE
See Also:
Constant Field Values

SSL_VERIFY_PEER_STRICT

public static final int SSL_VERIFY_PEER_STRICT
See Also:
Constant Field Values

SSL_OP_MICROSOFT_SESS_ID_BUG

public static final int SSL_OP_MICROSOFT_SESS_ID_BUG
See Also:
Constant Field Values

SSL_OP_NETSCAPE_CHALLENGE_BUG

public static final int SSL_OP_NETSCAPE_CHALLENGE_BUG
See Also:
Constant Field Values

SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG

public static final int SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG
See Also:
Constant Field Values

SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG

public static final int SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG
See Also:
Constant Field Values

SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER

public static final int SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER
See Also:
Constant Field Values

SSL_OP_MSIE_SSLV2_RSA_PADDING

public static final int SSL_OP_MSIE_SSLV2_RSA_PADDING
See Also:
Constant Field Values

SSL_OP_SSLEAY_080_CLIENT_DH_BUG

public static final int SSL_OP_SSLEAY_080_CLIENT_DH_BUG
See Also:
Constant Field Values

SSL_OP_TLS_D5_BUG

public static final int SSL_OP_TLS_D5_BUG
See Also:
Constant Field Values

SSL_OP_TLS_BLOCK_PADDING_BUG

public static final int SSL_OP_TLS_BLOCK_PADDING_BUG
See Also:
Constant Field Values

SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS

public static final int SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS
See Also:
Constant Field Values

SSL_OP_ALL

public static final int SSL_OP_ALL
See Also:
Constant Field Values

SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION

public static final int SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION
See Also:
Constant Field Values

SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION

public static final int SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION
See Also:
Constant Field Values

SSL_OP_SINGLE_ECDH_USE

public static final int SSL_OP_SINGLE_ECDH_USE
See Also:
Constant Field Values

SSL_OP_SINGLE_DH_USE

public static final int SSL_OP_SINGLE_DH_USE
See Also:
Constant Field Values

SSL_OP_EPHEMERAL_RSA

public static final int SSL_OP_EPHEMERAL_RSA
See Also:
Constant Field Values

SSL_OP_CIPHER_SERVER_PREFERENCE

public static final int SSL_OP_CIPHER_SERVER_PREFERENCE
See Also:
Constant Field Values

SSL_OP_TLS_ROLLBACK_BUG

public static final int SSL_OP_TLS_ROLLBACK_BUG
See Also:
Constant Field Values

SSL_OP_NO_SSLv2

public static final int SSL_OP_NO_SSLv2
See Also:
Constant Field Values

SSL_OP_NO_SSLv3

public static final int SSL_OP_NO_SSLv3
See Also:
Constant Field Values

SSL_OP_NO_TLSv1

public static final int SSL_OP_NO_TLSv1
See Also:
Constant Field Values

SSL_OP_PKCS1_CHECK_1

public static final int SSL_OP_PKCS1_CHECK_1
See Also:
Constant Field Values

SSL_OP_PKCS1_CHECK_2

public static final int SSL_OP_PKCS1_CHECK_2
See Also:
Constant Field Values

SSL_OP_NETSCAPE_CA_DN_BUG

public static final int SSL_OP_NETSCAPE_CA_DN_BUG
See Also:
Constant Field Values

SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG

public static final int SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG
See Also:
Constant Field Values

SSL_CRT_FORMAT_UNDEF

public static final int SSL_CRT_FORMAT_UNDEF
See Also:
Constant Field Values

SSL_CRT_FORMAT_ASN1

public static final int SSL_CRT_FORMAT_ASN1
See Also:
Constant Field Values

SSL_CRT_FORMAT_TEXT

public static final int SSL_CRT_FORMAT_TEXT
See Also:
Constant Field Values

SSL_CRT_FORMAT_PEM

public static final int SSL_CRT_FORMAT_PEM
See Also:
Constant Field Values

SSL_CRT_FORMAT_NETSCAPE

public static final int SSL_CRT_FORMAT_NETSCAPE
See Also:
Constant Field Values

SSL_CRT_FORMAT_PKCS12

public static final int SSL_CRT_FORMAT_PKCS12
See Also:
Constant Field Values

SSL_CRT_FORMAT_SMIME

public static final int SSL_CRT_FORMAT_SMIME
See Also:
Constant Field Values

SSL_CRT_FORMAT_ENGINE

public static final int SSL_CRT_FORMAT_ENGINE
See Also:
Constant Field Values

SSL_MODE_CLIENT

public static final int SSL_MODE_CLIENT
See Also:
Constant Field Values

SSL_MODE_SERVER

public static final int SSL_MODE_SERVER
See Also:
Constant Field Values

SSL_MODE_COMBINED

public static final int SSL_MODE_COMBINED
See Also:
Constant Field Values

SSL_SHUTDOWN_TYPE_UNSET

public static final int SSL_SHUTDOWN_TYPE_UNSET
See Also:
Constant Field Values

SSL_SHUTDOWN_TYPE_STANDARD

public static final int SSL_SHUTDOWN_TYPE_STANDARD
See Also:
Constant Field Values

SSL_SHUTDOWN_TYPE_UNCLEAN

public static final int SSL_SHUTDOWN_TYPE_UNCLEAN
See Also:
Constant Field Values

SSL_SHUTDOWN_TYPE_ACCURATE

public static final int SSL_SHUTDOWN_TYPE_ACCURATE
See Also:
Constant Field Values

SSL_INFO_SESSION_ID

public static final int SSL_INFO_SESSION_ID
See Also:
Constant Field Values

SSL_INFO_CIPHER

public static final int SSL_INFO_CIPHER
See Also:
Constant Field Values

SSL_INFO_CIPHER_USEKEYSIZE

public static final int SSL_INFO_CIPHER_USEKEYSIZE
See Also:
Constant Field Values

SSL_INFO_CIPHER_ALGKEYSIZE

public static final int SSL_INFO_CIPHER_ALGKEYSIZE
See Also:
Constant Field Values

SSL_INFO_CIPHER_VERSION

public static final int SSL_INFO_CIPHER_VERSION
See Also:
Constant Field Values

SSL_INFO_CIPHER_DESCRIPTION

public static final int SSL_INFO_CIPHER_DESCRIPTION
See Also:
Constant Field Values

SSL_INFO_PROTOCOL

public static final int SSL_INFO_PROTOCOL
See Also:
Constant Field Values

SSL_INFO_CLIENT_S_DN

public static final int SSL_INFO_CLIENT_S_DN
See Also:
Constant Field Values

SSL_INFO_CLIENT_I_DN

public static final int SSL_INFO_CLIENT_I_DN
See Also:
Constant Field Values

SSL_INFO_SERVER_S_DN

public static final int SSL_INFO_SERVER_S_DN
See Also:
Constant Field Values

SSL_INFO_SERVER_I_DN

public static final int SSL_INFO_SERVER_I_DN
See Also:
Constant Field Values

SSL_INFO_DN_COUNTRYNAME

public static final int SSL_INFO_DN_COUNTRYNAME
See Also:
Constant Field Values

SSL_INFO_DN_STATEORPROVINCENAME

public static final int SSL_INFO_DN_STATEORPROVINCENAME
See Also:
Constant Field Values

SSL_INFO_DN_LOCALITYNAME

public static final int SSL_INFO_DN_LOCALITYNAME
See Also:
Constant Field Values

SSL_INFO_DN_ORGANIZATIONNAME

public static final int SSL_INFO_DN_ORGANIZATIONNAME
See Also:
Constant Field Values

SSL_INFO_DN_ORGANIZATIONALUNITNAME

public static final int SSL_INFO_DN_ORGANIZATIONALUNITNAME
See Also:
Constant Field Values

SSL_INFO_DN_COMMONNAME

public static final int SSL_INFO_DN_COMMONNAME
See Also:
Constant Field Values

SSL_INFO_DN_TITLE

public static final int SSL_INFO_DN_TITLE
See Also:
Constant Field Values

SSL_INFO_DN_INITIALS

public static final int SSL_INFO_DN_INITIALS
See Also:
Constant Field Values

SSL_INFO_DN_GIVENNAME

public static final int SSL_INFO_DN_GIVENNAME
See Also:
Constant Field Values

SSL_INFO_DN_SURNAME

public static final int SSL_INFO_DN_SURNAME
See Also:
Constant Field Values

SSL_INFO_DN_DESCRIPTION

public static final int SSL_INFO_DN_DESCRIPTION
See Also:
Constant Field Values

SSL_INFO_DN_UNIQUEIDENTIFIER

public static final int SSL_INFO_DN_UNIQUEIDENTIFIER
See Also:
Constant Field Values

SSL_INFO_DN_EMAILADDRESS

public static final int SSL_INFO_DN_EMAILADDRESS
See Also:
Constant Field Values

SSL_INFO_CLIENT_M_VERSION

public static final int SSL_INFO_CLIENT_M_VERSION
See Also:
Constant Field Values

SSL_INFO_CLIENT_M_SERIAL

public static final int SSL_INFO_CLIENT_M_SERIAL
See Also:
Constant Field Values

SSL_INFO_CLIENT_V_START

public static final int SSL_INFO_CLIENT_V_START
See Also:
Constant Field Values

SSL_INFO_CLIENT_V_END

public static final int SSL_INFO_CLIENT_V_END
See Also:
Constant Field Values

SSL_INFO_CLIENT_A_SIG

public static final int SSL_INFO_CLIENT_A_SIG
See Also:
Constant Field Values

SSL_INFO_CLIENT_A_KEY

public static final int SSL_INFO_CLIENT_A_KEY
See Also:
Constant Field Values

SSL_INFO_CLIENT_CERT

public static final int SSL_INFO_CLIENT_CERT
See Also:
Constant Field Values

SSL_INFO_CLIENT_V_REMAIN

public static final int SSL_INFO_CLIENT_V_REMAIN
See Also:
Constant Field Values

SSL_INFO_SERVER_M_VERSION

public static final int SSL_INFO_SERVER_M_VERSION
See Also:
Constant Field Values

SSL_INFO_SERVER_M_SERIAL

public static final int SSL_INFO_SERVER_M_SERIAL
See Also:
Constant Field Values

SSL_INFO_SERVER_V_START

public static final int SSL_INFO_SERVER_V_START
See Also:
Constant Field Values

SSL_INFO_SERVER_V_END

public static final int SSL_INFO_SERVER_V_END
See Also:
Constant Field Values

SSL_INFO_SERVER_A_SIG

public static final int SSL_INFO_SERVER_A_SIG
See Also:
Constant Field Values

SSL_INFO_SERVER_A_KEY

public static final int SSL_INFO_SERVER_A_KEY
See Also:
Constant Field Values

SSL_INFO_SERVER_CERT

public static final int SSL_INFO_SERVER_CERT
See Also:
Constant Field Values

SSL_INFO_CLIENT_CERT_CHAIN

public static final int SSL_INFO_CLIENT_CERT_CHAIN
See Also:
Constant Field Values
Constructor Detail

SSL

public SSL()
Method Detail

version

public static int version()

versionString

public static String versionString()

initialize

public static int initialize(String engine)
Initialize OpenSSL support. This function needs to be called once for the lifetime of JVM. Library.init() has to be called before.

Parameters:
engine - Support for external a Crypto Device ("engine"), usually a hardware accelerator card for crypto operations.
Returns:
APR status code

fipsModeSet

public static int fipsModeSet(int mode)
Enable/Disable FIPS Mode.

Parameters:
mode - 1 - enable, 0 - disable
Returns:
FIPS_mode_set return code

randLoad

public static boolean randLoad(String filename)
Add content of the file to the PRNG

Parameters:
filename - Filename containing random data. If null the default file will be tested. The seed file is $RANDFILE if that environment variable is set, $HOME/.rnd otherwise. In case both files are unavailable builtin random seed generator is used.

randSave

public static boolean randSave(String filename)
Writes a number of random bytes (currently 1024) to file filename which can be used to initialize the PRNG by calling randLoad in a later session.

Parameters:
filename - Filename to save the data

randMake

public static boolean randMake(String filename,
                               int len,
                               boolean base64)
Creates random data to filename

Parameters:
filename - Filename to save the data
len - The length of random sequence in bytes
base64 - Output the data in Base64 encoded format

randSet

public static void randSet(String filename)
Sets global random filename.

Parameters:
filename - Filename to use. If set it will be used for SSL initialization and all contexts where explicitly not set.

newBIO

public static long newBIO(long pool,
                          BIOCallback callback)
                   throws Exception
Initialize new BIO

Parameters:
pool - The pool to use.
callback - BIOCallback to use
Returns:
New BIO handle
Throws:
Exception

closeBIO

public static int closeBIO(long bio)
Close BIO and dereference callback object

Parameters:
bio - BIO to close and destroy.
Returns:
APR Status code

setPasswordCallback

public static void setPasswordCallback(PasswordCallback callback)
Set global Password callback for obtaining passwords.

Parameters:
callback - PasswordCallback implementation to use.

setPassword

public static void setPassword(String password)
Set global Password for decrypting certificates and keys.

Parameters:
password - Password to use.

generateRSATempKey

public static boolean generateRSATempKey(int idx)
Generate temporary RSA key.
Index can be one of:
 SSL_TMP_KEY_RSA_512
 SSL_TMP_KEY_RSA_1024
 SSL_TMP_KEY_RSA_2048
 SSL_TMP_KEY_RSA_4096
 
By default 512 and 1024 keys are generated on startup. You can use a low priority thread to generate them on the fly.

Parameters:
idx - temporary key index.

loadDSATempKey

public static boolean loadDSATempKey(int idx,
                                     String file)
Load temporary DSA key from file
Index can be one of:
 SSL_TMP_KEY_DH_512
 SSL_TMP_KEY_DH_1024
 SSL_TMP_KEY_DH_2048
 SSL_TMP_KEY_DH_4096
 

Parameters:
idx - temporary key index.
file - File containing DH params.

getLastError

public static String getLastError()
Return last SSL error string


hasOp

public static boolean hasOp(int op)
Return true if SSL_OP_ if defined.

Currently used for testing weather the SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION is supported by OpenSSL.

Parameters:
op - SSL_OP to test.
Returns:
true if SSL_OP is supported by OpenSSL library.

Apache Tomcat 7.0.28

Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.