X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fex_data.c;fp=crypto%2Fex_data.c;h=c1467a51dc649b75907fc719d9d95d2227634527;hp=cc9ebc36f46c8ad53a99b2eaab3a4be4225b3b38;hb=225c9660a5a3435d9bcfc9166b9f79f132996249;hpb=89b46350a322f85924d1226f7c149e4e068d0264 diff --git a/crypto/ex_data.c b/crypto/ex_data.c index cc9ebc36f4..c1467a51dc 100644 --- a/crypto/ex_data.c +++ b/crypto/ex_data.c @@ -445,7 +445,11 @@ int CRYPTO_set_ex_data(CRYPTO_EX_DATA *ad, int idx, void *val) return 0; } } - sk_void_set(ad->sk, idx, val); + if (sk_void_set(ad->sk, idx, val) != val) { + /* Probably the index is out of bounds */ + CRYPTOerr(CRYPTO_F_CRYPTO_SET_EX_DATA, ERR_R_PASSED_INVALID_ARGUMENT); + return 0; + } return 1; }