meta-hash-test.c 800 Bytes
Newer Older
1
#include "testutils.h"
2
#include "nettle-internal.h"
3
#include "nettle-meta.h"
4
5
/* For NETTLE_MAX_HASH_CONTEXT_SIZE */
#include "sha3.h"
6
7
8
9
10

const char* hashes[] = {
  "md2",
  "md4",
  "md5",
11
  "ripemd160",
12
13
14
15
  "sha1",
  "sha224",
  "sha256",
  "sha384",
16
17
18
19
20
  "sha512",
  "sha3_224",
  "sha3_256",
  "sha3_384",
  "sha3_512",
21
22
};

23
void
24
25
test_main(void)
{
Niels Möller's avatar
Niels Möller committed
26
  int i;
27
28
  int count = sizeof(hashes)/sizeof(*hashes);
  for (i = 0; i < count; i++) {
Niels Möller's avatar
Niels Möller committed
29
30
    /* make sure we found a matching hash */
    ASSERT(nettle_lookup_hash(hashes[i]) != NULL);
31
  }
Niels Möller's avatar
Niels Möller committed
32

33
  for (i = 0; NULL != nettle_hashes[i]; i++) {
Niels Möller's avatar
Niels Möller committed
34
    ASSERT(nettle_hashes[i]->digest_size <= NETTLE_MAX_HASH_DIGEST_SIZE);
35
    ASSERT(nettle_hashes[i]->context_size <= NETTLE_MAX_HASH_CONTEXT_SIZE);
36
  }
37
  ASSERT(i == count); /* we are not missing testing any hashes */
38
}