diff options
Diffstat (limited to 'random')
-rw-r--r-- | random/random-drbg.c | 23 | ||||
-rw-r--r-- | random/random.h | 29 |
2 files changed, 16 insertions, 36 deletions
diff --git a/random/random-drbg.c b/random/random-drbg.c index f45a0c99..a73aacb0 100644 --- a/random/random-drbg.c +++ b/random/random-drbg.c @@ -2338,7 +2338,7 @@ struct gcry_drbg_test_vector drbg_test_nopr[] = { * call for the CAVS test tool. */ gpg_err_code_t -gcry_rngdrbg_cavs_test (struct gcry_drbg_test_vector *test, unsigned char *buf) +_gcry_rngdrbg_cavs_test (struct gcry_drbg_test_vector *test, unsigned char *buf) { gpg_err_code_t ret = 0; drbg_state_t drbg = NULL; @@ -2414,14 +2414,15 @@ gcry_rngdrbg_cavs_test (struct gcry_drbg_test_vector *test, unsigned char *buf) * call for the CAVS test tool. */ gpg_err_code_t -gcry_rngdrbg_healthcheck_one (struct gcry_drbg_test_vector * test) +_gcry_rngdrbg_healthcheck_one (struct gcry_drbg_test_vector * test) { gpg_err_code_t ret = GPG_ERR_ENOMEM; unsigned char *buf = xcalloc_secure (1, test->expectedlen); if (!buf) return GPG_ERR_ENOMEM; - ret = gcry_rngdrbg_cavs_test (test, buf); + ret = _gcry_rngdrbg_cavs_test (test, buf); + /* FIXME: The next line is wrong. */ ret = memcmp (test->expected, buf, test->expectedlen); xfree (buf); @@ -2528,14 +2529,14 @@ static int drbg_healthcheck (void) { int ret = 0; - ret += gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[0]); - ret += gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[1]); - ret += gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[2]); - ret += gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[3]); - ret += gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[4]); - ret += gcry_rngdrbg_healthcheck_one (&drbg_test_pr[0]); - ret += gcry_rngdrbg_healthcheck_one (&drbg_test_pr[1]); - ret += gcry_rngdrbg_healthcheck_one (&drbg_test_pr[2]); + ret += _gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[0]); + ret += _gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[1]); + ret += _gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[2]); + ret += _gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[3]); + ret += _gcry_rngdrbg_healthcheck_one (&drbg_test_nopr[4]); + ret += _gcry_rngdrbg_healthcheck_one (&drbg_test_pr[0]); + ret += _gcry_rngdrbg_healthcheck_one (&drbg_test_pr[1]); + ret += _gcry_rngdrbg_healthcheck_one (&drbg_test_pr[2]); ret += drbg_healthcheck_sanity (&drbg_test_nopr[0]); return ret; } diff --git a/random/random.h b/random/random.h index ee05cfe3..30e6fdf4 100644 --- a/random/random.h +++ b/random/random.h @@ -21,6 +21,7 @@ #define G10_RANDOM_H #include "types.h" +#include "../src/gcrypt-testapi.h" /* struct gcry_drbg_test_vector */ /*-- random.c --*/ void _gcry_register_random_progress (void (*cb)(void *,const char*,int,int,int), @@ -57,31 +58,9 @@ void _gcry_random_deinit_external_test (void *context); /*-- random-drbg.c --*/ gpg_err_code_t _gcry_rngdrbg_reinit (const char *flagstr, gcry_buffer_t *pers, int npers); -/* private interfaces for testing of DRBG */ -struct gcry_drbg_test_vector -{ - const char *flagstr; - unsigned char *entropy; - size_t entropylen; - unsigned char *entpra; - unsigned char *entprb; - size_t entprlen; - unsigned char *addtla; - unsigned char *addtlb; - size_t addtllen; - unsigned char *pers; - size_t perslen; - unsigned char *expected; - size_t expectedlen; - unsigned char *entropyreseed; - size_t entropyreseed_len; - unsigned char *addtl_reseed; - size_t addtl_reseed_len; -}; - -gpg_err_code_t gcry_rngdrbg_cavs_test (struct gcry_drbg_test_vector *t, - unsigned char *buf); -gpg_err_code_t gcry_rngdrbg_healthcheck_one (struct gcry_drbg_test_vector *t); +gpg_err_code_t _gcry_rngdrbg_cavs_test (struct gcry_drbg_test_vector *t, + unsigned char *buf); +gpg_err_code_t _gcry_rngdrbg_healthcheck_one (struct gcry_drbg_test_vector *t); /*-- rndegd.c --*/ gpg_error_t _gcry_rndegd_set_socket_name (const char *name); |