From: Michael Müller michael@fds-team.de
Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com --- dlls/ws2_32/socket.c | 16 ++++++++++++++++ include/winsock.h | 9 +++++++++ 2 files changed, 25 insertions(+)
diff --git a/dlls/ws2_32/socket.c b/dlls/ws2_32/socket.c index e39901d..d983633 100644 --- a/dlls/ws2_32/socket.c +++ b/dlls/ws2_32/socket.c @@ -5886,6 +5886,22 @@ int WINAPI WS_setsockopt(SOCKET s, int level, int optname, break; #endif
+ case WS_SO_RANDOMIZE_PORT: + FIXME("Ignoring WS_SO_RANDOMIZE_PORT\n"); + return 0; + + case WS_SO_PORT_SCALABILITY: + FIXME("Ignoring WS_SO_PORT_SCALABILITY\n"); + return 0; + + case WS_SO_REUSE_UNICASTPORT: + FIXME("Ignoring WS_SO_REUSE_UNICASTPORT\n"); + return 0; + + case WS_SO_REUSE_MULTICASTPORT: + FIXME("Ignoring WS_SO_REUSE_MULTICASTPORT\n"); + return 0; + default: TRACE("Unknown SOL_SOCKET optname: 0x%08x\n", optname); SetLastError(WSAENOPROTOOPT); diff --git a/include/winsock.h b/include/winsock.h index 8bb067f..891fa9d 100644 --- a/include/winsock.h +++ b/include/winsock.h @@ -672,6 +672,10 @@ typedef struct WS(WSAData) #define SO_TYPE 0x1008 #define SO_BSP_STATE 0x1009
+#define SO_RANDOMIZE_PORT 0x3005 +#define SO_PORT_SCALABILITY 0x3006 +#define SO_REUSE_UNICASTPORT 0x3007 +#define SO_REUSE_MULTICASTPORT 0x3008
#define IOCPARM_MASK 0x7f #define IOC_VOID 0x20000000 @@ -707,6 +711,11 @@ typedef struct WS(WSAData) #define WS_SO_TYPE 0x1008 #define WS_SO_BSP_STATE 0x1009
+#define WS_SO_RANDOMIZE_PORT 0x3005 +#define WS_SO_PORT_SCALABILITY 0x3006 +#define WS_SO_REUSE_UNICASTPORT 0x3007 +#define WS_SO_REUSE_MULTICASTPORT 0x3008 + #define WS_IOCPARM_MASK 0x7f #define WS_IOC_VOID 0x20000000 #define WS_IOC_OUT 0x40000000
On 25/02/18 21:06, Alistair Leslie-Hughes wrote:
From: Michael Müller michael@fds-team.de
Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com
dlls/ws2_32/socket.c | 16 ++++++++++++++++ include/winsock.h | 9 +++++++++ 2 files changed, 25 insertions(+)
I can't seem to find any reported application that depends on these values returning success, and, in lieu of one, I'm not sure that this patch has any value.
Michael, without meaning to drag you back into a project that you've resigned from, could you please offer some explanation as to what this patch was meant for?
Am 26.02.2018 um 04:47 schrieb Zebediah Figura:
I can't seem to find any reported application that depends on these values returning success, and, in lieu of one, I'm not sure that this patch has any value.
Michael, without meaning to drag you back into a project that you've resigned from, could you please offer some explanation as to what this patch was meant for?
The patch is for Overwatch. You can, for example, see Overwatch calling it in the following debug logs:
https://bugs.winehq.org/attachment.cgi?id=59293 https://bugs.winehq.org/attachment.cgi?id=59134
As far as I remember the application checked for an error and failed otherwise.
Just to make it shorter in the future: Except some speed improvement experiments that we did, all the patches in Wine Staging fix an application or bring it further. The patches just do not always come with a list of fixed applications attached, just like the ones sent to wine-devel.
Regards, Michael
On 26/02/18 02:04, Michael Müller wrote:
Am 26.02.2018 um 04:47 schrieb Zebediah Figura:
I can't seem to find any reported application that depends on these values returning success, and, in lieu of one, I'm not sure that this patch has any value.
Michael, without meaning to drag you back into a project that you've resigned from, could you please offer some explanation as to what this patch was meant for?
The patch is for Overwatch. You can, for example, see Overwatch calling it in the following debug logs:
https://bugs.winehq.org/attachment.cgi?id=59293 https://bugs.winehq.org/attachment.cgi?id=59134
Thanks; no objections from me then.
As far as I remember the application checked for an error and failed otherwise.
Just to make it shorter in the future: Except some speed improvement experiments that we did, all the patches in Wine Staging fix an application or bring it further. The patches just do not always come with a list of fixed applications attached, just like the ones sent to wine-devel.
Sure, and I don't doubt that. It would on the other hand be good to know what specifically they fix, given that e.g. [1] is meant to fix a broken application that was later fixed upstream.
[1] https://github.com/wine-staging/wine-staging/tree/master/patches/ntdll-call_...
On 26/02/18 07:56, Zebediah Figura wrote:
On 26/02/18 02:04, Michael Müller wrote:
As far as I remember the application checked for an error and failed otherwise.
Just to make it shorter in the future: Except some speed improvement experiments that we did, all the patches in Wine Staging fix an application or bring it further. The patches just do not always come with a list of fixed applications attached, just like the ones sent to wine-devel.
Sure, and I don't doubt that. It would on the other hand be good to know what specifically they fix, given that e.g. [1] is meant to fix a broken application that was later fixed upstream.
[1] https://github.com/wine-staging/wine-staging/tree/master/patches/ntdll-call_...
Is the old Staging bugzilla available anywhere? In searching for bug reports associated with some unannotated patches I have found references to it, but I don't know where to see the actual reports.