Hi, strange things going on in dlls/winsock/socket.c: /* initialize socket heap */ if( !_WSHeap ) { _WSHeap = HeapCreate(HEAP_ZERO_MEMORY, 8120, 32768); if( !_WSHeap ) { ERR("Fatal: failed to create WinSock heap\n"); return 0; } } if( _WSHeap == 0 ) return WSASYSNOTREADY; Could somebody please care to enlighten me what this kind of code is supposed to do ?? I strongly opt for fixing that, I guess. I.e.: change return 0; to return WSA... and forget about the last check, no ? Andreas Mohr