summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authortb <>2021-09-08 12:56:14 +0000
committertb <>2021-09-08 12:56:14 +0000
commita394d274abf3e2b60889bd0f714d8720c2b5936f (patch)
tree7766cf5b1441a60f7f97d9259e79b6714a13a926 /src/lib
parent81bcc65bf759a3ea0181db3b72dade5269ae35ff (diff)
downloadopenbsd-a394d274abf3e2b60889bd0f714d8720c2b5936f.tar.gz
openbsd-a394d274abf3e2b60889bd0f714d8720c2b5936f.tar.bz2
openbsd-a394d274abf3e2b60889bd0f714d8720c2b5936f.zip
Prepare to provide SSL_get_tlsext_status_type()
Needed for nginx-lua to build with opaque SSL. ok inoguchi jsing
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libssl/s3_lib.c11
-rw-r--r--src/lib/libssl/ssl.h5
-rw-r--r--src/lib/libssl/tls1.h7
3 files changed, 20 insertions, 3 deletions
diff --git a/src/lib/libssl/s3_lib.c b/src/lib/libssl/s3_lib.c
index 6400454f1b..e78b70f0d8 100644
--- a/src/lib/libssl/s3_lib.c
+++ b/src/lib/libssl/s3_lib.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: s3_lib.c,v 1.214 2021/07/26 03:17:38 jsing Exp $ */ 1/* $OpenBSD: s3_lib.c,v 1.215 2021/09/08 12:56:14 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 *
@@ -1809,6 +1809,12 @@ _SSL_set_tlsext_debug_arg(SSL *s, void *arg)
1809} 1809}
1810 1810
1811static int 1811static int
1812_SSL_get_tlsext_status_type(SSL *s)
1813{
1814 return s->tlsext_status_type;
1815}
1816
1817static int
1812_SSL_set_tlsext_status_type(SSL *s, int type) 1818_SSL_set_tlsext_status_type(SSL *s, int type)
1813{ 1819{
1814 s->tlsext_status_type = type; 1820 s->tlsext_status_type = type;
@@ -2034,6 +2040,9 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg)
2034 case SSL_CTRL_SET_TLSEXT_DEBUG_ARG: 2040 case SSL_CTRL_SET_TLSEXT_DEBUG_ARG:
2035 return _SSL_set_tlsext_debug_arg(s, parg); 2041 return _SSL_set_tlsext_debug_arg(s, parg);
2036 2042
2043 case SSL_CTRL_GET_TLSEXT_STATUS_REQ_TYPE:
2044 return _SSL_get_tlsext_status_type(s);
2045
2037 case SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE: 2046 case SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE:
2038 return _SSL_set_tlsext_status_type(s, larg); 2047 return _SSL_set_tlsext_status_type(s, larg);
2039 2048
diff --git a/src/lib/libssl/ssl.h b/src/lib/libssl/ssl.h
index b8cfb771b6..b2a576bf55 100644
--- a/src/lib/libssl/ssl.h
+++ b/src/lib/libssl/ssl.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl.h,v 1.197 2021/09/08 12:32:07 tb Exp $ */ 1/* $OpenBSD: ssl.h,v 1.198 2021/09/08 12:56:14 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 *
@@ -1000,6 +1000,9 @@ int PEM_write_SSL_SESSION(FILE *fp, SSL_SESSION *x);
1000#define SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB 63 1000#define SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB 63
1001#define SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB_ARG 129 1001#define SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB_ARG 129
1002#define SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB_ARG 64 1002#define SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB_ARG 64
1003#if defined(LIBRESSL_INTERNAL)
1004#define SSL_CTRL_GET_TLSEXT_STATUS_REQ_TYPE 127
1005#endif
1003#define SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE 65 1006#define SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE 65
1004#define SSL_CTRL_GET_TLSEXT_STATUS_REQ_EXTS 66 1007#define SSL_CTRL_GET_TLSEXT_STATUS_REQ_EXTS 66
1005#define SSL_CTRL_SET_TLSEXT_STATUS_REQ_EXTS 67 1008#define SSL_CTRL_SET_TLSEXT_STATUS_REQ_EXTS 67
diff --git a/src/lib/libssl/tls1.h b/src/lib/libssl/tls1.h
index 98e158300b..238b202162 100644
--- a/src/lib/libssl/tls1.h
+++ b/src/lib/libssl/tls1.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: tls1.h,v 1.45 2021/06/14 05:32:10 tb Exp $ */ 1/* $OpenBSD: tls1.h,v 1.46 2021/09/08 12:56:14 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 *
@@ -326,6 +326,11 @@ SSL_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_CB,(void (*)(void))cb)
326#define SSL_set_tlsext_debug_arg(ssl, arg) \ 326#define SSL_set_tlsext_debug_arg(ssl, arg) \
327SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_ARG,0, (void *)arg) 327SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_ARG,0, (void *)arg)
328 328
329#if defined(LIBRESSL_INTERNAL)
330#define SSL_get_tlsext_status_type(ssl) \
331SSL_ctrl(ssl, SSL_CTRL_GET_TLSEXT_STATUS_REQ_TYPE, 0, NULL)
332#endif
333
329#define SSL_set_tlsext_status_type(ssl, type) \ 334#define SSL_set_tlsext_status_type(ssl, type) \
330SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE,type, NULL) 335SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE,type, NULL)
331 336