From a6cea6892b4f7a2e2675e53968a80f3bc55b2715 Mon Sep 17 00:00:00 2001 From: Russell Bryant Date: Mon, 16 May 2005 03:04:59 +0000 Subject: [PATCH] only initialize random number generators in one place (bug #4017) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5694 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_random.c | 1 - asterisk.c | 6 ++++++ channels/chan_iax2.c | 1 - 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/app_random.c b/apps/app_random.c index c9f8f47887..18af80e4ef 100755 --- a/apps/app_random.c +++ b/apps/app_random.c @@ -106,7 +106,6 @@ int unload_module(void) int load_module(void) { - srandom((unsigned int)getpid() + (unsigned int)time(NULL)); return ast_register_application(app_random, random_exec, random_synopsis, random_descrip); } diff --git a/asterisk.c b/asterisk.c index 146f43a711..0364f1b263 100755 --- a/asterisk.c +++ b/asterisk.c @@ -1824,6 +1824,12 @@ int main(int argc, char *argv[]) signal(SIGCHLD, child_handler); signal(SIGPIPE, SIG_IGN); + /* ensure that the random number generators are seeded with a different value every time + Asterisk is started + */ + srand((unsigned int) getpid() + (unsigned int) time(NULL)); + srandom((unsigned int) getpid() + (unsigned int) time(NULL)); + if (init_logger()) { printf(term_quit()); exit(1); diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c index a301585c3d..40a9797298 100755 --- a/channels/chan_iax2.c +++ b/channels/chan_iax2.c @@ -7020,7 +7020,6 @@ static int reload_config(void) delayreject = 0; globalnotransfer = 0; globalusejitterbuf = 0; - srand(time(NULL)); delete_users(); set_config(config,&dead_sin); prune_peers(); -- 2.47.2