- Pass a valid pointer for lpErrno to WSPBind when performing an implicit bind
- Remove the hack in MsafdReturnWithErrno for dealing with stupid callers that provide don't provide a valid Errno pointer
svn path=/trunk/; revision=47378
DWORD Received,
LPDWORD ReturnedBytes)
{
- if (Errno)
- {
- *Errno = TranslateNtStatusError(Status);
+ *Errno = TranslateNtStatusError(Status);
- if (ReturnedBytes)
- {
- if (!*Errno)
- *ReturnedBytes = Received;
- else
- *ReturnedBytes = 0;
- }
+ if (ReturnedBytes)
+ {
+ if (!*Errno)
+ *ReturnedBytes = Received;
+ else
+ *ReturnedBytes = 0;
}
- return Status ? SOCKET_ERROR : 0;
+ return *Errno ? SOCKET_ERROR : 0;
}
/*
BindAddress,
&BindAddressLength);
/* Bind it */
- WSPBind(Handle, BindAddress, BindAddressLength, NULL);
+ if (WSPBind(Handle, BindAddress, BindAddressLength, lpErrno) == SOCKET_ERROR)
+ return SOCKET_ERROR;
}
RemoteAddress = HeapAlloc(GlobalHeap, 0, 0x6 + SocketAddressLength);