iPXE
|
Digest self-tests. More...
#include <stdlib.h>
#include <string.h>
#include <ipxe/crypto.h>
#include <ipxe/profile.h>
#include "digest_test.h"
Go to the source code of this file.
Data Structures | |
struct | digest_test_fragments |
A digest test fragment list. More... | |
Macros | |
#define | NUM_DIGEST_TEST_FRAG 8 |
Maximum number of digest test fragments. More... | |
#define | PROFILE_COUNT 16 |
Number of sample iterations for profiling. More... | |
Functions | |
FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
void | digest_frag_okx (struct digest_test *test, struct digest_test_fragments *fragments, const char *file, unsigned int line) |
Report a digest fragmented test result. More... | |
void | digest_okx (struct digest_test *test, const char *file, unsigned int line) |
Report a digest test result. More... | |
unsigned long | digest_cost (struct digest_algorithm *digest) |
Calculate digest algorithm cost. More... | |
Variables | |
static struct digest_test_fragments | digest_test_fragments [] |
Digest test fragment lists. More... | |
Digest self-tests.
Definition in file digest_test.c.
#define NUM_DIGEST_TEST_FRAG 8 |
Maximum number of digest test fragments.
Definition at line 42 of file digest_test.c.
#define PROFILE_COUNT 16 |
Number of sample iterations for profiling.
Definition at line 58 of file digest_test.c.
FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
void digest_frag_okx | ( | struct digest_test * | test, |
struct digest_test_fragments * | fragments, | ||
const char * | file, | ||
unsigned int | line | ||
) |
Report a digest fragmented test result.
test | Digest test |
fragments | Fragment list |
file | Test code file |
line | Test code line |
Definition at line 68 of file digest_test.c.
References ctx, digest_algorithm::ctxsize, data, digest_final(), digest_init(), digest_update(), digest_algorithm::digestsize, len, digest_test_fragments::len, memcmp(), okx, out, and test.
Referenced by digest_okx().
void digest_okx | ( | struct digest_test * | test, |
const char * | file, | ||
unsigned int | line | ||
) |
Report a digest test result.
test | Digest test |
file | Test code file |
line | Test code line |
Definition at line 111 of file digest_test.c.
References digest_frag_okx(), digest_test_fragments, NULL, and test.
unsigned long digest_cost | ( | struct digest_algorithm * | digest | ) |
Calculate digest algorithm cost.
digest | Digest algorithm |
cost | Cost (in cycles per byte) |
Definition at line 131 of file digest_test.c.
References cost, ctx, digest_algorithm::ctxsize, digest_final(), digest_init(), digest_update(), digest_algorithm::digestsize, memset(), out, PROFILE_COUNT, profile_mean(), profile_start(), profile_stop(), rand(), random(), and srand().
Referenced by md4_test_exec(), md5_test_exec(), sha1_test_exec(), sha256_test_exec(), and sha512_test_exec().
|
static |
Digest test fragment lists.
Definition at line 51 of file digest_test.c.
Referenced by digest_okx().