diff options
author | Nick Mathewson <nickm@torproject.org> | 2016-09-09 09:44:57 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2016-09-09 09:45:50 -0400 |
commit | 5e30e26c6d7ae33e23557bc18def36f98be4e1e6 (patch) | |
tree | d2f530092f07a79e6c2fc6e7dc6ac981445562eb /src/test/testing_common.c | |
parent | 05110c9294f64b494600b056670f62ca89b52b0b (diff) | |
download | tor-5e30e26c6d7ae33e23557bc18def36f98be4e1e6.tar.gz tor-5e30e26c6d7ae33e23557bc18def36f98be4e1e6.zip |
Chop another ~93 RSA key generations out of the unit tests
We have a mock for our RSA key generation function, so we now wire
it to pk_generate(). This covers all the cases that were not using
pk_generate() before -- all ~93 of them.
Diffstat (limited to 'src/test/testing_common.c')
-rw-r--r-- | src/test/testing_common.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/test/testing_common.c b/src/test/testing_common.c index 2858c9ec99..d5f2c00923 100644 --- a/src/test/testing_common.c +++ b/src/test/testing_common.c @@ -181,12 +181,26 @@ pk_generate(int idx) crypto_pk_t *result; int res; result = crypto_pk_new(); - res = crypto_pk_generate_key(result); + res = crypto_pk_generate_key__real(result); tor_assert(!res); return result; #endif } +#ifdef CACHE_GENERATED_KEYS +static int +crypto_pk_generate_key_with_bits__get_cached(crypto_pk_t *env, int bits) +{ + if (bits != 1024) + return crypto_pk_generate_key_with_bits__real(env, bits); + + crypto_pk_t *newkey = pk_generate(0); + crypto_pk_assign_(env, newkey); + crypto_pk_free(newkey); + return 0; +} +#endif + /** Free all storage used for the cached key optimization. */ static void free_pregenerated_keys(void) @@ -332,6 +346,8 @@ main(int c, const char **v) int r = crypto_pk_generate_key(pregen_keys[i]); tor_assert(r == 0); } + MOCK(crypto_pk_generate_key_with_bits, + crypto_pk_generate_key_with_bits__get_cached); #endif atexit(remove_directory); |