diff options
author | atishkov <a.tishkov@aladdin.ru> | 2023-10-24 14:59:00 +0300 |
---|---|---|
committer | Hugo Landau <hlandau@openssl.org> | 2023-10-26 15:45:06 +0100 |
commit | 4230172a0556e1d99dea9469905d18cb64e7c799 (patch) | |
tree | d87ceebf9158d62310956c86e520f8022390dfcd /ssl | |
parent | 1c03353511238251f48152c09b523322c1de54ad (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.c | 8 |
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); |