GnuTLS: Add TEST_FAIL() to crypto routines for testing purposes

This allows number of hwsim test cases for local error conditions to be
executed with GnuTLS-based builds.

Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2017-12-28 12:33:02 +02:00
parent f8697e8109
commit 622d4d49e2

View file

@ -24,6 +24,9 @@ static int gnutls_digest_vector(int algo, size_t num_elem,
unsigned char *p; unsigned char *p;
size_t i; size_t i;
if (TEST_FAIL())
return -1;
if (gcry_md_open(&hd, algo, 0) != GPG_ERR_NO_ERROR) if (gcry_md_open(&hd, algo, 0) != GPG_ERR_NO_ERROR)
return -1; return -1;
for (i = 0; i < num_elem; i++) for (i = 0; i < num_elem; i++)
@ -103,6 +106,9 @@ static int gnutls_hmac_vector(int algo, const u8 *key, size_t key_len,
unsigned char *p; unsigned char *p;
size_t i; size_t i;
if (TEST_FAIL())
return -1;
if (gcry_md_open(&hd, algo, GCRY_MD_FLAG_HMAC) != GPG_ERR_NO_ERROR) if (gcry_md_open(&hd, algo, GCRY_MD_FLAG_HMAC) != GPG_ERR_NO_ERROR)
return -1; return -1;
if (gcry_md_setkey(hd, key, key_len) != GPG_ERR_NO_ERROR) { if (gcry_md_setkey(hd, key, key_len) != GPG_ERR_NO_ERROR) {
@ -210,6 +216,9 @@ void * aes_encrypt_init(const u8 *key, size_t len)
{ {
gcry_cipher_hd_t hd; gcry_cipher_hd_t hd;
if (TEST_FAIL())
return NULL;
if (gcry_cipher_open(&hd, GCRY_CIPHER_AES, GCRY_CIPHER_MODE_ECB, 0) != if (gcry_cipher_open(&hd, GCRY_CIPHER_AES, GCRY_CIPHER_MODE_ECB, 0) !=
GPG_ERR_NO_ERROR) { GPG_ERR_NO_ERROR) {
printf("cipher open failed\n"); printf("cipher open failed\n");
@ -244,6 +253,9 @@ void * aes_decrypt_init(const u8 *key, size_t len)
{ {
gcry_cipher_hd_t hd; gcry_cipher_hd_t hd;
if (TEST_FAIL())
return NULL;
if (gcry_cipher_open(&hd, GCRY_CIPHER_AES, GCRY_CIPHER_MODE_ECB, 0) != if (gcry_cipher_open(&hd, GCRY_CIPHER_AES, GCRY_CIPHER_MODE_ECB, 0) !=
GPG_ERR_NO_ERROR) GPG_ERR_NO_ERROR)
return NULL; return NULL;