summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortb <>2025-10-24 11:36:08 +0000
committertb <>2025-10-24 11:36:08 +0000
commitda2e8f3e57cf705fb1f88e94e321027a68cb42cf (patch)
treedadddb411b346e9858b543a4dc09434e44cd8dce /src
parent9ea098f3616b1e68dff3cd8a9b2d0d4f929bfd2d (diff)
downloadopenbsd-da2e8f3e57cf705fb1f88e94e321027a68cb42cf.tar.gz
openbsd-da2e8f3e57cf705fb1f88e94e321027a68cb42cf.tar.bz2
openbsd-da2e8f3e57cf705fb1f88e94e321027a68cb42cf.zip
Provide SSL_SESSION_dup()
As reported by ajacoutot and sthen, an update to net/neon is blocked on that missing symbol. ok kenjiro
Diffstat (limited to '')
-rw-r--r--src/lib/libssl/Symbols.list1
-rw-r--r--src/lib/libssl/hidden/openssl/ssl.h3
-rw-r--r--src/lib/libssl/ssl.h3
-rw-r--r--src/lib/libssl/ssl_sess.c9
4 files changed, 13 insertions, 3 deletions
diff --git a/src/lib/libssl/Symbols.list b/src/lib/libssl/Symbols.list
index 65cd3e7f86..0d82c7c726 100644
--- a/src/lib/libssl/Symbols.list
+++ b/src/lib/libssl/Symbols.list
@@ -137,6 +137,7 @@ SSL_CTX_use_certificate_ASN1
137SSL_CTX_use_certificate_chain_file 137SSL_CTX_use_certificate_chain_file
138SSL_CTX_use_certificate_chain_mem 138SSL_CTX_use_certificate_chain_mem
139SSL_CTX_use_certificate_file 139SSL_CTX_use_certificate_file
140SSL_SESSION_dup
140SSL_SESSION_free 141SSL_SESSION_free
141SSL_SESSION_get0_cipher 142SSL_SESSION_get0_cipher
142SSL_SESSION_get0_id_context 143SSL_SESSION_get0_id_context
diff --git a/src/lib/libssl/hidden/openssl/ssl.h b/src/lib/libssl/hidden/openssl/ssl.h
index b854dd7b73..b010488d7f 100644
--- a/src/lib/libssl/hidden/openssl/ssl.h
+++ b/src/lib/libssl/hidden/openssl/ssl.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl.h,v 1.9 2024/08/31 10:51:48 tb Exp $ */ 1/* $OpenBSD: ssl.h,v 1.10 2025/10/24 11:36:08 tb Exp $ */
2/* 2/*
3 * Copyright (c) 2023 Bob Beck <beck@openbsd.org> 3 * Copyright (c) 2023 Bob Beck <beck@openbsd.org>
4 * 4 *
@@ -182,6 +182,7 @@ LSSL_USED(SSL_SESSION_set1_id_context);
182LSSL_USED(SSL_SESSION_is_resumable); 182LSSL_USED(SSL_SESSION_is_resumable);
183LSSL_USED(SSL_SESSION_new); 183LSSL_USED(SSL_SESSION_new);
184LSSL_USED(SSL_SESSION_free); 184LSSL_USED(SSL_SESSION_free);
185LSSL_USED(SSL_SESSION_dup);
185LSSL_USED(SSL_SESSION_up_ref); 186LSSL_USED(SSL_SESSION_up_ref);
186LSSL_USED(SSL_SESSION_get_id); 187LSSL_USED(SSL_SESSION_get_id);
187LSSL_USED(SSL_SESSION_get0_id_context); 188LSSL_USED(SSL_SESSION_get0_id_context);
diff --git a/src/lib/libssl/ssl.h b/src/lib/libssl/ssl.h
index e8a11ebdb9..48cb6256df 100644
--- a/src/lib/libssl/ssl.h
+++ b/src/lib/libssl/ssl.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl.h,v 1.248 2025/04/18 07:34:01 tb Exp $ */ 1/* $OpenBSD: ssl.h,v 1.249 2025/10/24 11:36:08 tb Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -1199,6 +1199,7 @@ int SSL_SESSION_is_resumable(const SSL_SESSION *s);
1199 1199
1200SSL_SESSION *SSL_SESSION_new(void); 1200SSL_SESSION *SSL_SESSION_new(void);
1201void SSL_SESSION_free(SSL_SESSION *ses); 1201void SSL_SESSION_free(SSL_SESSION *ses);
1202SSL_SESSION *SSL_SESSION_dup(const SSL_SESSION *src);
1202int SSL_SESSION_up_ref(SSL_SESSION *ss); 1203int SSL_SESSION_up_ref(SSL_SESSION *ss);
1203const unsigned char *SSL_SESSION_get_id(const SSL_SESSION *ss, 1204const unsigned char *SSL_SESSION_get_id(const SSL_SESSION *ss,
1204 unsigned int *len); 1205 unsigned int *len);
diff --git a/src/lib/libssl/ssl_sess.c b/src/lib/libssl/ssl_sess.c
index f2ef124e1e..7f16061b48 100644
--- a/src/lib/libssl/ssl_sess.c
+++ b/src/lib/libssl/ssl_sess.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_sess.c,v 1.130 2025/10/24 09:23:06 tb Exp $ */ 1/* $OpenBSD: ssl_sess.c,v 1.131 2025/10/24 11:36:08 tb Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -345,6 +345,13 @@ ssl_session_dup(const SSL_SESSION *sess, int include_ticket)
345 return NULL; 345 return NULL;
346} 346}
347 347
348SSL_SESSION *
349SSL_SESSION_dup(const SSL_SESSION *src)
350{
351 return ssl_session_dup(src, 1);
352}
353LSSL_ALIAS(SSL_SESSION_dup);
354
348const unsigned char * 355const unsigned char *
349SSL_SESSION_get_id(const SSL_SESSION *ss, unsigned int *len) 356SSL_SESSION_get_id(const SSL_SESSION *ss, unsigned int *len)
350{ 357{