summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/openssl/ssl.h1
-rw-r--r--ssl/ssl_sess.c6
-rw-r--r--util/libssl.num1
3 files changed, 8 insertions, 0 deletions
diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h
index bf01f60cd3..13dd59c833 100644
--- a/include/openssl/ssl.h
+++ b/include/openssl/ssl.h
@@ -1508,6 +1508,7 @@ __owur long SSL_SESSION_set_timeout(SSL_SESSION *s, long t);
__owur int SSL_SESSION_get_protocol_version(const SSL_SESSION *s);
__owur const char *SSL_SESSION_get0_hostname(const SSL_SESSION *s);
__owur const SSL_CIPHER *SSL_SESSION_get0_cipher(const SSL_SESSION *s);
+__owur int SSL_SESSION_set_cipher(SSL_SESSION *s, const SSL_CIPHER *cipher);
__owur int SSL_SESSION_has_ticket(const SSL_SESSION *s);
__owur unsigned long SSL_SESSION_get_ticket_lifetime_hint(const SSL_SESSION *s);
void SSL_SESSION_get0_ticket(const SSL_SESSION *s, const unsigned char **tick,
diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c
index c7bbc96e4c..2b3d2f770a 100644
--- a/ssl/ssl_sess.c
+++ b/ssl/ssl_sess.c
@@ -863,6 +863,12 @@ const SSL_CIPHER *SSL_SESSION_get0_cipher(const SSL_SESSION *s)
return s->cipher;
}
+int SSL_SESSION_set_cipher(SSL_SESSION *s, const SSL_CIPHER *cipher)
+{
+ s->cipher = cipher;
+ return 1;
+}
+
const char *SSL_SESSION_get0_hostname(const SSL_SESSION *s)
{
return s->ext.hostname;
diff --git a/util/libssl.num b/util/libssl.num
index 25e0750e1a..db5de71995 100644
--- a/util/libssl.num
+++ b/util/libssl.num
@@ -457,3 +457,4 @@ SSL_CTX_set_psk_use_session_callback 457 1_1_1 EXIST::FUNCTION:
SSL_CTX_set_psk_find_session_callback 458 1_1_1 EXIST::FUNCTION:
SSL_CIPHER_get_handshake_digest 459 1_1_1 EXIST::FUNCTION:
SSL_SESSION_set1_master_key 460 1_1_1 EXIST::FUNCTION:
+SSL_SESSION_set_cipher 461 1_1_1 EXIST::FUNCTION: