summaryrefslogtreecommitdiffstats
path: root/crypto/params_dup.c
diff options
context:
space:
mode:
authorPauli <pauli@openssl.org>2022-01-10 11:36:24 +1100
committerTomas Mraz <tomas@openssl.org>2022-11-09 15:31:22 +0100
commit4c4ac7c7ddb096ca55e231bdc4f70a868746f1e4 (patch)
tree759542437ebe9e2ed59ce57c2470380b8be03daf /crypto/params_dup.c
parent584e447377925fbe3c253076ac170483208d9222 (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.c12
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);