aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstrongswan/crypto/crypto_tester.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2012-07-05 17:10:17 +0200
committerMartin Willi <martin@revosec.ch>2012-07-16 14:53:32 +0200
commite2ed7bfd22d82617aca4eb91ac4ce5a35cda22d4 (patch)
tree204fe43b5b5d5a1efa0b41ba55206fb8179fd86b /src/libstrongswan/crypto/crypto_tester.c
parent0f236aacb5ae9908ccecd6a87cb755e3e534f194 (diff)
downloadstrongswan-e2ed7bfd22d82617aca4eb91ac4ce5a35cda22d4.tar.bz2
strongswan-e2ed7bfd22d82617aca4eb91ac4ce5a35cda22d4.tar.xz
Add a return value to aead_t.encrypt()
Diffstat (limited to 'src/libstrongswan/crypto/crypto_tester.c')
-rw-r--r--src/libstrongswan/crypto/crypto_tester.c26
1 files changed, 18 insertions, 8 deletions
diff --git a/src/libstrongswan/crypto/crypto_tester.c b/src/libstrongswan/crypto/crypto_tester.c
index 961957056..7ee1a7ab3 100644
--- a/src/libstrongswan/crypto/crypto_tester.c
+++ b/src/libstrongswan/crypto/crypto_tester.c
@@ -317,12 +317,16 @@ static u_int bench_aead(private_crypto_tester_t *this,
start_timing(&start);
while (end_timing(&start) < this->bench_time)
{
- aead->encrypt(aead, buf, chunk_from_thing(assoc),
- chunk_from_thing(iv), NULL);
- runs += 2;
- aead->decrypt(aead, chunk_create(buf.ptr, buf.len + icv),
- chunk_from_thing(assoc), chunk_from_thing(iv), NULL);
- runs += 2;
+ if (aead->encrypt(aead, buf, chunk_from_thing(assoc),
+ chunk_from_thing(iv), NULL))
+ {
+ runs += 2;
+ }
+ if (aead->decrypt(aead, chunk_create(buf.ptr, buf.len + icv),
+ chunk_from_thing(assoc), chunk_from_thing(iv), NULL))
+ {
+ runs += 2;
+ }
}
free(buf.ptr);
aead->destroy(aead);
@@ -377,7 +381,10 @@ METHOD(crypto_tester_t, test_aead, bool,
/* allocated encryption */
plain = chunk_create(vector->plain, vector->len);
- aead->encrypt(aead, plain, assoc, iv, &cipher);
+ if (!aead->encrypt(aead, plain, assoc, iv, &cipher))
+ {
+ failed = TRUE;
+ }
if (!memeq(vector->cipher, cipher.ptr, cipher.len))
{
failed = TRUE;
@@ -405,7 +412,10 @@ METHOD(crypto_tester_t, test_aead, bool,
}
plain.ptr = realloc(plain.ptr, plain.len + icv);
/* inline encryption */
- aead->encrypt(aead, plain, assoc, iv, NULL);
+ if (!aead->encrypt(aead, plain, assoc, iv, NULL))
+ {
+ failed = TRUE;
+ }
if (!memeq(vector->cipher, plain.ptr, plain.len + icv))
{
failed = TRUE;