diff options
author | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2016-12-14 10:52:27 +0100 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2016-12-14 10:55:57 +0100 |
commit | 0991158e093c9e81dfd141fb95db3f4ff161e8d0 (patch) | |
tree | f595b74722a56a83d3a58e2e9dd43af93c9f4b54 | |
parent | db44b0ead6ef32b3f069529f0e6cb13badaa60b3 (diff) | |
download | gnutls-0991158e093c9e81dfd141fb95db3f4ff161e8d0.tar.gz |
_gnutls_pkcs_raw_decrypt_data: merge all errors during decryption to GNUTLS_E_DECRYPTION_FAILED
This makes the function's return values simpler to handle.
-rw-r--r-- | lib/x509/pkcs7-crypt.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/x509/pkcs7-crypt.c b/lib/x509/pkcs7-crypt.c index 0e23f6b73a..968775657e 100644 --- a/lib/x509/pkcs7-crypt.c +++ b/lib/x509/pkcs7-crypt.c @@ -1093,7 +1093,7 @@ _gnutls_pkcs_raw_decrypt_data(schema_id schema, ASN1_TYPE pkcs8_asn, if (ce->type == CIPHER_BLOCK && (enc.size % block_size != 0)) { gnutls_assert(); - ret = GNUTLS_E_ILLEGAL_PARAMETER; + ret = GNUTLS_E_DECRYPTION_FAILED; goto error; } @@ -1121,6 +1121,7 @@ _gnutls_pkcs_raw_decrypt_data(schema_id schema, ASN1_TYPE pkcs8_asn, ret = _gnutls_cipher_decrypt(&ch, enc.data, enc.size); if (ret < 0) { gnutls_assert(); + ret = GNUTLS_E_DECRYPTION_FAILED; goto error; } @@ -1132,7 +1133,7 @@ _gnutls_pkcs_raw_decrypt_data(schema_id schema, ASN1_TYPE pkcs8_asn, if (pslen > block_size || pslen >= enc.size || pslen == 0) { gnutls_assert(); - ret = GNUTLS_E_ILLEGAL_PARAMETER; + ret = GNUTLS_E_DECRYPTION_FAILED; goto error; } @@ -1141,7 +1142,7 @@ _gnutls_pkcs_raw_decrypt_data(schema_id schema, ASN1_TYPE pkcs8_asn, for (i=0;i<pslen;i++) { if (enc.data[enc.size-1-i] != pslen) { gnutls_assert(); - ret = GNUTLS_E_ILLEGAL_PARAMETER; + ret = GNUTLS_E_DECRYPTION_FAILED; goto error; } } |