Mercurial > dropbear
comparison libtomcrypt/testprof/cipher_hash_test.c @ 285:1b9e69c058d2
propagate from branch 'au.asn.ucc.matt.ltc.dropbear' (head 20dccfc09627970a312d77fb41dc2970b62689c3)
to branch 'au.asn.ucc.matt.dropbear' (head fdf4a7a3b97ae5046139915de7e40399cceb2c01)
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Wed, 08 Mar 2006 13:23:58 +0000 |
parents | |
children | f849a5ca2efc |
comparison
equal
deleted
inserted
replaced
281:997e6f7dc01e | 285:1b9e69c058d2 |
---|---|
1 /* test the ciphers and hashes using their built-in self-tests */ | |
2 | |
3 #include <tomcrypt_test.h> | |
4 | |
5 int cipher_hash_test(void) | |
6 { | |
7 int x; | |
8 unsigned char buf[4096]; | |
9 unsigned long n; | |
10 prng_state nprng; | |
11 | |
12 /* test ciphers */ | |
13 for (x = 0; cipher_descriptor[x].name != NULL; x++) { | |
14 DO(cipher_descriptor[x].test()); | |
15 } | |
16 | |
17 /* test hashes */ | |
18 for (x = 0; hash_descriptor[x].name != NULL; x++) { | |
19 DO(hash_descriptor[x].test()); | |
20 } | |
21 | |
22 /* test prngs (test, import/export */ | |
23 for (x = 0; prng_descriptor[x].name != NULL; x++) { | |
24 DO(prng_descriptor[x].test()); | |
25 DO(prng_descriptor[x].start(&nprng)); | |
26 DO(prng_descriptor[x].add_entropy((unsigned char *)"helloworld12", 12, &nprng)); | |
27 DO(prng_descriptor[x].ready(&nprng)); | |
28 n = sizeof(buf); | |
29 DO(prng_descriptor[x].pexport(buf, &n, &nprng)); | |
30 prng_descriptor[x].done(&nprng); | |
31 DO(prng_descriptor[x].pimport(buf, n, &nprng)); | |
32 DO(prng_descriptor[x].ready(&nprng)); | |
33 if (prng_descriptor[x].read(buf, 100, &nprng) != 100) { | |
34 fprintf(stderr, "Error reading from imported PRNG!\n"); | |
35 exit(EXIT_FAILURE); | |
36 } | |
37 prng_descriptor[x].done(&nprng); | |
38 } | |
39 | |
40 return 0; | |
41 } | |
42 | |
43 /* $Source: /cvs/libtom/libtomcrypt/testprof/cipher_hash_test.c,v $ */ | |
44 /* $Revision: 1.3 $ */ | |
45 /* $Date: 2005/05/05 14:35:59 $ */ |