diff options
author | Pauli <pauli@openssl.org> | 2022-01-10 11:36:24 +1100 |
---|---|---|
committer | Tomas Mraz <tomas@openssl.org> | 2022-11-09 15:31:22 +0100 |
commit | 4c4ac7c7ddb096ca55e231bdc4f70a868746f1e4 (patch) | |
tree | 759542437ebe9e2ed59ce57c2470380b8be03daf /crypto/params_dup.c | |
parent | 584e447377925fbe3c253076ac170483208d9222 (diff) |
param dup: add errors to failure returns
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17440)
(cherry picked from commit a10a576090022e583a06271ceced8e38dd509657)
Reviewed-by: Hugo Landau <hlandau@openssl.org>
Diffstat (limited to 'crypto/params_dup.c')
-rw-r--r-- | crypto/params_dup.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/crypto/params_dup.c b/crypto/params_dup.c index bc1546fc53..fd4764a7cd 100644 --- a/crypto/params_dup.c +++ b/crypto/params_dup.c @@ -105,8 +105,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 +156,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 +174,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); |