aboutsummaryrefslogtreecommitdiff
path: root/src/libmain/shared.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/libmain/shared.cc')
-rw-r--r--src/libmain/shared.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libmain/shared.cc b/src/libmain/shared.cc
index ead3fc017..e869ef037 100644
--- a/src/libmain/shared.cc
+++ b/src/libmain/shared.cc
@@ -10,6 +10,7 @@
#include <cctype>
#include <exception>
+#include <sys/time.h>
#include <sys/stat.h>
#include <unistd.h>
@@ -135,6 +136,11 @@ static void initAndRun(int argc, char * * argv)
everybody. */
umask(0022);
+ /* Initialise the PRNG. */
+ struct timeval tv;
+ gettimeofday(&tv, 0);
+ srandom(tv.tv_usec);
+
/* Process the NIX_LOG_TYPE environment variable. */
string lt = getEnv("NIX_LOG_TYPE");
if (lt != "") setLogType(lt);