diff options
author | Werner Koch <wk@gnupg.org> | 2008-09-12 14:47:28 +0000 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2008-09-12 14:47:28 +0000 |
commit | ce93e7a99301293d45331c01a888d67c8a098101 (patch) | |
tree | 45a651e2215fd58c99d93866fbec12d3e787170e /cipher/dsa.c | |
parent | 89ad60d0181758ac374a412cffd4214e5d323b57 (diff) | |
download | libgcrypt-ce93e7a99301293d45331c01a888d67c8a098101.tar.gz |
Only run required tests during power-up self-test.
Enter error state after a failed key generation tests.
Diffstat (limited to 'cipher/dsa.c')
-rw-r--r-- | cipher/dsa.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/cipher/dsa.c b/cipher/dsa.c index e16d008e..6b63d1d7 100644 --- a/cipher/dsa.c +++ b/cipher/dsa.c @@ -342,6 +342,7 @@ generate (DSA_secret_key *sk, unsigned int nbits, unsigned int qbits, gcry_mpi_release (sk->g); sk->g = NULL; gcry_mpi_release (sk->y); sk->y = NULL; gcry_mpi_release (sk->x); sk->x = NULL; + fips_signal_error ("self-test after key generation failed"); return GPG_ERR_SELFTEST_FAILED; } return 0; @@ -703,10 +704,12 @@ selftests_dsa (selftest_report_func_t report) /* Run a full self-test for ALGO and return 0 on success. */ static gpg_err_code_t -run_selftests (int algo, selftest_report_func_t report) +run_selftests (int algo, int extended, selftest_report_func_t report) { gpg_err_code_t ec; + (void)extended; + switch (algo) { case GCRY_PK_DSA: |