Commit Diff


commit - 8a041373bb81f75a91a00e692979619938199989
commit + 8e6db769ac549cfe26042f7d51ae8a301d8fc569
blob - 16f970f8dc982d21d96e9f1bdf2de8deba1736f8
blob + e3f51cf0268a086a49c4baddd34a723cc75106ea
--- configure.ng
+++ configure.ng
@@ -187,9 +187,9 @@ AC_CHECK_FUNCS([ \
 
 # Optional functions
 AC_CHECK_FUNCS_ONCE([ \
-	arc4random gai_strerror getaddrinfo getnameinfo inet_aton sigaction \
-	sigprocmask snprintf vsnprintf strdup strndup strlcpy strlcat strtok_r \
-	waitpid])
+	arc4random arc4random_stir gai_strerror getaddrinfo getnameinfo inet_aton
+	sigaction sigprocmask snprintf vsnprintf strdup strndup strlcpy strlcat \
+	strtok_r waitpid])
 
 # -- Configuration options --
 
blob - d290f3bd100faed3cc17d8d24cd6396443a41131
blob + a5afb5011cb1c468732561d5944fa9f685c1c4e4
--- src/ngircd/proc.c
+++ src/ngircd/proc.c
@@ -77,6 +77,9 @@ Proc_Fork(PROC_STAT *proc, int *pipefds, void (*cbfunc
 		return -1;
 	case 0:
 		/* New child process: */
+#ifdef HAVE_ARC4RANDOM_STIR
+		arc4random_stir();
+#endif
 #ifndef HAVE_ARC4RANDOM
 		srand(seed ^ (unsigned int)time(NULL) ^ getpid());
 #endif