Mercurial > dropbear
diff libtomcrypt/testprof/modes_test.c @ 382:0cbe8f6dbf9e
propagate from branch 'au.asn.ucc.matt.ltc.dropbear' (head 2af22fb4e878750b88f80f90d439b316d229796f)
to branch 'au.asn.ucc.matt.dropbear' (head 02c413252c90e9de8e03d91e9939dde3029f5c0a)
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Thu, 11 Jan 2007 02:41:05 +0000 |
parents | 1b9e69c058d2 |
children | f849a5ca2efc |
line wrap: on
line diff
--- a/libtomcrypt/testprof/modes_test.c Thu Jan 04 02:01:09 2007 +0000 +++ b/libtomcrypt/testprof/modes_test.c Thu Jan 11 02:41:05 2007 +0000 @@ -5,10 +5,15 @@ { 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 @@ 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 @@ } #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 @@ } #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 @@ } #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 $ */