aboutsummaryrefslogtreecommitdiff
path: root/crypto/params_dup.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/params_dup.c')
-rw-r--r--crypto/params_dup.c21
1 files changed, 11 insertions, 10 deletions
diff --git a/crypto/params_dup.c b/crypto/params_dup.c
index bc1546fc53cb..769629bbf324 100644
--- a/crypto/params_dup.c
+++ b/crypto/params_dup.c
@@ -37,11 +37,8 @@ static int ossl_param_buf_alloc(OSSL_PARAM_BUF *out, size_t extra_blocks,
size_t sz = OSSL_PARAM_ALIGN_SIZE * (extra_blocks + out->blocks);
out->alloc = is_secure ? OPENSSL_secure_zalloc(sz) : OPENSSL_zalloc(sz);
- if (out->alloc == NULL) {
- ERR_raise(ERR_LIB_CRYPTO, is_secure ? CRYPTO_R_SECURE_MALLOC_FAILURE
- : ERR_R_MALLOC_FAILURE);
+ if (out->alloc == NULL)
return 0;
- }
out->alloc_sz = sz;
out->cur = out->alloc + extra_blocks;
return 1;
@@ -105,8 +102,10 @@ OSSL_PARAM *OSSL_PARAM_dup(const OSSL_PARAM *src)
OSSL_PARAM *last, *dst;
int param_count = 1; /* Include terminator in the count */
- if (src == NULL)
+ if (src == NULL) {
+ ERR_raise(ERR_LIB_CRYPTO, ERR_R_PASSED_NULL_PARAMETER);
return NULL;
+ }
memset(buf, 0, sizeof(buf));
@@ -154,8 +153,10 @@ OSSL_PARAM *OSSL_PARAM_merge(const OSSL_PARAM *p1, const OSSL_PARAM *p2)
size_t list1_sz = 0, list2_sz = 0;
int diff;
- if (p1 == NULL && p2 == NULL)
+ if (p1 == NULL && p2 == NULL) {
+ ERR_raise(ERR_LIB_CRYPTO, ERR_R_PASSED_NULL_PARAMETER);
return NULL;
+ }
/* Copy p1 to list1 */
if (p1 != NULL) {
@@ -170,8 +171,10 @@ OSSL_PARAM *OSSL_PARAM_merge(const OSSL_PARAM *p1, const OSSL_PARAM *p2)
list2[list2_sz++] = p;
}
list2[list2_sz] = NULL;
- if (list1_sz == 0 && list2_sz == 0)
+ if (list1_sz == 0 && list2_sz == 0) {
+ ERR_raise(ERR_LIB_CRYPTO, CRYPTO_R_NO_PARAMS_TO_MERGE);
return NULL;
+ }
/* Sort the 2 lists */
qsort(list1, list1_sz, sizeof(OSSL_PARAM *), compare_params);
@@ -179,10 +182,8 @@ OSSL_PARAM *OSSL_PARAM_merge(const OSSL_PARAM *p1, const OSSL_PARAM *p2)
/* Allocate enough space to store the merged parameters */
params = OPENSSL_zalloc((list1_sz + list2_sz + 1) * sizeof(*p1));
- if (params == NULL) {
- ERR_raise(ERR_LIB_CRYPTO, ERR_R_MALLOC_FAILURE);
+ if (params == NULL)
return NULL;
- }
dst = params;
p1cur = list1;
p2cur = list2;