diff --git a/dll/win32/rpcrt4/rpc_transport.c b/dll/win32/rpcrt4/rpc_transport.c index 9edc2ee718d..eaa7718b2cc 100644 --- a/dll/win32/rpcrt4/rpc_transport.c +++ b/dll/win32/rpcrt4/rpc_transport.c @@ -59,7 +59,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(rpc); #ifdef __REACTOS__ /* FIXME: Inspect */ -BOOL WINAPI CancelIoEx(HANDLE handle, LPOVERLAPPED lpOverlapped) +static BOOL WINAPI CancelIoEx_(HANDLE handle, LPOVERLAPPED lpOverlapped) { IO_STATUS_BLOCK io_status; @@ -71,6 +71,7 @@ BOOL WINAPI CancelIoEx(HANDLE handle, LPOVERLAPPED lpOverlapped) } return TRUE; } +#define CancelIoEx CancelIoEx_ #endif static RpcConnection *rpcrt4_spawn_connection(RpcConnection *old_connection); diff --git a/sdk/include/psdk/ioapiset.h b/sdk/include/psdk/ioapiset.h new file mode 100644 index 00000000000..7ae7a959ab3 --- /dev/null +++ b/sdk/include/psdk/ioapiset.h @@ -0,0 +1,133 @@ +/* + * ioapiset.h + * + * Interface definitions for api-ms-win-core-io-l1 + * + * This file is part of the ReactOS SDK. + * + * Contributors: + * Created by Timo Kreuzer + * + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAIMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + */ + +#ifndef _IO_APISET_H_ +#define _IO_APISET_H_ + +#pragma once + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +WINBASEAPI +BOOL +WINAPI +CancelIo( + _In_ HANDLE hFile); + +WINBASEAPI +_Ret_maybenull_ +HANDLE +WINAPI +CreateIoCompletionPort( + _In_ HANDLE FileHandle, + _In_opt_ HANDLE ExistingCompletionPort, + _In_ ULONG_PTR CompletionKey, + _In_ DWORD NumberOfConcurrentThreads); + +WINBASEAPI +BOOL +WINAPI +DeviceIoControl( + _In_ HANDLE hDevice, + _In_ DWORD dwIoControlCode, + _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer, + _In_ DWORD nInBufferSize, + _Out_writes_bytes_to_opt_(nOutBufferSize,*lpBytesReturned) LPVOID lpOutBuffer, + _In_ DWORD nOutBufferSize, + _Out_opt_ LPDWORD lpBytesReturned, + _Inout_opt_ LPOVERLAPPED lpOverlapped); + +WINBASEAPI +BOOL +WINAPI +GetOverlappedResult( + _In_ HANDLE hFile, + _In_ LPOVERLAPPED lpOverlapped, + _Out_ LPDWORD lpNumberOfBytesTransferred, + _In_ BOOL bWait); + +WINBASEAPI +BOOL +WINAPI +GetOverlappedResultEx( + _In_ HANDLE hFile, + _In_ LPOVERLAPPED lpOverlapped, + _Out_ LPDWORD lpNumberOfBytesTransferred, + _In_ DWORD dwMilliseconds, + _In_ BOOL bAlertable); + +WINBASEAPI +BOOL +WINAPI +GetQueuedCompletionStatus( + _In_ HANDLE CompletionPort, + _Out_ LPDWORD lpNumberOfBytesTransferred, + _Out_ PULONG_PTR lpCompletionKey, + _Out_ LPOVERLAPPED* lpOverlapped, + _In_ DWORD dwMilliseconds); + +WINBASEAPI +BOOL +WINAPI +PostQueuedCompletionStatus( + _In_ HANDLE CompletionPort, + _In_ DWORD dwNumberOfBytesTransferred, + _In_ ULONG_PTR dwCompletionKey, + _In_opt_ LPOVERLAPPED lpOverlapped); + +#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) + +WINBASEAPI +BOOL +WINAPI +GetQueuedCompletionStatusEx( + _In_ HANDLE CompletionPort, + _Out_writes_to_(ulCount,*ulNumEntriesRemoved) LPOVERLAPPED_ENTRY lpCompletionPortEntries, + _In_ ULONG ulCount, + _Out_ PULONG ulNumEntriesRemoved, + _In_ DWORD dwMilliseconds, + _In_ BOOL fAlertable); + +WINBASEAPI +BOOL +WINAPI +CancelIoEx( + _In_ HANDLE hFile, + _In_opt_ LPOVERLAPPED lpOverlapped); + +WINBASEAPI +BOOL +WINAPI +CancelSynchronousIo( + _In_ HANDLE hThread); + +#endif // (_WIN32_WINNT >= _WIN32_WINNT_VISTA) + +#ifdef __cplusplus +} +#endif + +#endif // _IO_APISET_H_ diff --git a/sdk/include/psdk/winbase.h b/sdk/include/psdk/winbase.h index 0d79ed7eb99..b23081bacff 100644 --- a/sdk/include/psdk/winbase.h +++ b/sdk/include/psdk/winbase.h @@ -18,9 +18,10 @@ extern "C" { #endif #include -#include +#include #include #include +#include #ifdef _MSC_VER #pragma warning(push) @@ -1396,11 +1397,6 @@ CallNamedPipeW( _In_ DWORD nTimeOut); BOOL WINAPI CancelDeviceWakeupRequest(_In_ HANDLE); -BOOL WINAPI CancelIo(HANDLE); -#if (_WIN32_WINNT >= 0x0600) -BOOL WINAPI CancelIoEx(HANDLE,LPOVERLAPPED); -BOOL WINAPI CancelSynchronousIo(HANDLE); -#endif BOOL WINAPI CancelWaitableTimer(HANDLE); #if (_WIN32_WINNT >= 0x0501) @@ -1473,7 +1469,6 @@ HANDLE WINAPI CreateFileMappingW(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD, BOOL WINAPI CreateHardLinkA(_In_ LPCSTR, _In_ LPCSTR, _Reserved_ LPSECURITY_ATTRIBUTES); BOOL WINAPI CreateHardLinkW(_In_ LPCWSTR, _In_ LPCWSTR, _Reserved_ LPSECURITY_ATTRIBUTES); #endif -HANDLE WINAPI CreateIoCompletionPort(HANDLE,HANDLE,ULONG_PTR,DWORD); #if (_WIN32_WINNT >= 0x0500) _Ret_maybenull_ HANDLE WINAPI CreateJobObjectA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_opt_ LPCSTR); _Ret_maybenull_ HANDLE WINAPI CreateJobObjectW(_In_opt_ LPSECURITY_ATTRIBUTES, _In_opt_ LPCWSTR); @@ -1607,7 +1602,6 @@ BOOL WINAPI DeleteVolumeMountPointW(LPCWSTR); #endif BOOL WINAPI DeregisterEventSource(_In_ HANDLE); BOOL WINAPI DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*); -BOOL WINAPI DeviceIoControl(HANDLE,DWORD,PVOID,DWORD,PVOID,DWORD,PDWORD,POVERLAPPED); BOOL WINAPI DisableThreadLibraryCalls(HMODULE); #if (_WIN32_WINNT >= 0x0500) @@ -2000,7 +1994,6 @@ GetEventLogInformation( BOOL WINAPI GetNumberOfEventLogRecords(_In_ HANDLE, _Out_ PDWORD); BOOL WINAPI GetOldestEventLogRecord(_In_ HANDLE, _Out_ PDWORD); -BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,PDWORD,BOOL); DWORD WINAPI GetPriorityClass(HANDLE); BOOL WINAPI GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); UINT WINAPI GetPrivateProfileIntA(_In_ LPCSTR, _In_ LPCSTR, _In_ INT, _In_opt_ LPCSTR); @@ -2129,7 +2122,6 @@ GetProfileStringW( _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString, _In_ DWORD nSize); -BOOL WINAPI GetQueuedCompletionStatus(HANDLE,PDWORD,PULONG_PTR,LPOVERLAPPED*,DWORD); BOOL WINAPI GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR_CONTROL,PDWORD); BOOL WINAPI GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL); BOOL WINAPI GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID*,LPBOOL); @@ -2638,7 +2630,6 @@ HANDLE WINAPI OpenWaitableTimerW(DWORD,BOOL,LPCWSTR); WINBASEAPI void WINAPI OutputDebugStringA(LPCSTR); WINBASEAPI void WINAPI OutputDebugStringW(LPCWSTR); BOOL WINAPI PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD); -BOOL WINAPI PostQueuedCompletionStatus(HANDLE,DWORD,ULONG_PTR,LPOVERLAPPED); DWORD WINAPI PrepareTape(_In_ HANDLE, _In_ DWORD, _In_ BOOL); BOOL WINAPI PrivilegeCheck (HANDLE,PPRIVILEGE_SET,PBOOL); BOOL WINAPI PrivilegedServiceAuditAlarmA(_In_ LPCSTR, _In_ LPCSTR, _In_ HANDLE, _In_ PPRIVILEGE_SET, _In_ BOOL);