Fix error handling in CRYPTO_get_ex_new_index
authorBernd Edlinger <bernd.edlinger@hotmail.de>
Tue, 19 Sep 2023 18:15:18 +0000 (20:15 +0200)
committerBernd Edlinger <bernd.edlinger@hotmail.de>
Thu, 21 Sep 2023 12:46:01 +0000 (14:46 +0200)
commit8edc82a9f440e1c9fe939945597469e939abd8c6
treeed913b64cc36634ecabfd7991d7dfb8fa3cfcef1
parent7e792574f97d16f2479d0b821552d2059be26694
Fix error handling in CRYPTO_get_ex_new_index

If an out of memory error happens when the index zero
is reserved in a newly created ip->meth stack object,
that reservation is not done in a second attempt, which makes
various X_set_ex_data overwrite the value of X_set_app_data.

Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22149)

(cherry picked from commit d4f22a915ac50570015a23ad794032c4fb9496cb)
crypto/ex_data.c