summaryrefslogtreecommitdiffstats
path: root/ssl
diff options
context:
space:
mode:
authoratishkov <a.tishkov@aladdin.ru>2023-10-24 14:59:00 +0300
committerHugo Landau <hlandau@openssl.org>2023-10-26 15:45:06 +0100
commit4230172a0556e1d99dea9469905d18cb64e7c799 (patch)
treed87ceebf9158d62310956c86e520f8022390dfcd /ssl
parent1c03353511238251f48152c09b523322c1de54ad (diff)
ssl_lib: added pointer SSL_CONNECTION check to NULL before dereferencing it in ossl_ctrl_internal()
Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/22470) (cherry picked from commit 8dc82c02559545fabe15fd95d55623f4f7fc0f08)
Diffstat (limited to 'ssl')
-rw-r--r--ssl/ssl_lib.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c
index d2394ee0db..5314e1ec0d 100644
--- a/ssl/ssl_lib.c
+++ b/ssl/ssl_lib.c
@@ -2906,8 +2906,9 @@ long SSL_ctrl(SSL *s, int cmd, long larg, void *parg)
long ossl_ctrl_internal(SSL *s, int cmd, long larg, void *parg, int no_quic)
{
long l;
+ SSL_CONNECTION *sc = SSL_CONNECTION_FROM_SSL(s);
- if (s == NULL)
+ if (sc == NULL)
return 0;
/*
@@ -2928,11 +2929,6 @@ long ossl_ctrl_internal(SSL *s, int cmd, long larg, void *parg, int no_quic)
if (!no_quic && IS_QUIC(s))
return s->method->ssl_ctrl(s, cmd, larg, parg);
- SSL_CONNECTION *sc = SSL_CONNECTION_FROM_SSL(s);
-
- if (sc == NULL)
- return 0;
-
switch (cmd) {
case SSL_CTRL_GET_READ_AHEAD:
return RECORD_LAYER_get_read_ahead(&sc->rlayer);