]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
_gnutls_pkcs_raw_decrypt_data: merge all errors during decryption to GNUTLS_E_DECRYPT...
authorNikos Mavrogiannopoulos <nmav@redhat.com>
Wed, 14 Dec 2016 09:52:27 +0000 (10:52 +0100)
committerNikos Mavrogiannopoulos <nmav@redhat.com>
Wed, 14 Dec 2016 09:55:57 +0000 (10:55 +0100)
This makes the function's return values simpler to handle.

lib/x509/pkcs7-crypt.c

index 0e23f6b73a90f62c48777c352599f8ea19548c12..968775657e2d38458e97d39e08f01e04a1be1460 100644 (file)
@@ -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;
                        }
                }