On Sat, 09 Dec 2023 07:46:10 +0000
J Carter <jordanc.car...@outlook.com> wrote:

> # HG changeset patch
> # User J Carter <jordanc.car...@outlook.com>
> # Date 1702101635 0
> #      Sat Dec 09 06:00:35 2023 +0000
> # Node ID 1a77698f82d2580aa8b8f62ce89b4dbb6d678c5d
> # Parent  d9275e982a7188a1ea7855295ffa93362ea9830f
> Win32: extended ngx_random range to 0x7fffffff
> 
> rand() is used on win32. RAND_MAX is implementation defined. win32's is
> 0x7fff.
> 
> Existing uses of ngx_random rely upon 0x7fffffff range provided by
> posix implementations of random().
> 
> diff -r d9275e982a71 -r 1a77698f82d2 src/os/win32/ngx_win32_config.h
> --- a/src/os/win32/ngx_win32_config.h Sat Dec 09 05:09:07 2023 +0000
> +++ b/src/os/win32/ngx_win32_config.h Sat Dec 09 06:00:35 2023 +0000
> @@ -280,7 +280,9 @@
>  
>  #define NGX_HAVE_GETADDRINFO         1
>  
> -#define ngx_random               rand
> +#define ngx_random                                                           
>   \
> +    ((rand() << 16) | (rand() << 1) | (rand() >> 14))
> +
>  #define ngx_debug_init()
>  
>  

^ my mistake - copying error..

# HG changeset patch
# User J Carter <jordanc.car...@outlook.com>
# Date 1702111094 0
#      Sat Dec 09 08:38:14 2023 +0000
# Node ID 10ef59a412a330872fc6d46de64f42e32e997b3a
# Parent  d9275e982a7188a1ea7855295ffa93362ea9830f
Win32: extended ngx_random range to 0x7fffffff

rand() is used on win32. RAND_MAX is implementation defined. win32's is
0x7fff.

Existing uses of ngx_random rely upon 0x7fffffff range provided by
posix implementations of random().

diff -r d9275e982a71 -r 10ef59a412a3 src/os/win32/ngx_win32_config.h
--- a/src/os/win32/ngx_win32_config.h   Sat Dec 09 05:09:07 2023 +0000
+++ b/src/os/win32/ngx_win32_config.h   Sat Dec 09 08:38:14 2023 +0000
@@ -280,7 +280,9 @@
 
 #define NGX_HAVE_GETADDRINFO         1
 
-#define ngx_random               rand
+#define ngx_random()                                                           
  \
+    ((rand() << 16) | (rand() << 1) | (rand() >> 14))
+
 #define ngx_debug_init()
 
 
_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-devel

Reply via email to