https://bugs.winehq.org/show_bug.cgi?id=55105
Bug ID: 55105 Summary: libHttpClient requires WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST support Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: winhttp Assignee: wine-bugs@winehq.org Reporter: flibitijibibo@gmail.com Distribution: ---
libHttpClient is the web socket abstraction layer for Xbox Live titles on various platforms; on Windows it uses winhttp for http sources. Two example games using this library are Gears 5 and Halo: The Master Chief collection.
One part of the implementation handles certificate authentication; in particular it handles ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED, which according to MSDN should be handled by calling WinHttpQueryOption with WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST, so that it can attempt to find a relevant certificate chain and re-attempt the connection if a cert is found.
Luckily, libHttpClient is open source, so the exact block that does this can be found here: https://github.com/microsoft/libHttpClient/blob/1c8386866fb180dd31890186291d...
As of the latest Git revision, Wine does not handle this parameter, so the default case is tripped:
https://gitlab.winehq.org/wine/wine/-/blob/81859c9af70aa5ed6da3060488d1815a3...