mirror of
https://github.com/apache/httpd.git
synced 2025-08-08 15:02:10 +03:00
add configure checks for ssl functions:
-SSL_set_state: macro in OpenSSL, might be a function in a patched sslc -SSL_set_cert_store: patch submitted to OpenSSL, might be applied to OpenSSL or sslc git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94223 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@@ -78,6 +78,8 @@ ssl_util_table.lo dnl
|
|||||||
dnl # hook module into the Autoconf mechanism (--enable-ssl option)
|
dnl # hook module into the Autoconf mechanism (--enable-ssl option)
|
||||||
APACHE_MODULE(ssl, [SSL/TLS support (mod_ssl)], $ssl_objs, , no, [
|
APACHE_MODULE(ssl, [SSL/TLS support (mod_ssl)], $ssl_objs, , no, [
|
||||||
APACHE_CHECK_SSL_TOOLKIT
|
APACHE_CHECK_SSL_TOOLKIT
|
||||||
|
AC_CHECK_FUNCS(SSL_set_state)
|
||||||
|
AC_CHECK_FUNCS(SSL_set_cert_store)
|
||||||
])
|
])
|
||||||
|
|
||||||
dnl # end of module specific part
|
dnl # end of module specific part
|
||||||
|
@@ -665,6 +665,12 @@ const char *ssl_cmd_SSLCertificateChainFile(cmd_parms *cmd, void *ctx,
|
|||||||
#define NO_PER_DIR_SSL_CA \
|
#define NO_PER_DIR_SSL_CA \
|
||||||
"Your ssl library does not have support for per-directory CA"
|
"Your ssl library does not have support for per-directory CA"
|
||||||
|
|
||||||
|
#ifdef HAVE_SSL_SET_CERT_STORE
|
||||||
|
# define MODSSL_HAVE_SSL_SET_CERT_STORE 1
|
||||||
|
#else
|
||||||
|
# define MODSSL_HAVE_SSL_SET_CERT_STORE 0
|
||||||
|
#endif
|
||||||
|
|
||||||
#define MODSSL_SET_CA(f) \
|
#define MODSSL_SET_CA(f) \
|
||||||
if (cmd->path) \
|
if (cmd->path) \
|
||||||
if (MODSSL_HAVE_SSL_SET_CERT_STORE) \
|
if (MODSSL_HAVE_SSL_SET_CERT_STORE) \
|
||||||
|
@@ -578,7 +578,7 @@ int ssl_hook_Access(request_rec *r)
|
|||||||
* used SSL_CTX_set_cert_store which is not thread safe.
|
* used SSL_CTX_set_cert_store which is not thread safe.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if MODSSL_HAVE_SSL_SET_CERT_STORE
|
#ifdef HAVE_SSL_SET_CERT_STORE
|
||||||
/*
|
/*
|
||||||
* check if per-dir and per-server config field are not the same.
|
* check if per-dir and per-server config field are not the same.
|
||||||
* if f is defined in per-dir and not defined in per-server
|
* if f is defined in per-dir and not defined in per-server
|
||||||
@@ -629,7 +629,7 @@ int ssl_hook_Access(request_rec *r)
|
|||||||
"Changed client verification locations "
|
"Changed client verification locations "
|
||||||
"will force renegotiation");
|
"will force renegotiation");
|
||||||
}
|
}
|
||||||
#endif /* MODSSL_HAVE_SSL_SET_CERT_STORE */
|
#endif /* HAVE_SSL_SET_CERT_STORE */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* SSL renegotiations in conjunction with HTTP
|
* SSL renegotiations in conjunction with HTTP
|
||||||
|
@@ -78,9 +78,8 @@
|
|||||||
#define modssl_PEM_read_bio_PrivateKey(b, k, cb, arg) \
|
#define modssl_PEM_read_bio_PrivateKey(b, k, cb, arg) \
|
||||||
PEM_read_bio_PrivateKey(b, k, cb)
|
PEM_read_bio_PrivateKey(b, k, cb)
|
||||||
|
|
||||||
/* XXX: add configure check */
|
|
||||||
#ifndef HAVE_SSL_SET_STATE
|
#ifndef HAVE_SSL_SET_STATE
|
||||||
#define SSL_set_state(ssl, state)
|
#define SSL_set_state(ssl, state) /* XXX: should throw an error */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define modssl_set_cipher_list(ssl, l) \
|
#define modssl_set_cipher_list(ssl, l) \
|
||||||
|
Reference in New Issue
Block a user