Blob Blame History Raw
## Patch to fix RDSEED exception during build tests
## Discussion at:
##    http://comments.gmane.org/gmane.comp.encryption.cryptopp/8028
## Original upstream commit:
##    https://github.com/weidai11/cryptopp/commit/0059f486ad0467d5c4dc692db99a5a5f96c2a733
## This patch file has been manually regenerated for cryptopp-5.6.3

--- validat1.cpp.ORIGINAL	2015-11-19 17:25:32.000000000 -0600
+++ validat1.cpp	2016-12-12 16:46:19.272200200 -0600
@@ -459,6 +459,7 @@
 #if (CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_X32 || CRYPTOPP_BOOL_X64)
 bool TestRDRAND()
 {
+	// Testing on 6th generation i7 shows RDRAND needs less than 8 retries for 10K bytes.
 	RDRAND rdrand;
 	bool maurer = true, generate = true, discard = true;
 	static const unsigned int SIZE = 10000;
@@ -529,7 +530,8 @@
 #if (CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_X32 || CRYPTOPP_BOOL_X64)
 bool TestRDSEED()
 {
-	RDSEED rdseed;
+	// Testing on 6th generation i7 shows RDSEED needs about 128 retries for 10K bytes.
+	RDSEED rdseed(1024);
 	bool maurer = true, generate = true, discard = true;
 	static const unsigned int SIZE = 10000;