00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00034 #ifndef __SSL_UTIL_SSL_H__
00035 #define __SSL_UTIL_SSL_H__
00036
00040 #ifdef OPENSSL_VERSION_NUMBER
00041 #define SSL_LIBRARY_VERSION OPENSSL_VERSION_NUMBER
00042 #define SSL_LIBRARY_NAME "OpenSSL"
00043 #define SSL_LIBRARY_TEXT OPENSSL_VERSION_TEXT
00044 #elif !defined(SSL_LIBRARY_VERSION)
00045 #define SSL_LIBRARY_VERSION 0x0000
00046 #define SSL_LIBRARY_NAME "OtherSSL"
00047 #define SSL_LIBRARY_TEXT "OtherSSL 0.0.0 00 XXX 0000"
00048 #endif
00049
00055 #define SSL_SESSION_MAX_DER 1024*10
00056
00058 #define SSL_SESSION_ID_STRING_LEN \
00059 ((SSL_MAX_SSL_SESSION_ID_LENGTH + 1) * 2)
00060
00064 void SSL_init_app_data2_idx(void);
00065 void *SSL_get_app_data2(SSL *);
00066 void SSL_set_app_data2(SSL *, void *);
00067 X509 *SSL_read_X509(char *, X509 **, modssl_read_bio_cb_fn *);
00068 EVP_PKEY *SSL_read_PrivateKey(char *, EVP_PKEY **, modssl_read_bio_cb_fn *, void *);
00069 int SSL_smart_shutdown(SSL *ssl);
00070 X509_STORE *SSL_X509_STORE_create(char *, char *);
00071 int SSL_X509_STORE_lookup(X509_STORE *, int, X509_NAME *, X509_OBJECT *);
00072 char *SSL_make_ciphersuite(apr_pool_t *, SSL *);
00073 BOOL SSL_X509_isSGC(X509 *);
00074 BOOL SSL_X509_getBC(X509 *, int *, int *);
00075 BOOL SSL_X509_getCN(apr_pool_t *, X509 *, char **);
00076 BOOL SSL_X509_INFO_load_file(apr_pool_t *, STACK_OF(X509_INFO) *, const char *);
00077 BOOL SSL_X509_INFO_load_path(apr_pool_t *, STACK_OF(X509_INFO) *, const char *);
00078 int SSL_CTX_use_certificate_chain(SSL_CTX *, char *, int, modssl_read_bio_cb_fn *);
00079 char *SSL_SESSION_id2sz(unsigned char *, int, char *, int);
00080
00082 int modssl_session_get_time(SSL_SESSION *session);
00083
00084 DH *modssl_dh_configure(unsigned char *p, int plen,
00085 unsigned char *g, int glen);
00086
00087 #endif
00088