]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
privkey_sign_and_hash_data: added sanity check on param validity
authorNikos Mavrogiannopoulos <nmav@redhat.com>
Tue, 6 Jun 2017 09:47:09 +0000 (11:47 +0200)
committerNikos Mavrogiannopoulos <nmav@redhat.com>
Mon, 17 Jul 2017 15:08:01 +0000 (17:08 +0200)
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
lib/privkey.c

index 05fd8b362dd0eea7eed472c1826467f5e8af4948..51100f9812b45133c0d0c6a90a924d814992df6f 100644 (file)
@@ -1131,6 +1131,9 @@ privkey_sign_and_hash_data(gnutls_privkey_t signer,
        gnutls_datum_t digest;
        const mac_entry_st *me;
 
+       if (gnutls_pk_to_sign(params->pk, params->dig) == GNUTLS_SIGN_UNKNOWN)
+               return gnutls_assert_val(GNUTLS_E_INVALID_REQUEST);
+
        if (_gnutls_pk_is_not_prehashed(signer->pk_algorithm))
                return privkey_sign_raw_data(signer, data, signature, params);