summaryrefslogtreecommitdiffstats
path: root/crypto/openssl/test/igetest.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/openssl/test/igetest.c')
-rw-r--r--crypto/openssl/test/igetest.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/crypto/openssl/test/igetest.c b/crypto/openssl/test/igetest.c
index d93428f..a2578d0 100644
--- a/crypto/openssl/test/igetest.c
+++ b/crypto/openssl/test/igetest.c
@@ -190,7 +190,7 @@ static struct bi_ige_test const bi_ige_test_vectors[] = {
static int run_test_vectors(void)
{
- int n;
+ unsigned int n;
int errs = 0;
for(n=0 ; n < sizeof(ige_test_vectors)/sizeof(ige_test_vectors[0]) ; ++n)
@@ -220,6 +220,23 @@ static int run_test_vectors(void)
++errs;
}
+
+ /* try with in == out */
+ memcpy(iv, v->iv, sizeof iv);
+ memcpy(buf, v->in, v->length);
+ AES_ige_encrypt(buf, buf, v->length, &key, iv, v->encrypt);
+
+ if(memcmp(v->out, buf, v->length))
+ {
+ printf("IGE test vector %d failed (with in == out)\n", n);
+ hexdump(stdout, "key", v->key, sizeof v->key);
+ hexdump(stdout, "iv", v->iv, sizeof v->iv);
+ hexdump(stdout, "in", v->in, v->length);
+ hexdump(stdout, "expected", v->out, v->length);
+ hexdump(stdout, "got", buf, v->length);
+
+ ++errs;
+ }
}
for(n=0 ; n < sizeof(bi_ige_test_vectors)/sizeof(bi_ige_test_vectors[0])
@@ -275,7 +292,7 @@ int main(int argc, char **argv)
unsigned char iv[AES_BLOCK_SIZE*4];
unsigned char saved_iv[AES_BLOCK_SIZE*4];
int err = 0;
- int n;
+ unsigned int n;
unsigned matches;
assert(BIG_TEST_SIZE >= TEST_SIZE);
OpenPOWER on IntegriCloud