Fixed ReadFile() semantics when reading asynchronously on sockets.
Provide more accurate status codes than STATUS_UNSUCCESSFUL.

diff --git a/server/sock.c b/server/sock.c
index 06db1ac..d8362af 100644
--- a/server/sock.c
+++ b/server/sock.c
@@ -421,7 +421,7 @@
     if (sock->flags & WSA_FLAG_OVERLAPPED) *flags |= FD_FLAG_OVERLAPPED;
     if ( !(sock->state & FD_READ ) )  *flags |= FD_FLAG_RECV_SHUTDOWN;
     if ( !(sock->state & FD_WRITE ) ) *flags |= FD_FLAG_SEND_SHUTDOWN;
-    return FD_TYPE_DEFAULT;
+    return FD_TYPE_SOCKET;
 }
 
 static void sock_queue_async(struct object *obj, void *ptr, unsigned int status, int type, int count)