12345678910111213141516171819202122232425262728293031323334353637 |
- #ifndef _DIGEST_TEST_H
- #define _DIGEST_TEST_H
-
- FILE_LICENCE ( GPL2_OR_LATER );
-
- #include <stdint.h>
- #include <ipxe/crypto.h>
- #include <ipxe/test.h>
-
- /** Maximum number of digest test fragments */
- #define NUM_DIGEST_TEST_FRAG 8
-
- /** A digest test fragment list */
- struct digest_test_fragments {
- /** Fragment lengths */
- size_t len[NUM_DIGEST_TEST_FRAG];
- };
-
- extern int digest_test ( struct digest_algorithm *digest,
- struct digest_test_fragments *fragments,
- void *data, size_t len, void *expected );
- extern unsigned long digest_cost ( struct digest_algorithm *digest );
-
- /**
- * Report digest test result
- *
- * @v digest Digest algorithm
- * @v fragments Digest test fragment list, or NULL
- * @v data Test data
- * @v len Length of test data
- * @v expected Expected digest value
- */
- #define digest_ok( digest, fragments, data, len, expected ) do { \
- ok ( digest_test ( digest, fragments, data, len, expected ) ); \
- } while ( 0 )
-
- #endif /* _DIGEST_TEST_H */
|