openssl/engines
Bernd Edlinger 729a1496cc Fix a possible memleak in bind_afalg
bind_afalg calls afalg_aes_cbc which allocates
cipher_handle->_hidden global object(s)
but if one of them fails due to out of memory,
the function bind_afalg relies on the engine destroy
method to be called.  But that does not happen
because the dynamic engine object is not destroyed
in the usual way in dynamic_load in this case:

If the bind_engine function fails, there will be no
further calls into the shared object.
See ./crypto/engine/eng_dyn.c near the comment:
/* Copy the original ENGINE structure back */

Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23409)
2024-01-31 10:30:33 +00:00
..
asm
build.info
e_afalg_err.c
e_afalg_err.h
e_afalg.c Fix a possible memleak in bind_afalg 2024-01-31 10:30:33 +00:00
e_afalg.ec
e_afalg.h
e_afalg.txt
e_capi_err.c
e_capi_err.h
e_capi.c
e_capi.ec
e_capi.txt
e_dasync_err.c
e_dasync_err.h
e_dasync.c
e_dasync.ec
e_dasync.txt
e_devcrypto.c
e_loader_attic_err.c
e_loader_attic_err.h
e_loader_attic.c
e_loader_attic.ec
e_loader_attic.txt
e_ossltest_err.c
e_ossltest_err.h
e_ossltest.c
e_ossltest.ec
e_ossltest.txt
e_padlock.c