From 57b30b4bdcc84ad03cea98bd9e30364d8a0cf431 Mon Sep 17 00:00:00 2001 From: Doug MacEachern Date: Wed, 27 Mar 2002 01:28:20 +0000 Subject: [PATCH] add modssl_session_get_time() function to give mod_ssl what it needs from SSL_SESSION_get_time() if using OpenSSL or sslc. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94195 13f79535-47bb-0310-9956-ffa450edef68 --- modules/ssl/mod_ssl.h | 3 +++ modules/ssl/ssl_engine_kernel.c | 2 +- modules/ssl/ssl_util_ssl.c | 12 ++++++++++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/modules/ssl/mod_ssl.h b/modules/ssl/mod_ssl.h index e165bb296b..f6bae69b39 100644 --- a/modules/ssl/mod_ssl.h +++ b/modules/ssl/mod_ssl.h @@ -774,5 +774,8 @@ char *ssl_util_algotypestr(ssl_algo_t); char *ssl_util_ptxtsub(apr_pool_t *, const char *, const char *, char *); void ssl_util_thread_setup(server_rec *, apr_pool_t *); +/* util functions for OpenSSL+sslc compat */ +int modssl_session_get_time(SSL_SESSION *session); + #define APR_SHM_MAXSIZE (64 * 1024 * 1024) #endif /* __MOD_SSL_H__ */ diff --git a/modules/ssl/ssl_engine_kernel.c b/modules/ssl/ssl_engine_kernel.c index 57f91dd318..540f203d54 100644 --- a/modules/ssl/ssl_engine_kernel.c +++ b/modules/ssl/ssl_engine_kernel.c @@ -1601,7 +1601,7 @@ int ssl_callback_NewSessionCacheEntry(SSL *ssl, SSL_SESSION *session) id = SSL_SESSION_get_session_id(session); idlen = SSL_SESSION_get_session_id_length(session); - timeout += SSL_get_time(session); + timeout += modssl_session_get_time(session); rc = ssl_scache_store(s, id, idlen, timeout, session); diff --git a/modules/ssl/ssl_util_ssl.c b/modules/ssl/ssl_util_ssl.c index 8dd4015d6e..d56b4b9394 100644 --- a/modules/ssl/ssl_util_ssl.c +++ b/modules/ssl/ssl_util_ssl.c @@ -550,3 +550,15 @@ char *SSL_SESSION_id2sz(unsigned char *id, int idlen, return str; } +/* sslc+OpenSSL compat */ + +int modssl_session_get_time(SSL_SESSION *session) +{ +#ifdef OPENSSL_VERSION_NUMBER + return SSL_SESSION_get_time(session); +#else /* assume sslc */ + CRYPTO_TIME_T ct; + SSL_SESSION_get_time(session, &ct); + return CRYPTO_time_to_int(&ct); +#endif +} -- 2.50.1