summaryrefslogtreecommitdiff
path: root/tests/basic.c
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>2008-04-22 10:25:35 +0000
committerWerner Koch <wk@gnupg.org>2008-04-22 10:25:35 +0000
commitc9a31c6d9334def7502bfd76f9953c89b0df51b7 (patch)
tree601b7280f1db4e816976994568796b224d4faf0c /tests/basic.c
parent8559c656de0c2de6013c7d705bc8fe175a6a7abb (diff)
downloadlibgcrypt-c9a31c6d9334def7502bfd76f9953c89b0df51b7.tar.gz
Preapring a release candidate
Diffstat (limited to 'tests/basic.c')
-rw-r--r--tests/basic.c35
1 files changed, 32 insertions, 3 deletions
diff --git a/tests/basic.c b/tests/basic.c
index abaebfee..3132e5d4 100644
--- a/tests/basic.c
+++ b/tests/basic.c
@@ -945,10 +945,39 @@ check_one_cipher (int algo, int mode, int flags)
return;
}
- gcry_cipher_close (hd);
-
if (memcmp (plain, in, 16))
fail ("algo %d, mode %d, encrypt-decrypt mismatch\n", algo, mode);
+
+ /* Again, using in-place encryption. */
+ gcry_cipher_reset (hd);
+
+ memcpy (out, plain, 16);
+ err = gcry_cipher_encrypt (hd, out, 16, NULL, 0);
+ if (err)
+ {
+ fail ("algo %d, mode %d, in-place, gcry_cipher_encrypt failed: %s\n",
+ algo, mode, gpg_strerror (err));
+ gcry_cipher_close (hd);
+ return;
+ }
+
+ gcry_cipher_reset (hd);
+
+ err = gcry_cipher_decrypt (hd, out, 16, NULL, 0);
+ if (err)
+ {
+ fail ("algo %d, mode %d, in-place, gcry_cipher_decrypt failed: %s\n",
+ algo, mode, gpg_strerror (err));
+ gcry_cipher_close (hd);
+ return;
+ }
+
+ if (memcmp (plain, out, 16))
+ fail ("algo %d, mode %d, in-place, encrypt-decrypt mismatch\n",algo, mode);
+
+
+ gcry_cipher_close (hd);
+
}
@@ -1263,7 +1292,7 @@ check_digests (void)
if (verbose)
fprintf (stderr, "Starting hash checks.\n");
- for (i = 0; i < 1 && algos[i].md; i++)
+ for (i = 0; algos[i].md; i++)
{
if (verbose)
fprintf (stderr, " checking %s [%i] for length %zi\n",