<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src/os/win32, branch release-1.28.2</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Win32: fixed C4319 warning with MSVC 2022 x86.</title>
<updated>2026-02-04T17:22:23+00:00</updated>
<author>
<name>Aleksei Bavshin</name>
<email>a.bavshin@nginx.com</email>
</author>
<published>2025-12-23T18:44:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=dc50b86db8844f3c243ac374fb08beb79495f3cf'/>
<id>dc50b86db8844f3c243ac374fb08beb79495f3cf</id>
<content type='text'>
The warning started to appear in Visual Studio 2022 version 17.14.21,
which corresponds to the C/C++ compiler version 19.44.35221.

The appropriate fix is to avoid mixing uint64_t and ngx_uint_t in an
expression with bitwise operations.  We can do that here because both
the original shm-&gt;size value and the result of the expression are 32-bit
platform words.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The warning started to appear in Visual Studio 2022 version 17.14.21,
which corresponds to the C/C++ compiler version 19.44.35221.

The appropriate fix is to avoid mixing uint64_t and ngx_uint_t in an
expression with bitwise operations.  We can do that here because both
the original shm-&gt;size value and the result of the expression are 32-bit
platform words.
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: fixed unique file index calculations.</title>
<updated>2024-02-26T20:00:35+00:00</updated>
<author>
<name>Piotr Sikora</name>
<email>piotr@aviatrix.com</email>
</author>
<published>2024-02-26T20:00:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=eff2ea1d69a589c5b0a6ddde9ff400ab43377c2f'/>
<id>eff2ea1d69a589c5b0a6ddde9ff400ab43377c2f</id>
<content type='text'>
The old code was breaking strict aliasing rules.

Signed-off-by: Piotr Sikora &lt;piotr@aviatrix.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The old code was breaking strict aliasing rules.

Signed-off-by: Piotr Sikora &lt;piotr@aviatrix.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Silenced complaints about socket leaks on forced termination.</title>
<updated>2024-01-29T07:29:39+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2024-01-29T07:29:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=cc4c3ee0a45ca3a2eeac2874e9199bf42560015c'/>
<id>cc4c3ee0a45ca3a2eeac2874e9199bf42560015c</id>
<content type='text'>
When graceful shutdown was requested, and then nginx was forced to
do fast shutdown, it used to (incorrectly) complain about open sockets
left in connections which weren't yet closed when fast shutdown
was requested.

Fix is to avoid complaining about open sockets when fast shutdown was
requested after graceful one.  Abnormal termination, if requested with
the WINCH signal, can still happen though.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When graceful shutdown was requested, and then nginx was forced to
do fast shutdown, it used to (incorrectly) complain about open sockets
left in connections which weren't yet closed when fast shutdown
was requested.

Fix is to avoid complaining about open sockets when fast shutdown was
requested after graceful one.  Abnormal termination, if requested with
the WINCH signal, can still happen though.
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: extended ngx_random() range to 0x7fffffff.</title>
<updated>2023-12-09T08:38:14+00:00</updated>
<author>
<name>J Carter</name>
<email>jordanc.carter@outlook.com</email>
</author>
<published>2023-12-09T08:38:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=c0134ded9fce48f36465cb1a1adbcc52e32f8c65'/>
<id>c0134ded9fce48f36465cb1a1adbcc52e32f8c65</id>
<content type='text'>
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().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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().
</pre>
</div>
</content>
</entry>
<entry>
<title>QUIC: path MTU discovery.</title>
<updated>2023-08-14T05:21:27+00:00</updated>
<author>
<name>Roman Arutyunyan</name>
<email>arut@nginx.com</email>
</author>
<published>2023-08-14T05:21:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=eeb8a9f56f727d2543c8ae7feae0de784e329b27'/>
<id>eeb8a9f56f727d2543c8ae7feae0de784e329b27</id>
<content type='text'>
MTU selection starts by doubling the initial MTU until the first failure.
Then binary search is used to find the path MTU.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
MTU selection starts by doubling the initial MTU until the first failure.
Then binary search is used to find the path MTU.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merged with the default branch.</title>
<updated>2023-03-29T07:14:25+00:00</updated>
<author>
<name>Sergey Kandaurov</name>
<email>pluknet@nginx.com</email>
</author>
<published>2023-03-29T07:14:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=e8fbc967470b39513248cd961ccccf7a032831ea'/>
<id>e8fbc967470b39513248cd961ccccf7a032831ea</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: non-ASCII names in ngx_fs_bsize(), ngx_fs_available().</title>
<updated>2023-02-23T17:50:03+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2023-02-23T17:50:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=4ace957c4e08bcbf9ef5e9f83b8e43458bead77f'/>
<id>4ace957c4e08bcbf9ef5e9f83b8e43458bead77f</id>
<content type='text'>
This fixes potentially incorrect cache size calculations and non-working
"min_free" when using cache in directories with non-ASCII names.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes potentially incorrect cache size calculations and non-working
"min_free" when using cache in directories with non-ASCII names.
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: removed attempt to use a drive letter in ngx_fs_bsize().</title>
<updated>2023-02-23T17:50:00+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2023-02-23T17:50:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=6c5fe80bc69b12cc2bd0e8ed7bc67b240795f66b'/>
<id>6c5fe80bc69b12cc2bd0e8ed7bc67b240795f66b</id>
<content type='text'>
Just a drive letter might not correctly represent file system being used,
notably when using symlinks (as created by "mklink /d").  As such, instead
of trying to call GetDiskFreeSpace() with just a drive letter, we now always
use GetDiskFreeSpace() with full path.

Further, it looks like the code to use just a drive letter never worked,
since it tried to test name[2] instead of name[1] to be ':'.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Just a drive letter might not correctly represent file system being used,
notably when using symlinks (as created by "mklink /d").  As such, instead
of trying to call GetDiskFreeSpace() with just a drive letter, we now always
use GetDiskFreeSpace() with full path.

Further, it looks like the code to use just a drive letter never worked,
since it tried to test name[2] instead of name[1] to be ':'.
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: non-ASCII names support in ngx_open_tempfile().</title>
<updated>2023-02-23T17:49:57+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2023-02-23T17:49:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=2062ddef3989525e22445b1965220ffaf8e161c9'/>
<id>2062ddef3989525e22445b1965220ffaf8e161c9</id>
<content type='text'>
This makes it possible to use temporary directories with non-ASCII characters,
either explicitly or via a prefix with non-ASCII characters in it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This makes it possible to use temporary directories with non-ASCII characters,
either explicitly or via a prefix with non-ASCII characters in it.
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: non-ASCII names support in ngx_rename_file().</title>
<updated>2023-02-23T17:49:55+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2023-02-23T17:49:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=4d84bc492936cd047d5f589ef4bc4736093ec176'/>
<id>4d84bc492936cd047d5f589ef4bc4736093ec176</id>
<content type='text'>
This makes it possible to upload files with non-ASCII characters
when using the dav module (ticket #1433).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This makes it possible to upload files with non-ASCII characters
when using the dav module (ticket #1433).
</pre>
</div>
</content>
</entry>
</feed>
