summaryrefslogtreecommitdiffstats
path: root/libqpdf/InsecureRandomDataProvider.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libqpdf/InsecureRandomDataProvider.cc')
-rw-r--r--libqpdf/InsecureRandomDataProvider.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/libqpdf/InsecureRandomDataProvider.cc b/libqpdf/InsecureRandomDataProvider.cc
index 18b21baa..e246ff97 100644
--- a/libqpdf/InsecureRandomDataProvider.cc
+++ b/libqpdf/InsecureRandomDataProvider.cc
@@ -30,8 +30,13 @@ InsecureRandomDataProvider::random()
// Seed the random number generator with something simple, but
// just to be interesting, don't use the unmodified current
// time. It would be better if this were a more secure seed.
- QUtil::srandom(static_cast<unsigned int>(
- QUtil::get_current_time() ^ 0xcccc));
+ unsigned int seed = static_cast<unsigned int>(
+ QUtil::get_current_time() ^ 0xcccc);
+#ifdef HAVE_RANDOM
+ ::srandom(seed);
+#else
+ srand(seed);
+#endif
this->seeded_random = true;
}