summaryrefslogtreecommitdiffhomepage
path: root/libtomcrypt/testprof/modes_test.c
diff options
context:
space:
mode:
authorMatt Johnston <matt@ucc.asn.au>2007-02-03 08:20:30 +0000
committerMatt Johnston <matt@ucc.asn.au>2007-02-03 08:20:30 +0000
commitc5fd7dd5548f28e32d846e39d17e5c4de4e769af (patch)
tree81b522e272facfb27ff614936b4988bf6569ef2d /libtomcrypt/testprof/modes_test.c
parent5092e30605dfc5c45990d91cf606990e5c768255 (diff)
parent4a5208512ba02f735acbf7e948ed02353583581e (diff)
merge of '1250b8af44b62d8f4fe0f8d9fc7e7a1cc34e7e1c'
and '7f8670ac3bb975f40967f3979d09d2199b7e90c8' --HG-- extra : convert_revision : 6b61c50f4cf888bea302ac8fcf5dbb573b443251
Diffstat (limited to 'libtomcrypt/testprof/modes_test.c')
-rw-r--r--libtomcrypt/testprof/modes_test.c47
1 files changed, 21 insertions, 26 deletions
diff --git a/libtomcrypt/testprof/modes_test.c b/libtomcrypt/testprof/modes_test.c
index d394267..8999c0d 100644
--- a/libtomcrypt/testprof/modes_test.c
+++ b/libtomcrypt/testprof/modes_test.c
@@ -5,10 +5,15 @@ int modes_test(void)
{
unsigned char pt[64], ct[64], tmp[64], key[16], iv[16], iv2[16];
int cipher_idx;
+#ifdef LTC_CBC_MODE
symmetric_CBC cbc;
+#endif
+#ifdef LTC_CFB_MODE
symmetric_CFB cfb;
+#endif
+#ifdef LTC_OFB_MODE
symmetric_OFB ofb;
- symmetric_CTR ctr;
+#endif
unsigned long l;
/* make a random pt, key and iv */
@@ -23,7 +28,15 @@ int modes_test(void)
return 1;
}
-#ifdef CBC
+#ifdef LTC_F8_MODE
+ DO(f8_test_mode());
+#endif
+
+#ifdef LTC_LRW_MODE
+ DO(lrw_test());
+#endif
+
+#ifdef LTC_CBC_MODE
/* test CBC mode */
/* encode the block */
DO(cbc_start(cipher_idx, iv, key, 16, 0, &cbc));
@@ -45,7 +58,7 @@ int modes_test(void)
}
#endif
-#ifdef CFB
+#ifdef LTC_CFB_MODE
/* test CFB mode */
/* encode the block */
DO(cfb_start(cipher_idx, iv, key, 16, 0, &cfb));
@@ -68,7 +81,7 @@ int modes_test(void)
}
#endif
-#ifdef OFB
+#ifdef LTC_OFB_MODE
/* test OFB mode */
/* encode the block */
DO(ofb_start(cipher_idx, iv, key, 16, 0, &ofb));
@@ -90,31 +103,13 @@ int modes_test(void)
}
#endif
-#ifdef CTR
- /* test CTR mode */
- /* encode the block */
- DO(ctr_start(cipher_idx, iv, key, 16, 0, CTR_COUNTER_LITTLE_ENDIAN, &ctr));
- l = sizeof(iv2);
- DO(ctr_getiv(iv2, &l, &ctr));
- if (l != 16 || memcmp(iv2, iv, 16)) {
- fprintf(stderr, "ctr_getiv failed");
- return 1;
- }
- DO(ctr_encrypt(pt, ct, 57, &ctr));
-
- /* decode the block */
- DO(ctr_setiv(iv2, l, &ctr));
- zeromem(tmp, sizeof(tmp));
- DO(ctr_decrypt(ct, tmp, 57, &ctr));
- if (memcmp(tmp, pt, 57) != 0) {
- fprintf(stderr, "CTR failed");
- return 1;
- }
+#ifdef LTC_CTR_MODE
+ DO(ctr_test());
#endif
return 0;
}
/* $Source: /cvs/libtom/libtomcrypt/testprof/modes_test.c,v $ */
-/* $Revision: 1.6 $ */
-/* $Date: 2005/05/21 12:51:25 $ */
+/* $Revision: 1.14 $ */
+/* $Date: 2006/11/13 11:55:25 $ */