summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/backend/postmaster/fork_process.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/backend/postmaster/fork_process.c b/src/backend/postmaster/fork_process.c
index 3a0acac7a61..917a8dbdf69 100644
--- a/src/backend/postmaster/fork_process.c
+++ b/src/backend/postmaster/fork_process.c
@@ -15,6 +15,9 @@
#include <time.h>
#include <sys/time.h>
#include <unistd.h>
+#ifdef USE_SSL
+#include <openssl/rand.h>
+#endif
#ifndef WIN32
/*
@@ -60,6 +63,12 @@ fork_process(void)
setitimer(ITIMER_PROF, &prof_itimer, NULL);
#endif
+ /*
+ * Make sure processes do not share OpenSSL randomness state.
+ */
+#ifdef USE_SSL
+ RAND_cleanup();
+#endif
}
return result;