diff --git a/configure.ac b/configure.ac index 6e1dce91c..f1fdac7a7 100644 --- a/configure.ac +++ b/configure.ac @@ -587,6 +587,7 @@ if test "$ENABLED_OPENSSLEXTRA" = "yes" && test "x$ENABLED_OPENSSLCOEXIST" = "xn then AM_CFLAGS="-DOPENSSL_EXTRA -DWOLFSSL_ALWAYS_VERIFY_CB $AM_CFLAGS" AM_CFLAGS="-DWOLFSSL_VERIFY_CB_ALL_CERTS -DWOLFSSL_EXTRA_ALERTS $AM_CFLAGS" + AM_CFLAGS="-DHAVE_EXT_CACHE $AM_CFLAGS" fi if test "$ENABLED_OPENSSLEXTRA" = "yes" && test "$ENABLED_SMALL" = "yes" diff --git a/src/ssl.c b/src/ssl.c index f95ec4f1b..3ba07f14c 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -16696,19 +16696,6 @@ size_t wolfSSL_get_client_random(const WOLFSSL* ssl, unsigned char* out, return WOLFSSL_SUCCESS; } - long wolfSSL_SSL_SESSION_set_timeout(WOLFSSL_SESSION* ses, long t) - { - word32 tmptime; - if (!ses || t < 0) - return BAD_FUNC_ARG; - - tmptime = t & 0xFFFFFFFF; - - ses->timeout = tmptime; - - return WOLFSSL_SUCCESS; - } - #endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL */ #if defined(OPENSSL_EXTRA) || defined(HAVE_WEBSERVER) @@ -27019,9 +27006,6 @@ void wolfSSL_CTX_sess_set_new_cb(WOLFSSL_CTX* ctx, #endif } -#endif /* OPENSSL_EXTRA || HAVE_EXT_CACHE */ - -#if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) void wolfSSL_CTX_sess_set_remove_cb(WOLFSSL_CTX* ctx, void (*f)(WOLFSSL_CTX*, WOLFSSL_SESSION*)) { @@ -27034,9 +27018,7 @@ void wolfSSL_CTX_sess_set_remove_cb(WOLFSSL_CTX* ctx, void (*f)(WOLFSSL_CTX*, (void)f; #endif } -#endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL */ -#ifdef OPENSSL_EXTRA /* * @@ -27409,7 +27391,9 @@ end: return s; } +#endif /* OPENSSL_EXTRA || HAVE_EXT_CACHE */ +#if defined(OPENSSL_EXTRA) || defined(HAVE_EXT_CACHE) long wolfSSL_SESSION_get_timeout(const WOLFSSL_SESSION* sess) { long timeout = 0; @@ -27429,8 +27413,20 @@ long wolfSSL_SESSION_get_time(const WOLFSSL_SESSION* sess) return bornOn; } +long wolfSSL_SSL_SESSION_set_timeout(WOLFSSL_SESSION* ses, long t) +{ + word32 tmptime; + if (!ses || t < 0) + return BAD_FUNC_ARG; -#endif /* OPENSSL_EXTRA */ + tmptime = t & 0xFFFFFFFF; + + ses->timeout = tmptime; + + return WOLFSSL_SUCCESS; +} + +#endif /* OPENSSL_EXTRA || HAVE_EXT_CACHE */ #ifdef KEEP_PEER_CERT diff --git a/tests/api.c b/tests/api.c index 048bea8d1..353805885 100644 --- a/tests/api.c +++ b/tests/api.c @@ -25900,7 +25900,7 @@ static void test_wolfSSL_BIO_f_md(void) static void test_wolfSSL_SESSION(void) { -#if defined(OPENSSL_EXTRA) && !defined(NO_FILESYSTEM) && !defined(NO_CERTS) && \ +#if !defined(NO_FILESYSTEM) && !defined(NO_CERTS) && \ !defined(NO_RSA) && defined(HAVE_EXT_CACHE) && \ defined(HAVE_IO_TESTS_DEPENDENCIES) @@ -25908,10 +25908,12 @@ static void test_wolfSSL_SESSION(void) WOLFSSL_CTX* ctx; WOLFSSL_SESSION* sess; WOLFSSL_SESSION* sess_copy; - const unsigned char context[] = "user app context"; unsigned char* sessDer = NULL; unsigned char* ptr = NULL; +#ifdef OPENSSL_EXTRA + const unsigned char context[] = "user app context"; unsigned int contextSz = (unsigned int)sizeof(context); +#endif int ret, err, sockfd, sz; tcp_ready ready; func_args server_args; @@ -26040,6 +26042,7 @@ static void test_wolfSSL_SESSION(void) } #endif +#ifdef OPENSSL_EXTRA /* fail case with miss match session context IDs (use compatibility API) */ AssertIntEQ(SSL_set_session_id_context(ssl, context, contextSz), SSL_SUCCESS); @@ -26051,6 +26054,7 @@ static void test_wolfSSL_SESSION(void) SSL_SUCCESS); AssertNotNull(ssl = wolfSSL_new(ctx)); AssertIntEQ(wolfSSL_set_session(ssl, sess), SSL_FAILURE); +#endif wolfSSL_free(ssl); SSL_SESSION_free(sess);