Use more portable random seed generation.

The new function md_random_seed() has replaced time() + getpid() and
similar methods.  Putting everything in mdport.c slightly reduces the
warnings and workarounds.
This commit is contained in:
John "Elwin" Edwards 2017-01-28 15:49:41 -05:00
parent c194ec3dc9
commit 62047972cc
29 changed files with 123 additions and 81 deletions

View file

@ -98,6 +98,7 @@
#include <limits.h>
#include <sys/stat.h>
#include <signal.h>
#include <time.h>
#include "extern.h"
#if !defined(PATH_MAX) && defined(_MAX_PATH)
@ -411,16 +412,6 @@ md_getuid(void)
#endif
}
pid_t
md_getpid(void)
{
#ifdef _WIN32
return( _getpid() );
#else
return( getpid() );
#endif
}
char *
md_getusername(void)
{
@ -1493,6 +1484,19 @@ md_tstpsignal(void)
#endif
}
unsigned int
md_random_seed(void)
{
unsigned int seed;
seed = (unsigned int) time((time_t *) NULL);
#ifdef _WIN32
seed += _getpid();
#else
seed += getpid();
#endif
return seed;
}
#if defined(CHECKTIME)
void
md_start_checkout_timer(int time)