diff options
author | Jiasheng Jiang <jiasheng@iscas.ac.cn> | 2022-02-15 10:46:38 +0800 |
---|---|---|
committer | Tomas Mraz <tomas@openssl.org> | 2022-02-16 11:09:59 +0100 |
commit | 17da5f2af833ef16cc2e431359139a4a2e3775b9 (patch) | |
tree | 50720b70a4863b2e28650514e7a874b30271c64d | |
parent | b926548b362531e8a64e7482c081611fab7183a8 (diff) |
test/helpers/handshake.c: Add check for OPENSSL_strdup
As the potential failure of the memory allocation, the OPENSSL_strdup()
could return NULL pointer and then be assigned to 'server_ctx'.
In order to tell the callers the failure of the configuration, it should
be better to return error.
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17705)
-rw-r--r-- | test/helpers/handshake.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/test/helpers/handshake.c b/test/helpers/handshake.c index 7171f90473..cee11bbc18 100644 --- a/test/helpers/handshake.c +++ b/test/helpers/handshake.c @@ -633,6 +633,8 @@ static int configure_handshake_ctx(SSL_CTX *server_ctx, SSL_CTX *server2_ctx, if (extra->server.session_ticket_app_data != NULL) { server_ctx_data->session_ticket_app_data = OPENSSL_strdup(extra->server.session_ticket_app_data); + if (!TEST_ptr(server_ctx_data->session_ticket_app_data)) + goto err; SSL_CTX_set_session_ticket_cb(server_ctx, generate_session_ticket_cb, decrypt_session_ticket_cb, server_ctx_data); } @@ -641,6 +643,8 @@ static int configure_handshake_ctx(SSL_CTX *server_ctx, SSL_CTX *server2_ctx, goto err; server2_ctx_data->session_ticket_app_data = OPENSSL_strdup(extra->server2.session_ticket_app_data); + if (!TEST_ptr(server2_ctx_data->session_ticket_app_data)) + goto err; SSL_CTX_set_session_ticket_cb(server2_ctx, NULL, decrypt_session_ticket_cb, server2_ctx_data); } |