Fixed crash (SIGSEGV) when freeing of ex_data stumbles upon a NULL-pointer.
Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
This commit is contained in:
parent
d65a8d0b7e
commit
ad81ca9061
@ -522,8 +522,9 @@ static void int_free_ex_data(int class_index, void *obj, CRYPTO_EX_DATA *ad)
|
||||
for (i = 0; i < mx; i++) {
|
||||
if (storage[i] && storage[i]->free_func) {
|
||||
ptr = CRYPTO_get_ex_data(ad, i);
|
||||
storage[i]->free_func(obj, ptr, ad, i,
|
||||
storage[i]->argl, storage[i]->argp);
|
||||
if (ptr)
|
||||
storage[i]->free_func(obj, ptr, ad, i,
|
||||
storage[i]->argl, storage[i]->argp);
|
||||
}
|
||||
}
|
||||
if (storage)
|
||||
|
Loading…
x
Reference in New Issue
Block a user