Make unit tests slower but more reliable by disabling an old optimization.

To turn it back on, re-define CACHE_GENERATED_KEYS option in test.c.

svn:r17677
This commit is contained in:
Nick Mathewson 2008-12-18 06:12:19 +00:00
parent 8ba2a15a49
commit 290b6f54a3

View File

@ -106,16 +106,27 @@ remove_directory(void)
rmdir(temp_dir);
}
/** Define this if unit tests spend too much time generating public keys*/
#undef CACHE_GENERATED_KEYS
static crypto_pk_env_t *pregen_keys[5] = {NULL, NULL, NULL, NULL, NULL};
static crypto_pk_env_t *
pk_generate(int idx)
{
#ifdef CACHE_GENERATED_KEYS
tor_assert(idx < (int)(sizeof(pregen_keys)/sizeof(pregen_keys[0])));
if (! pregen_keys[idx]) {
pregen_keys[idx] = crypto_new_pk_env();
tor_assert(!crypto_pk_generate_key(pregen_keys[idx]));
}
return crypto_pk_dup_key(pregen_keys[idx]);
#else
crypto_pk_env_t *result;
(void) idx;
result = crypto_new_pk_env();
tor_assert(!crypto_pk_generate_key(result));
return result;
#endif
}
static void