if( ReturnedBytes ) *ReturnedBytes = Received; break;
case STATUS_END_OF_FILE: *Errno = WSAESHUTDOWN; break;
case STATUS_PENDING: *Errno = WSA_IO_PENDING; break;
- case STATUS_BUFFER_OVERFLOW: *Errno = WSAEMSGSIZE; break;
- case STATUS_INSUFFICIENT_RESOURCES: *Errno = WSA_NOT_ENOUGH_MEMORY; break;
- case STATUS_INVALID_CONNECTION: *Errno = WSAEAFNOSUPPORT; break;
- case STATUS_REMOTE_NOT_LISTENING: *Errno = WSAECONNRESET; break;
+ case STATUS_BUFFER_TOO_SMALL: /* Fall through to STATUS_BUFFER_OVERFLOW */
+ case STATUS_BUFFER_OVERFLOW: DbgPrint("MSAFD: STATUS_BUFFER_TOO_SMALL/STATUS_BUFFER_OVERFLOW\n"); *Errno = WSAEMSGSIZE; break;
+ case STATUS_NO_MEMORY: /* Fall through to STATUS_INSUFFICIENT_RESOURCES */
+ case STATUS_INSUFFICIENT_RESOURCES: DbgPrint("MSAFD: STATUS_NO_MEMORY/STATUS_INSUFFICIENT_RESOURCES\n"); *Errno = WSA_NOT_ENOUGH_MEMORY; break;
+ case STATUS_INVALID_CONNECTION: DbgPrint("MSAFD: STATUS_INVALID_CONNECTION\n"); *Errno = WSAEAFNOSUPPORT; break;
+ case STATUS_REMOTE_NOT_LISTENING: DbgPrint("MSAFD: STATUS_REMOTE_NOT_LISTENING\n"); *Errno = WSAECONNRESET; break;
+ case STATUS_FILE_CLOSED: DbgPrint("MSAFD: STATUS_FILE_CLOSED\n"); *Errno = WSAENOTSOCK; break;
+ case STATUS_INVALID_PARAMETER: DbgPrint("MSAFD: STATUS_INVALID_PARAMETER\n"); *Errno = WSAEINVAL; break;
default:
DbgPrint("MSAFD: Error %x is unknown\n", Status);
*Errno = WSAEINVAL; break;
/* Wait for return */
if (Status == STATUS_PENDING) {
WaitForSingleObject(SockEvent, INFINITE);
+ Status = IOSB.Status;
}
/* Set up Socket Data */
NtClose( SockEvent );
return MsafdReturnWithErrno
- ( IOSB.Status, lpErrno, IOSB.Information, NULL );
+ ( Status, lpErrno, 0, NULL );
}
int
/* Wait for return */
if (Status == STATUS_PENDING) {
WaitForSingleObject(SockEvent, INFINITE);
+ Status = IOSB.Status;
}
/* Set to Listening */
NtClose( SockEvent );
return MsafdReturnWithErrno
- ( IOSB.Status, lpErrno, IOSB.Information, NULL );
+ ( Status, lpErrno, 0, NULL );
}
NtClose( SockEvent );
- return MsafdReturnWithErrno( IOSB.Status, lpErrno, 0, NULL );
+ return MsafdReturnWithErrno( Status, lpErrno, 0, NULL );
}
int
WSPAPI
/* Wait for return */
if (Status == STATUS_PENDING) {
WaitForSingleObject(SockEvent, INFINITE);
+ Status = IOSB.Status;
}
AFD_DbgPrint(MID_TRACE,("Ending\n"));
NtClose( SockEvent );
- return MsafdReturnWithErrno( IOSB.Status, lpErrno, 0, NULL );
+ return MsafdReturnWithErrno( Status, lpErrno, 0, NULL );
}
}
return MsafdReturnWithErrno
- ( IOSB.Status, lpErrno, 0, NULL );
+ ( Status, lpErrno, 0, NULL );
}
}
return MsafdReturnWithErrno
- ( IOSB.Status, lpErrno, 0, NULL );
+ ( Status, lpErrno, 0, NULL );
}
INT