ruby-changes:12463
From: nobu <ko1@a...>
Date: Fri, 17 Jul 2009 13:58:56 +0900 (JST)
Subject: [ruby-changes:12463] Ruby:r24163 (trunk): * random.c (fill_random_seed): /dev/urandom is not available on
nobu 2009-07-17 13:58:38 +0900 (Fri, 17 Jul 2009) New Revision: 24163 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=24163 Log: * random.c (fill_random_seed): /dev/urandom is not available on DOSISH systems. Modified files: trunk/ChangeLog trunk/random.c Index: ChangeLog =================================================================== --- ChangeLog (revision 24162) +++ ChangeLog (revision 24163) @@ -1,5 +1,8 @@ -Fri Jul 17 13:55:53 2009 Nobuyoshi Nakada <nobu@r...> +Fri Jul 17 13:58:26 2009 Nobuyoshi Nakada <nobu@r...> + * random.c (fill_random_seed): /dev/urandom is not available on + DOSISH systems. + * random.c (random_equal): new method Random#==. Fri Jul 17 13:35:47 2009 Tanaka Akira <akr@f...> Index: random.c =================================================================== --- random.c (revision 24162) +++ random.c (revision 24163) @@ -375,19 +375,25 @@ #define DEFAULT_SEED_LEN (DEFAULT_SEED_CNT * sizeof(int)) +#if defined(S_ISCHR) && !defined(DOSISH) +# define USE_DEV_URANDOM 1 +#else +# define USE_DEV_URANDOM 0 +#endif + static void fill_random_seed(unsigned int seed[DEFAULT_SEED_CNT]) { static int n = 0; struct timeval tv; -#ifdef S_ISCHR +#if USE_DEV_URANDOM int fd; struct stat statbuf; #endif memset(seed, 0, DEFAULT_SEED_LEN); -#ifdef S_ISCHR +#if USE_DEV_URANDOM if ((fd = open("/dev/urandom", O_RDONLY #ifdef O_NONBLOCK |O_NONBLOCK -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/