http://bugs.winehq.org/show_bug.cgi?id=19491
Summary: WSASend() fails when lpNumberOfBytesSent is NULL Product: Wine Version: 1.1.26 Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: minor Priority: P2 Component: winsock AssignedTo: wine-bugs@winehq.org ReportedBy: arzwine@yahoo.com
WSASend() returns an error when lpNumberOfBytesSent (which is an output parameter) is NULL. There is a condition in WSASendTo() in ws2_32/socket.c which returns an EFAULT when lpNumberOfBytesSent is a NULL pointer.
While this makes sense, setting this argument to NULL is explicitly allowed by the MSDN documentation, if the lpOverlapped parameter is present.
Not immediately clear how to fix this, since it involves checking how overlapped i/o and i/o completion play out.