diff --git a/reactos/dll/win32/msafd/CMakeLists.txt b/reactos/dll/win32/msafd/CMakeLists.txt index 30e265a7f54..3289a43833a 100644 --- a/reactos/dll/win32/msafd/CMakeLists.txt +++ b/reactos/dll/win32/msafd/CMakeLists.txt @@ -1,6 +1,5 @@ include_directories( - BEFORE include ${REACTOS_SOURCE_DIR}/include/reactos/drivers) spec2def(msafd.dll msafd.spec) @@ -19,6 +18,7 @@ add_library(msafd SHARED ${CMAKE_CURRENT_BINARY_DIR}/msafd.def) set_module_type(msafd win32dll UNICODE) +target_link_libraries(msafd wine) add_importlibs(msafd advapi32 msvcrt kernel32 ntdll) add_pch(msafd msafd.h SOURCE) add_cd_file(TARGET msafd DESTINATION reactos/system32 FOR all) diff --git a/reactos/dll/win32/msafd/include/debug.h b/reactos/dll/win32/msafd/include/debug.h deleted file mode 100644 index 2be8a158b8e..00000000000 --- a/reactos/dll/win32/msafd/include/debug.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * COPYRIGHT: See COPYING in the top level directory - * PROJECT: ReactOS Ancillary Function Driver DLL - * FILE: include/debug.h - * PURPOSE: Debugging support macros - * DEFINES: DBG - Enable debug output - * NASSERT - Disable assertions - */ -#ifndef __DEBUG_H -#define __DEBUG_H - -#define NORMAL_MASK 0x000000FF -#define SPECIAL_MASK 0xFFFFFF00 -#define MIN_TRACE 0x00000001 -#define MID_TRACE 0x00000002 -#define MAX_TRACE 0x00000003 - -#define DEBUG_CHECK 0x00000100 -#define DEBUG_ULTRA 0xFFFFFFFF - -#ifdef ASSERT -#undef ASSERT -#endif - -#if DBG - -extern DWORD DebugTraceLevel; - -#define AFD_DbgPrint(_t_, _x_) \ - if (((DebugTraceLevel & NORMAL_MASK) >= _t_) || \ - ((DebugTraceLevel & _t_) > NORMAL_MASK)) { \ - DbgPrint("(%hS:%d)(%hS) ", __FILE__, __LINE__, __FUNCTION__); \ - DbgPrint _x_; \ - } - -#ifdef NASSERT -#define ASSERT(x) -#else /* NASSERT */ -#define ASSERT(x) if (!(x)) { AFD_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); ExitProcess(0); } -#endif /* NASSERT */ - -#else /* DBG */ - -#define AFD_DbgPrint(_t_, _x_) - -#define ASSERT_IRQL(x) -#define ASSERT(x) - -#endif /* DBG */ - -#ifdef assert -#undef assert -#endif -#define assert(x) ASSERT(x) - - -#define UNIMPLEMENTED \ - AFD_DbgPrint(MIN_TRACE, ("is unimplemented, please try again later.\n")); - -#define CHECKPOINT \ - AFD_DbgPrint(DEBUG_CHECK, ("\n")); - -#define CP CHECKPOINT - -#endif /* __DEBUG_H */ - -/* EOF */ diff --git a/reactos/dll/win32/msafd/misc/dllmain.c b/reactos/dll/win32/msafd/misc/dllmain.c index db0de7c47b1..1995d6334bc 100644 --- a/reactos/dll/win32/msafd/misc/dllmain.c +++ b/reactos/dll/win32/msafd/misc/dllmain.c @@ -14,10 +14,8 @@ #include -#if DBG -//DWORD DebugTraceLevel = DEBUG_ULTRA; -DWORD DebugTraceLevel = 0; -#endif /* DBG */ +#include +WINE_DEFAULT_DEBUG_CHANNEL(msafd); HANDLE GlobalHeap; WSPUPCALLTABLE Upcalls; @@ -71,9 +69,8 @@ WSPSocket(int AddressFamily, LARGE_INTEGER GroupData; INT Status; - AFD_DbgPrint(MAX_TRACE, ("Creating Socket, getting TDI Name\n")); - AFD_DbgPrint(MAX_TRACE, ("AddressFamily (%d) SocketType (%d) Protocol (%d).\n", - AddressFamily, SocketType, Protocol)); + TRACE("Creating Socket, getting TDI Name - AddressFamily (%d) SocketType (%d) Protocol (%d).\n", + AddressFamily, SocketType, Protocol); /* Get Helper Data and Transport */ Status = SockGetTdiName (&AddressFamily, @@ -89,7 +86,7 @@ WSPSocket(int AddressFamily, /* Check for error */ if (Status != NO_ERROR) { - AFD_DbgPrint(MID_TRACE,("SockGetTdiName: Status %x\n", Status)); + ERR("SockGetTdiName: Status %x\n", Status); goto error; } @@ -131,7 +128,7 @@ WSPSocket(int AddressFamily, if( Socket->SharedData.SocketType == SOCK_DGRAM || Socket->SharedData.SocketType == SOCK_RAW ) { - AFD_DbgPrint(MID_TRACE,("Connectionless socket\n")); + TRACE("Connectionless socket\n"); Socket->SharedData.ServiceFlags1 |= XP1_CONNECTIONLESS; } @@ -249,9 +246,9 @@ WSPSocket(int AddressFamily, HeapFree(GlobalHeap, 0, EABuffer); - if (Status != STATUS_SUCCESS) + if (!NT_SUCCESS(Status)) { - AFD_DbgPrint(MIN_TRACE, ("Failed to open socket\n")); + ERR("Failed to open socket. Status 0x%08x\n", Status); HeapFree(GlobalHeap, 0, Socket); @@ -295,12 +292,12 @@ WSPSocket(int AddressFamily, Upcalls.lpWPUModifyIFSHandle(1, (SOCKET)Sock, lpErrno); /* Return Socket Handle */ - AFD_DbgPrint(MID_TRACE,("Success %x\n", Sock)); + TRACE("Success %x\n", Sock); return (SOCKET)Sock; error: - AFD_DbgPrint(MID_TRACE,("Ending %x\n", Status)); + ERR("Ending %x\n", Status); if( Socket ) HeapFree(GlobalHeap, 0, Socket); @@ -334,56 +331,44 @@ TranslateNtStatusError(NTSTATUS Status) case STATUS_BUFFER_TOO_SMALL: case STATUS_BUFFER_OVERFLOW: - DbgPrint("MSAFD: STATUS_BUFFER_TOO_SMALL/STATUS_BUFFER_OVERFLOW\n"); return WSAEMSGSIZE; case STATUS_NO_MEMORY: case STATUS_INSUFFICIENT_RESOURCES: - DbgPrint("MSAFD: STATUS_NO_MEMORY/STATUS_INSUFFICIENT_RESOURCES\n"); return WSAENOBUFS; case STATUS_INVALID_CONNECTION: - DbgPrint("MSAFD: STATUS_INVALID_CONNECTION\n"); return WSAEAFNOSUPPORT; case STATUS_INVALID_ADDRESS: - DbgPrint("MSAFD: STATUS_INVALID_ADDRESS\n"); return WSAEADDRNOTAVAIL; case STATUS_REMOTE_NOT_LISTENING: - DbgPrint("MSAFD: STATUS_REMOTE_NOT_LISTENING\n"); return WSAECONNREFUSED; case STATUS_NETWORK_UNREACHABLE: - DbgPrint("MSAFD: STATUS_NETWORK_UNREACHABLE\n"); return WSAENETUNREACH; case STATUS_INVALID_PARAMETER: - DbgPrint("MSAFD: STATUS_INVALID_PARAMETER\n"); return WSAEINVAL; case STATUS_CANCELLED: - DbgPrint("MSAFD: STATUS_CANCELLED\n"); return WSA_OPERATION_ABORTED; case STATUS_ADDRESS_ALREADY_EXISTS: - DbgPrint("MSAFD: STATUS_ADDRESS_ALREADY_EXISTS\n"); return WSAEADDRINUSE; case STATUS_LOCAL_DISCONNECT: - DbgPrint("MSAFD: STATUS_LOCAL_DISCONNECT\n"); return WSAECONNABORTED; case STATUS_REMOTE_DISCONNECT: - DbgPrint("MSAFD: STATUS_REMOTE_DISCONNECT\n"); return WSAECONNRESET; case STATUS_ACCESS_VIOLATION: - DbgPrint("MSAFD: STATUS_ACCESS_VIOLATION\n"); return WSAEFAULT; default: - DbgPrint("MSAFD: Unhandled NTSTATUS value: 0x%x\n", Status); + ERR("MSAFD: Unhandled NTSTATUS value: 0x%x\n", Status); return WSAENETDOWN; } } @@ -417,8 +402,10 @@ WSPCloseSocket(IN SOCKET Handle, FALSE); if(!NT_SUCCESS(Status)) + { + ERR("NtCreateEvent failed: 0x%08x", Status); return SOCKET_ERROR; - + } /* Get the Socket Structure associate to this Socket*/ Socket = GetSocketStructure(Handle); if (!Socket) @@ -439,6 +426,7 @@ WSPCloseSocket(IN SOCKET Handle, if (Status) { if (lpErrno) *lpErrno = Status; + ERR("WSHNotify failed. Error 0x%#x", Status); NtClose(SockEvent); return SOCKET_ERROR; } @@ -447,6 +435,7 @@ WSPCloseSocket(IN SOCKET Handle, /* If a Close is already in Process, give up */ if (Socket->SharedData.State == SocketClosed) { + WARN("Socket is closing.\n"); NtClose(SockEvent); *lpErrno = WSAENOTSOCK; return SOCKET_ERROR; @@ -497,6 +486,7 @@ WSPCloseSocket(IN SOCKET Handle, */ if (Socket->SharedData.NonBlocking) { + WARN("Would block!\n"); NtClose(SockEvent); Socket->SharedData.State = OldState; *lpErrno = WSAEWOULDBLOCK; @@ -828,23 +818,21 @@ WSPSelect(IN int nfds, if ( HandleCount == 0 ) { - AFD_DbgPrint(MAX_TRACE,("HandleCount: %u. Return SOCKET_ERROR\n", - HandleCount)); + WARN("No handles! Returning SOCKET_ERROR\n", HandleCount); if (lpErrno) *lpErrno = WSAEINVAL; return SOCKET_ERROR; } PollBufferSize = sizeof(*PollInfo) + ((HandleCount - 1) * sizeof(AFD_HANDLE)); - AFD_DbgPrint(MID_TRACE,("HandleCount: %u BufferSize: %u\n", - HandleCount, PollBufferSize)); + TRACE("HandleCount: %u BufferSize: %u\n", HandleCount, PollBufferSize); /* Convert Timeout to NT Format */ if (timeout == NULL) { Timeout.u.LowPart = -1; Timeout.u.HighPart = 0x7FFFFFFF; - AFD_DbgPrint(MAX_TRACE,("Infinite timeout\n")); + TRACE("Infinite timeout\n"); } else { @@ -859,9 +847,9 @@ WSPSelect(IN int nfds, if (lpErrno) *lpErrno = WSAEINVAL; return SOCKET_ERROR; } - AFD_DbgPrint(MAX_TRACE,("Timeout: Orig %d.%06d kernel %d\n", + TRACE("Timeout: Orig %d.%06d kernel %d\n", timeout->tv_sec, timeout->tv_usec, - Timeout.u.LowPart)); + Timeout.u.LowPart); } Status = NtCreateEvent(&SockEvent, @@ -870,8 +858,11 @@ WSPSelect(IN int nfds, 1, FALSE); - if( !NT_SUCCESS(Status) ) + if(!NT_SUCCESS(Status)) + { + ERR("NtCreateEvent failed, 0x%08x\n", Status); return SOCKET_ERROR; + } /* Allocate */ PollBuffer = HeapAlloc(GlobalHeap, 0, PollBufferSize); @@ -935,7 +926,7 @@ WSPSelect(IN int nfds, PollInfo, PollBufferSize); - AFD_DbgPrint(MID_TRACE,("DeviceIoControlFile => %x\n", Status)); + TRACE("DeviceIoControlFile => %x\n", Status); /* Wait for Completition */ if (Status == STATUS_PENDING) @@ -968,9 +959,9 @@ WSPSelect(IN int nfds, case AFD_EVENT_ABORT: case AFD_EVENT_ACCEPT: case AFD_EVENT_CLOSE: - AFD_DbgPrint(MID_TRACE,("Event %x on handle %x\n", - PollInfo->Handles[i].Events, - PollInfo->Handles[i].Handle)); + TRACE("Event %x on handle %x\n", + PollInfo->Handles[i].Events, + PollInfo->Handles[i].Handle); if (! HandleCounted) { OutCount++; @@ -981,9 +972,9 @@ WSPSelect(IN int nfds, break; case AFD_EVENT_SEND: case AFD_EVENT_CONNECT: - AFD_DbgPrint(MID_TRACE,("Event %x on handle %x\n", - PollInfo->Handles[i].Events, - PollInfo->Handles[i].Handle)); + TRACE("Event %x on handle %x\n", + PollInfo->Handles[i].Events, + PollInfo->Handles[i].Handle); if (! HandleCounted) { OutCount++; @@ -994,9 +985,9 @@ WSPSelect(IN int nfds, break; case AFD_EVENT_OOB_RECEIVE: case AFD_EVENT_CONNECT_FAIL: - AFD_DbgPrint(MID_TRACE,("Event %x on handle %x\n", - PollInfo->Handles[i].Events, - PollInfo->Handles[i].Handle)); + TRACE("Event %x on handle %x\n", + PollInfo->Handles[i].Events, + PollInfo->Handles[i].Handle); if (! HandleCounted) { OutCount++; @@ -1024,10 +1015,10 @@ WSPSelect(IN int nfds, *lpErrno = WSAEINVAL; break; } - AFD_DbgPrint(MID_TRACE,("*lpErrno = %x\n", *lpErrno)); + TRACE("*lpErrno = %x\n", *lpErrno); } - AFD_DbgPrint(MID_TRACE,("%d events\n", OutCount)); + TRACE("%d events\n", OutCount); return OutCount; } @@ -1402,7 +1393,7 @@ WSPAccept(SOCKET Handle, /* Re-enable Async Event */ SockReenableAsyncSelectEvent(Socket, FD_ACCEPT); - AFD_DbgPrint(MID_TRACE,("Socket %x\n", AcceptSocket)); + TRACE("Socket %x\n", AcceptSocket); if (Status == STATUS_SUCCESS && (Socket->HelperEvents & WSH_NOTIFY_ACCEPT)) { @@ -1457,7 +1448,7 @@ WSPConnect(SOCKET Handle, if (!NT_SUCCESS(Status)) return MsafdReturnWithErrno(Status, lpErrno, 0, NULL); - AFD_DbgPrint(MID_TRACE,("Called\n")); + TRACE("Called\n"); /* Get the Socket Structure associate to this Socket*/ Socket = GetSocketStructure(Handle); @@ -1578,7 +1569,7 @@ WSPConnect(SOCKET Handle, /* FIXME: Handle Async Connect */ if (Socket->SharedData.NonBlocking) { - AFD_DbgPrint(MIN_TRACE, ("Async Connect UNIMPLEMENTED!\n")); + ERR("Async Connect UNIMPLEMENTED!\n"); } /* Send IOCTL */ @@ -1626,7 +1617,7 @@ WSPConnect(SOCKET Handle, } } - AFD_DbgPrint(MID_TRACE,("Ending\n")); + TRACE("Ending\n"); notify: if (ConnectInfo) HeapFree(GetProcessHeap(), 0, ConnectInfo); @@ -1692,7 +1683,7 @@ WSPShutdown(SOCKET Handle, if( !NT_SUCCESS(Status) ) return -1; - AFD_DbgPrint(MID_TRACE,("Called\n")); + TRACE("Called\n"); /* Get the Socket Structure associate to this Socket*/ Socket = GetSocketStructure(Handle); @@ -1742,7 +1733,7 @@ WSPShutdown(SOCKET Handle, Status = IOSB.Status; } - AFD_DbgPrint(MID_TRACE,("Ending\n")); + TRACE("Ending\n"); NtClose( SockEvent ); @@ -1834,9 +1825,9 @@ WSPGetSockName(IN SOCKET Handle, SocketAddress->Address[0].Address, SocketAddress->Address[0].AddressLength); *NameLength = Socket->SharedData.SizeOfLocalAddress; - AFD_DbgPrint (MID_TRACE, ("NameLength %d Address: %x Port %x\n", + TRACE("NameLength %d Address: %x Port %x\n", *NameLength, ((struct sockaddr_in *)Name)->sin_addr.s_addr, - ((struct sockaddr_in *)Name)->sin_port)); + ((struct sockaddr_in *)Name)->sin_port); HeapFree(GlobalHeap, 0, TdiAddress); return 0; } @@ -1941,9 +1932,9 @@ WSPGetPeerName(IN SOCKET s, SocketAddress->Address[0].Address, SocketAddress->Address[0].AddressLength); *NameLength = Socket->SharedData.SizeOfRemoteAddress; - AFD_DbgPrint (MID_TRACE, ("NameLength %d Address: %x Port %x\n", + TRACE("NameLength %d Address: %x Port %x\n", *NameLength, ((struct sockaddr_in *)Name)->sin_addr.s_addr, - ((struct sockaddr_in *)Name)->sin_port)); + ((struct sockaddr_in *)Name)->sin_port); HeapFree(GlobalHeap, 0, SocketAddress); return 0; } @@ -2085,7 +2076,7 @@ WSPGetSockOpt(IN SOCKET Handle, return SOCKET_ERROR; } - AFD_DbgPrint(MID_TRACE, ("Called\n")); + TRACE("Called\n"); switch (Level) { @@ -2292,7 +2283,7 @@ WSPSetSockOpt( } /* TODO: The total per-socket buffer space reserved for sends */ - AFD_DbgPrint(MIN_TRACE,("Setting send buf to %x is not implemented yet\n", optval)); + ERR("Setting send buf to %x is not implemented yet\n", optval); return 0; case SO_SNDTIMEO: @@ -2326,7 +2317,7 @@ WSPSetSockOpt( default: /* Obviously this is a hack */ - DbgPrint("MSAFD: Set unknown optname %x\n", optname); + ERR("MSAFD: Set unknown optname %x\n", optname); return 0; } } @@ -2365,7 +2356,7 @@ WSPStartup(IN WORD wVersionRequested, { NTSTATUS Status; - AFD_DbgPrint(MAX_TRACE, ("wVersionRequested (0x%X) \n", wVersionRequested)); + ERR("wVersionRequested (0x%X) \n", wVersionRequested); Status = NO_ERROR; Upcalls = UpcallTable; @@ -2405,7 +2396,7 @@ WSPStartup(IN WORD wVersionRequested, lpWSPData->wHighVersion = MAKEWORD(2, 2); } - AFD_DbgPrint(MAX_TRACE, ("Status (%d).\n", Status)); + TRACE("Status (%d).\n", Status); return Status; } @@ -2423,8 +2414,7 @@ WSPAPI WSPCleanup(OUT LPINT lpErrno) { - AFD_DbgPrint(MAX_TRACE, ("\n")); - AFD_DbgPrint(MAX_TRACE, ("Leaving.\n")); + TRACE("Leaving.\n"); *lpErrno = NO_ERROR; return 0; @@ -2660,7 +2650,7 @@ BOOLEAN SockCreateOrReferenceAsyncThread(VOID) 2); // Allow 2 threads only if (!NT_SUCCESS(Status)) { - AFD_DbgPrint(MID_TRACE,("Failed to create completion port\n")); + ERR("Failed to create completion port: 0x%08x\n", Status); return FALSE; } /* Protect Handle */ @@ -3093,7 +3083,7 @@ DllMain(HANDLE hInstDll, { case DLL_PROCESS_ATTACH: - AFD_DbgPrint(MAX_TRACE, ("Loading MSAFD.DLL \n")); + TRACE("Loading MSAFD.DLL \n"); /* Don't need thread attach notifications so disable them to improve performance */ @@ -3108,7 +3098,7 @@ DllMain(HANDLE hInstDll, /* Initialize the lock that protects our socket list */ InitializeCriticalSection(&SocketListLock); - AFD_DbgPrint(MAX_TRACE, ("MSAFD.DLL has been loaded\n")); + TRACE("MSAFD.DLL has been loaded\n"); break; @@ -3126,7 +3116,7 @@ DllMain(HANDLE hInstDll, break; } - AFD_DbgPrint(MAX_TRACE, ("DllMain of msafd.dll (leaving)\n")); + TRACE("DllMain of msafd.dll (leaving)\n"); return TRUE; } diff --git a/reactos/dll/win32/msafd/misc/event.c b/reactos/dll/win32/msafd/misc/event.c index 4bc20eb895d..85b65ae311d 100644 --- a/reactos/dll/win32/msafd/misc/event.c +++ b/reactos/dll/win32/msafd/misc/event.c @@ -12,6 +12,9 @@ #include +#include +WINE_DEFAULT_DEBUG_CHANNEL(msafd); + int WSPAPI WSPEventSelect( @@ -103,28 +106,31 @@ WSPEventSelect( NULL, 0); - AFD_DbgPrint(MID_TRACE,("AFD: %x\n", Status)); + TRACE("AFD: %x\n", Status); /* Wait for return */ if (Status == STATUS_PENDING) { - WaitForSingleObject(SockEvent, INFINITE); + WaitForSingleObject(SockEvent, INFINITE); Status = IOSB.Status; } - AFD_DbgPrint(MID_TRACE,("Waited\n")); + TRACE("Waited\n"); NtClose( SockEvent ); if (Status != STATUS_SUCCESS) + { + ERR("Got status 0x%08x.\n", Status); return MsafdReturnWithErrno(Status, lpErrno, 0, NULL); + } - AFD_DbgPrint(MID_TRACE,("Closed event\n")); + TRACE("Closed event\n"); /* Set Socket Data*/ Socket->EventObject = hEventObject; Socket->NetworkEvents = lNetworkEvents; - AFD_DbgPrint(MID_TRACE,("Leaving\n")); + TRACE("Leaving\n"); return 0; } @@ -144,14 +150,14 @@ WSPEnumNetworkEvents( NTSTATUS Status; HANDLE SockEvent; - AFD_DbgPrint(MID_TRACE,("Called (lpNetworkEvents %x)\n", lpNetworkEvents)); + TRACE("Called (lpNetworkEvents %x)\n", lpNetworkEvents); Status = NtCreateEvent( &SockEvent, EVENT_ALL_ACCESS, NULL, 1, FALSE ); if( !NT_SUCCESS(Status) ) { - AFD_DbgPrint(MID_TRACE,("Could not make an event %x\n", Status)); - return -1; + ERR("Could not make an event %x\n", Status); + return -1; } /* Get the Socket Structure associate to this Socket*/ @@ -177,60 +183,60 @@ WSPEnumNetworkEvents( NULL, 0); - AFD_DbgPrint(MID_TRACE,("AFD: %x\n", Status)); + TRACE("AFD: %x\n", Status); /* Wait for return */ if (Status == STATUS_PENDING) { - WaitForSingleObject(SockEvent, INFINITE); - Status = IOSB.Status; + WaitForSingleObject(SockEvent, INFINITE); + Status = IOSB.Status; } - AFD_DbgPrint(MID_TRACE,("Waited\n")); + TRACE("Waited\n"); NtClose( SockEvent ); if (Status != STATUS_SUCCESS) + { + ERR("Status 0x%08x", Status); return MsafdReturnWithErrno(Status, lpErrno, 0, NULL); + } - AFD_DbgPrint(MID_TRACE,("Closed event\n")); - AFD_DbgPrint(MID_TRACE,("About to touch struct at %x (%d)\n", - lpNetworkEvents, sizeof(*lpNetworkEvents))); + TRACE("Closed event\n"); + TRACE("About to touch struct at %x (%d)\n", lpNetworkEvents, sizeof(*lpNetworkEvents)); lpNetworkEvents->lNetworkEvents = 0; - AFD_DbgPrint(MID_TRACE,("Zeroed struct\n")); - /* Set Events to wait for */ if (EnumReq.PollEvents & AFD_EVENT_RECEIVE) { - lpNetworkEvents->lNetworkEvents |= FD_READ; - lpNetworkEvents->iErrorCode[FD_READ_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_READ_BIT]); + lpNetworkEvents->lNetworkEvents |= FD_READ; + lpNetworkEvents->iErrorCode[FD_READ_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_READ_BIT]); } if (EnumReq.PollEvents & AFD_EVENT_SEND) { - lpNetworkEvents->lNetworkEvents |= FD_WRITE; - lpNetworkEvents->iErrorCode[FD_WRITE_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_WRITE_BIT]); + lpNetworkEvents->lNetworkEvents |= FD_WRITE; + lpNetworkEvents->iErrorCode[FD_WRITE_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_WRITE_BIT]); } if (EnumReq.PollEvents & AFD_EVENT_OOB_RECEIVE) { lpNetworkEvents->lNetworkEvents |= FD_OOB; - lpNetworkEvents->iErrorCode[FD_OOB_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_OOB_BIT]); + lpNetworkEvents->iErrorCode[FD_OOB_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_OOB_BIT]); } if (EnumReq.PollEvents & AFD_EVENT_ACCEPT) { - lpNetworkEvents->lNetworkEvents |= FD_ACCEPT; - lpNetworkEvents->iErrorCode[FD_ACCEPT_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_ACCEPT_BIT]); + lpNetworkEvents->lNetworkEvents |= FD_ACCEPT; + lpNetworkEvents->iErrorCode[FD_ACCEPT_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_ACCEPT_BIT]); } if (EnumReq.PollEvents & - (AFD_EVENT_CONNECT | AFD_EVENT_CONNECT_FAIL)) { + (AFD_EVENT_CONNECT | AFD_EVENT_CONNECT_FAIL)) { lpNetworkEvents->lNetworkEvents |= FD_CONNECT; - lpNetworkEvents->iErrorCode[FD_CONNECT_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_CONNECT_BIT]); + lpNetworkEvents->iErrorCode[FD_CONNECT_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_CONNECT_BIT]); } if (EnumReq.PollEvents & (AFD_EVENT_DISCONNECT | AFD_EVENT_ABORT | AFD_EVENT_CLOSE)) { - lpNetworkEvents->lNetworkEvents |= FD_CLOSE; - lpNetworkEvents->iErrorCode[FD_CLOSE_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_CLOSE_BIT]); + lpNetworkEvents->lNetworkEvents |= FD_CLOSE; + lpNetworkEvents->iErrorCode[FD_CLOSE_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_CLOSE_BIT]); } if (EnumReq.PollEvents & AFD_EVENT_QOS) { @@ -239,11 +245,11 @@ WSPEnumNetworkEvents( } if (EnumReq.PollEvents & AFD_EVENT_GROUP_QOS) { - lpNetworkEvents->lNetworkEvents |= FD_GROUP_QOS; - lpNetworkEvents->iErrorCode[FD_GROUP_QOS_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_GROUP_QOS_BIT]); + lpNetworkEvents->lNetworkEvents |= FD_GROUP_QOS; + lpNetworkEvents->iErrorCode[FD_GROUP_QOS_BIT] = TranslateNtStatusError(EnumReq.EventStatus[FD_GROUP_QOS_BIT]); } - AFD_DbgPrint(MID_TRACE,("Leaving\n")); + TRACE("Leaving\n"); return MsafdReturnWithErrno(STATUS_SUCCESS, lpErrno, 0, NULL); } diff --git a/reactos/dll/win32/msafd/misc/helpers.c b/reactos/dll/win32/msafd/misc/helpers.c index 8c0e588e5f7..2796d86bf72 100644 --- a/reactos/dll/win32/msafd/misc/helpers.c +++ b/reactos/dll/win32/msafd/misc/helpers.c @@ -14,6 +14,9 @@ #include +#include +WINE_DEFAULT_DEBUG_CHANNEL(msafd); + CRITICAL_SECTION HelperDLLDatabaseLock; LIST_ENTRY HelperDLLDatabaseListHead; @@ -37,7 +40,8 @@ SockGetTdiName( PLIST_ENTRY Helpers; INT Status; - AFD_DbgPrint(MID_TRACE,("Called\n")); + TRACE("AddressFamily %p, SocketType %p, Protocol %p, Group %u, Flags %lx, TransportName %wZ, HelperDllContext %p, HeplperDllData %p, Events %p\n", + AddressFamily, SocketType, Protocol, Group, Flags, TransportName, HelperDllContext, HelperDllData, Events); /* Check in our Current Loaded Helpers */ for (Helpers = SockHelpersListHead.Flink; @@ -86,7 +90,7 @@ SockGetTdiName( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Can't get transport list\n")); + WARN("Can't get transport list\n"); return Status; } @@ -94,14 +98,14 @@ SockGetTdiName( for (Transport = Transports; *Transports != 0; Transport += wcslen(Transport) + 1) { - AFD_DbgPrint(MID_TRACE, ("Transport: %S\n", Transports)); + TRACE("Transport: %S\n", Transports); /* See what mapping this Transport supports */ Status = SockLoadTransportMapping(Transport, &Mapping); /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Can't get mapping\n")); + ERR("Can't get mapping for %S\n", Transports); HeapFree(GlobalHeap, 0, Transports); return Status; } @@ -114,7 +118,7 @@ SockGetTdiName( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Can't load helper DLL\n")); + ERR("Can't load helper DLL for Transport %S.\n", Transport); HeapFree(GlobalHeap, 0, Transports); HeapFree(GlobalHeap, 0, Mapping); return Status; @@ -144,7 +148,7 @@ SockGetTdiName( /* Return the Helper Pointers */ *HelperDllData = HelperData; - /* We actually cache these ... the can't be freed yet */ + /* We actually cache these ... the can't be freed yet */ /*HeapFree(GlobalHeap, 0, Transports);*/ /*HeapFree(GlobalHeap, 0, Mapping);*/ return NO_ERROR; @@ -166,14 +170,14 @@ SockLoadTransportMapping( ULONG MappingSize; LONG Status; - AFD_DbgPrint(MID_TRACE,("Called: TransportName %ws\n", TransportName)); + TRACE("TransportName %ws\n", TransportName); /* Allocate a Buffer */ TransportKey = HeapAlloc(GlobalHeap, 0, (54 + wcslen(TransportName)) * sizeof(WCHAR)); /* Check for error */ if (TransportKey == NULL) { - AFD_DbgPrint(MIN_TRACE, ("Buffer allocation failed\n")); + ERR("Buffer allocation failed\n"); return WSAEINVAL; } @@ -190,7 +194,7 @@ SockLoadTransportMapping( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Error reading transport mapping registry\n")); + ERR("Error reading transport mapping registry\n"); return WSAEINVAL; } @@ -199,7 +203,7 @@ SockLoadTransportMapping( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Error reading transport mapping registry\n")); + ERR("Error reading transport mapping registry\n"); return WSAEINVAL; } @@ -208,7 +212,7 @@ SockLoadTransportMapping( /* Check for error */ if (*Mapping == NULL) { - AFD_DbgPrint(MIN_TRACE, ("Buffer allocation failed\n")); + ERR("Buffer allocation failed\n"); return WSAEINVAL; } @@ -217,7 +221,7 @@ SockLoadTransportMapping( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Error reading transport mapping registry\n")); + ERR("Error reading transport mapping registry\n"); HeapFree(GlobalHeap, 0, *Mapping); return WSAEINVAL; } @@ -235,7 +239,7 @@ SockLoadTransportList( HKEY KeyHandle; LONG Status; - AFD_DbgPrint(MID_TRACE,("Called\n")); + TRACE("Called\n"); /* Open the Transports Key */ Status = RegOpenKeyExW (HKEY_LOCAL_MACHINE, @@ -246,7 +250,7 @@ SockLoadTransportList( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Error reading transport list registry\n")); + ERR("Error reading transport list registry\n"); return WSAEINVAL; } @@ -260,7 +264,7 @@ SockLoadTransportList( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Error reading transport list registry\n")); + ERR("Error reading transport list registry\n"); return WSAEINVAL; } @@ -269,7 +273,7 @@ SockLoadTransportList( /* Check for error */ if (*TransportList == NULL) { - AFD_DbgPrint(MIN_TRACE, ("Buffer allocation failed\n")); + ERR("Buffer allocation failed\n"); return WSAEINVAL; } @@ -283,7 +287,7 @@ SockLoadTransportList( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Error reading transport list registry\n")); + ERR("Error reading transport list registry\n"); HeapFree(GlobalHeap, 0, *TransportList); return WSAEINVAL; } @@ -312,7 +316,7 @@ SockLoadHelperDll( /* Check for error */ if (HelperData == NULL) { - AFD_DbgPrint(MIN_TRACE, ("Buffer allocation failed\n")); + ERR("Buffer allocation failed\n"); return WSAEINVAL; } @@ -321,7 +325,7 @@ SockLoadHelperDll( /* Check for error */ if (HelperKey == NULL) { - AFD_DbgPrint(MIN_TRACE, ("Buffer allocation failed\n")); + ERR("Buffer allocation failed\n"); HeapFree(GlobalHeap, 0, HelperData); return WSAEINVAL; } @@ -338,7 +342,7 @@ SockLoadHelperDll( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Error reading helper DLL parameters\n")); + ERR("Error reading helper DLL parameters\n"); HeapFree(GlobalHeap, 0, HelperData); return WSAEINVAL; } @@ -380,7 +384,7 @@ SockLoadHelperDll( /* Check for error */ if (HelperDllName == NULL) { - AFD_DbgPrint(MIN_TRACE, ("Buffer allocation failed\n")); + ERR("Buffer allocation failed\n"); HeapFree(GlobalHeap, 0, HelperData); return WSAEINVAL; } @@ -389,7 +393,7 @@ SockLoadHelperDll( /* Check for error */ if (FullHelperDllName == NULL) { - AFD_DbgPrint(MIN_TRACE, ("Buffer allocation failed\n")); + ERR("Buffer allocation failed\n"); HeapFree(GlobalHeap, 0, HelperDllName); HeapFree(GlobalHeap, 0, HelperData); return WSAEINVAL; @@ -406,7 +410,7 @@ SockLoadHelperDll( /* Check for error */ if (Status) { - AFD_DbgPrint(MIN_TRACE, ("Error reading helper DLL parameters\n")); + ERR("Error reading helper DLL parameters\n"); HeapFree(GlobalHeap, 0, FullHelperDllName); HeapFree(GlobalHeap, 0, HelperDllName); HeapFree(GlobalHeap, 0, HelperData); @@ -425,7 +429,7 @@ SockLoadHelperDll( HeapFree(GlobalHeap, 0, FullHelperDllName); if (HelperData->hInstance == NULL) { - AFD_DbgPrint(MIN_TRACE, ("Error loading helper DLL\n")); + ERR("Error loading helper DLL\n"); HeapFree(GlobalHeap, 0, HelperData); return WSAEINVAL; } @@ -495,25 +499,25 @@ SockIsTripleInMapping( /* The Windows version returns more detailed information on which of the 3 parameters failed...we should do this later */ ULONG Row; - AFD_DbgPrint(MID_TRACE,("Called, Mapping rows = %d\n", Mapping->Rows)); + TRACE("Called, Mapping rows = %d\n", Mapping->Rows); /* Loop through Mapping to Find a matching one */ for (Row = 0; Row < Mapping->Rows; Row++) { - AFD_DbgPrint(MID_TRACE,("Examining: row %d: AF %d type %d proto %d\n", + TRACE("Examining: row %d: AF %d type %d proto %d\n", Row, (INT)Mapping->Mapping[Row].AddressFamily, (INT)Mapping->Mapping[Row].SocketType, - (INT)Mapping->Mapping[Row].Protocol)); + (INT)Mapping->Mapping[Row].Protocol); /* Check of all three values Match */ if (((INT)Mapping->Mapping[Row].AddressFamily == AddressFamily) && ((INT)Mapping->Mapping[Row].SocketType == SocketType) && ((INT)Mapping->Mapping[Row].Protocol == Protocol)) { - AFD_DbgPrint(MID_TRACE,("Found\n")); + TRACE("Found\n"); return TRUE; } } - AFD_DbgPrint(MID_TRACE,("Not found\n")); + WARN("Not found\n"); return FALSE; } diff --git a/reactos/dll/win32/msafd/misc/sndrcv.c b/reactos/dll/win32/msafd/misc/sndrcv.c index e53db683fab..4ada5ff02e0 100644 --- a/reactos/dll/win32/msafd/misc/sndrcv.c +++ b/reactos/dll/win32/msafd/misc/sndrcv.c @@ -12,6 +12,9 @@ #include +#include +WINE_DEFAULT_DEBUG_CHANNEL(msafd); + INT WSPAPI WSPAsyncSelect(IN SOCKET Handle, @@ -113,7 +116,7 @@ WSPRecv(SOCKET Handle, HANDLE SockEvent; PSOCKET_INFORMATION Socket; - AFD_DbgPrint(MID_TRACE,("Called (%x)\n", Handle)); + TRACE("Called (%x)\n", Handle); /* Get the Socket Structure associate to this Socket*/ Socket = GetSocketStructure(Handle); @@ -215,7 +218,7 @@ WSPRecv(SOCKET Handle, NtClose( SockEvent ); - AFD_DbgPrint(MID_TRACE,("Status %x Information %d\n", Status, IOSB->Information)); + TRACE("Status %x Information %d\n", Status, IOSB->Information); /* Return the Flags */ *ReceiveFlags = 0; @@ -448,7 +451,7 @@ WSPSend(SOCKET Handle, if( !NT_SUCCESS(Status) ) return -1; - AFD_DbgPrint(MID_TRACE,("Called\n")); + TRACE("Called\n"); /* Set up the Send Structure */ SendInfo.BufferArray = (PAFD_WSABUF)lpBuffers; @@ -524,14 +527,14 @@ WSPSend(SOCKET Handle, if (Status == STATUS_PENDING) { - AFD_DbgPrint(MID_TRACE,("Leaving (Pending)\n")); + TRACE("Leaving (Pending)\n"); return MsafdReturnWithErrno(Status, lpErrno, IOSB->Information, lpNumberOfBytesSent); } /* Re-enable Async Event */ SockReenableAsyncSelectEvent(Socket, FD_WRITE); - AFD_DbgPrint(MID_TRACE,("Leaving (Success, %d)\n", IOSB->Information)); + TRACE("Leaving (Success, %d)\n", IOSB->Information); return MsafdReturnWithErrno( Status, lpErrno, IOSB->Information, lpNumberOfBytesSent ); } @@ -710,7 +713,7 @@ WSPRecvDisconnect(IN SOCKET s, OUT LPWSABUF lpInboundDisconnectData, OUT LPINT lpErrno) { - UNIMPLEMENTED + UNIMPLEMENTED; return 0; } @@ -722,7 +725,7 @@ WSPSendDisconnect(IN SOCKET s, IN LPWSABUF lpOutboundDisconnectData, OUT LPINT lpErrno) { - UNIMPLEMENTED + UNIMPLEMENTED; return 0; } diff --git a/reactos/dll/win32/msafd/misc/stubs.c b/reactos/dll/win32/msafd/misc/stubs.c index eaa2d704628..57254ab3ecb 100644 --- a/reactos/dll/win32/msafd/misc/stubs.c +++ b/reactos/dll/win32/msafd/misc/stubs.c @@ -10,6 +10,9 @@ #include +#include +WINE_DEFAULT_DEBUG_CHANNEL(msafd); + INT WSPAPI WSPAddressToString( @@ -20,7 +23,7 @@ WSPAddressToString( IN OUT LPDWORD lpdwAddressStringLength, OUT LPINT lpErrno) { - UNIMPLEMENTED + UNIMPLEMENTED; return 0; } @@ -31,7 +34,7 @@ WSPAPI WSPCancelBlockingCall( OUT LPINT lpErrno) { - UNIMPLEMENTED + UNIMPLEMENTED; return 0; } @@ -45,7 +48,7 @@ WSPDuplicateSocket( OUT LPWSAPROTOCOL_INFOW lpProtocolInfo, OUT LPINT lpErrno) { - UNIMPLEMENTED + UNIMPLEMENTED; return 0; } @@ -61,7 +64,7 @@ WSPGetOverlappedResult( OUT LPDWORD lpdwFlags, OUT LPINT lpErrno) { - UNIMPLEMENTED + UNIMPLEMENTED; return FALSE; } @@ -75,7 +78,7 @@ WSPGetQOSByName( OUT LPQOS lpQOS, OUT LPINT lpErrno) { - UNIMPLEMENTED + UNIMPLEMENTED; return FALSE; } @@ -94,7 +97,7 @@ WSPJoinLeaf( IN DWORD dwFlags, OUT LPINT lpErrno) { - UNIMPLEMENTED + UNIMPLEMENTED; return (SOCKET)0; } @@ -109,7 +112,7 @@ WSPStringToAddress( IN OUT LPINT lpAddressLength, OUT LPINT lpErrno) { - UNIMPLEMENTED + UNIMPLEMENTED; return 0; } diff --git a/reactos/dll/win32/msafd/msafd.h b/reactos/dll/win32/msafd/msafd.h index b4e5be44689..52d3330101a 100644 --- a/reactos/dll/win32/msafd/msafd.h +++ b/reactos/dll/win32/msafd/msafd.h @@ -27,9 +27,7 @@ #include #include #include -#include - -#include +#include "include/helpers.h" extern HANDLE GlobalHeap; extern WSPUPCALLTABLE Upcalls;