cipher: check that ctx_alloc_func is not NULL before calling it
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
diff --git a/library/cipher.c b/library/cipher.c
index 9f9f107..fd04a7d 100644
--- a/library/cipher.c
+++ b/library/cipher.c
@@ -263,7 +263,8 @@
memset(ctx, 0, sizeof(mbedtls_cipher_context_t));
- if (NULL == (ctx->cipher_ctx = mbedtls_cipher_get_base(cipher_info)->ctx_alloc_func())) {
+ if ((mbedtls_cipher_get_base(cipher_info)->ctx_alloc_func != NULL) &&
+ (ctx->cipher_ctx = mbedtls_cipher_get_base(cipher_info)->ctx_alloc_func()) == NULL) {
return MBEDTLS_ERR_CIPHER_ALLOC_FAILED;
}