Today, test_reuseaddr() triggers a buffer overflow when accept()-ing an
IPv6 client due to the supplied peer name buffer (`struct sockaddr`)
being too small to hold an AF_INET6 address (`struct sockaddr_in6`).
Fix this by changing the type of `saddr` from `struct sockaddr` to
`struct sockaddr_storage`.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54376
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2026
> (The TlsIndex field in the LDR_DATA_TABLE_ENTRY structure appears to be unused except as a flag that the module has TLS (being always set to -1), at least as far back as Windows XP. It is worth mentioning that the WINE implementation of implicit TLS incorrectly uses TlsIndex as the real module TLS index, so it may be unreliable to assume that it is always -1 if you care about working on WINE.)
>
> \- http://www.nynaeve.net/?p=186
and the "links to that article but still doesn't work in wine" award goes to... [the D runtime](https://github.com/dlang/dmd/blob/6bf60ea0eb174631ede0074a77d3898d…! (Admittedly, there aren't too many ways to do what they're trying to do.)
With this, the D runtime will now work in Wine, even if in a dll loaded into an exe with no tls (which gets it the tls index 0)
~~The changes to the debugger are a bit icky, a possible alternative is to find some other easily-debugger-accessible place to stuff the tls index.~~ Resolved
--
v9: ntdll: TlsIndex should not actually contain tls indices
winedbg: Fix read access to variables with thread local storage.
winedbg: Track loaded modules
https://gitlab.winehq.org/wine/wine/-/merge_requests/1578
First relevant commit:
windows.media.speech: Add a worker thread to the recognition session.
--
v10: windows.media.speech: Store recorded audio in a temporary ringbuffer.
windows.media.speech: Partially implement the speech recognizer state.
windows.media.speech: Add an audio capturing system.
windows.media.speech: Allow the recognition session worker to be paused.
windows.media.speech/tests: Check if stopping the session resets the paused state.
windows.media.speech: Add a worker thread to the recognition session.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1948
--
v3: vbscript: Implement SID_GetCaller for QueryService.
vbscript: Add a ServiceProvider stub.
jscript: Implement SID_GetCaller for QueryService.
mshtml: Set SCRIPTPROP_ABBREVIATE_GLOBALNAME_RESOLUTION properly.
mshtml: Implement location props when there's no URI.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1733
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54353
There are two issues which the patchset is fixing:
1. Using cert's serial is not quite right, we need to hash full certificate contents as the check result depends on the other certificate data.
2. The check result also depends on revocation check parameters. I think currently it is only issuer certificate from the parameters which can affect the result which is cached.
--
v2: cryptnet: Also hash issuer cert for cache id.
cryptnet: Use cert data hash as cache id instead of serial number.
cryptnet: Cache revocation status in verify_cert_revocation().
https://gitlab.winehq.org/wine/wine/-/merge_requests/2009
The last major feature for compute shader support.
The tests are a bit ad-hoc, and ideally would be extended beyond d3d12. The
nonuniform readback is what makes this difficult.
My plan is to refactor the shader runner so that it exposes an interface usable
both from a file interpreter frontend and also directly from C code. That would
allow, in this case, declaring the shaders and drawing as a shader_test file
would, but then making use of C loops to test the readback. It would also make
it generally easier to port loop-based tests in e.g. d3d12.c.
--
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/64