projects
/
oweals
/
openssl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
d65a8d0
)
Fixed crash (SIGSEGV) when freeing of ex_data stumbles upon a NULL-pointer.
author
Mouse
<mouse008@gmail.com>
Sat, 2 Jan 2016 04:30:02 +0000
(23:30 -0500)
committer
Richard Levitte
<levitte@openssl.org>
Wed, 13 Jan 2016 00:23:34 +0000
(
01:23
+0100)
Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
crypto/ex_data.c
patch
|
blob
|
history
diff --git
a/crypto/ex_data.c
b/crypto/ex_data.c
index f96a51781ab065549a42dc8ece88aeaf551e836d..25e79dc2aa7bbdf3649516bf6f19858824be95cc 100644
(file)
--- a/
crypto/ex_data.c
+++ b/
crypto/ex_data.c
@@
-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)