summaryrefslogtreecommitdiff
path: root/fipstest.cpp
diff options
context:
space:
mode:
authorweidai <weidai11@users.noreply.github.com>2010-07-29 10:50:42 +0000
committerweidai <weidai11@users.noreply.github.com>2010-07-29 10:50:42 +0000
commit05e42a01d9511f9122c21f615dba142db17f4523 (patch)
tree93666c00fa523772281a62290e27b6ebcb8f3e55 /fipstest.cpp
parenta3f2091bcdf5a5843b2c5a1706b5739609b8d015 (diff)
downloadcryptopp-git-05e42a01d9511f9122c21f615dba142db17f4523.tar.gz
fix possible error during DLL startup self-test due to calling functions in ADVAPI32.DLL from DllMain() (http://sourceforge.net/apps/trac/cryptopp/ticket/4)
Diffstat (limited to 'fipstest.cpp')
-rw-r--r--fipstest.cpp21
1 files changed, 4 insertions, 17 deletions
diff --git a/fipstest.cpp b/fipstest.cpp
index 9a6c5607..e882742e 100644
--- a/fipstest.cpp
+++ b/fipstest.cpp
@@ -69,7 +69,7 @@ void X917RNG_KnownAnswerTest(
StringSource(seed, true, new HexDecoder(new StringSink(decodedSeed)));
StringSource(deterministicTimeVector, true, new HexDecoder(new StringSink(decodedDeterministicTimeVector)));
- AutoSeededX917RNG<CIPHER> rng;
+ AutoSeededX917RNG<CIPHER> rng(false, false);
rng.Reseed((const byte *)decodedKey.data(), decodedKey.size(), (const byte *)decodedSeed.data(), (const byte *)decodedDeterministicTimeVector.data());
KnownAnswerTest(rng, output);
#else
@@ -154,15 +154,10 @@ void MAC_KnownAnswerTest(const char *key, const char *message, const char *diges
template <class SCHEME>
void SignatureKnownAnswerTest(const char *key, const char *message, const char *signature, SCHEME *dummy = NULL)
{
-#ifdef OS_RNG_AVAILABLE
- DefaultAutoSeededRNG rng;
-#else
- RandomNumberGenerator &rng = NullRNG();
-#endif
-
typename SCHEME::Signer signer(StringSource(key, true, new HexDecoder).Ref());
typename SCHEME::Verifier verifier(signer);
+ RandomPool rng;
EqualityComparisonFilter comparison;
StringSource(message, true, new SignerFilter(rng, signer, new ChannelSwitch(comparison, "0")));
@@ -180,11 +175,7 @@ void EncryptionPairwiseConsistencyTest(const PK_Encryptor &encryptor, const PK_D
{
try
{
-#ifdef OS_RNG_AVAILABLE
- DefaultAutoSeededRNG rng;
-#else
- RandomNumberGenerator &rng = NullRNG();
-#endif
+ RandomPool rng;
const char *testMessage ="test message";
std::string ciphertext, decrypted;
@@ -220,11 +211,7 @@ void SignaturePairwiseConsistencyTest(const PK_Signer &signer, const PK_Verifier
{
try
{
-#ifdef OS_RNG_AVAILABLE
- DefaultAutoSeededRNG rng;
-#else
- RandomNumberGenerator &rng = NullRNG();
-#endif
+ RandomPool rng;
StringSource(
"test message",