mirror of
git://source.winehq.org/git/wine.git
synced 2024-11-05 18:01:34 +00:00
Implement TransactNamedPipe for the non-overlapped case.
This commit is contained in:
parent
a5fb277fc4
commit
c1b4d7d16f
1 changed files with 21 additions and 6 deletions
|
@ -1342,17 +1342,32 @@ BOOL WINAPI DisconnectNamedPipe(HANDLE hPipe)
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
* TransactNamedPipe (KERNEL32.@)
|
* TransactNamedPipe (KERNEL32.@)
|
||||||
|
*
|
||||||
|
* BUGS
|
||||||
|
* should be done as a single operation in the wineserver or kernel
|
||||||
*/
|
*/
|
||||||
BOOL WINAPI TransactNamedPipe(
|
BOOL WINAPI TransactNamedPipe(
|
||||||
HANDLE hPipe, LPVOID lpInput, DWORD dwInputSize, LPVOID lpOutput,
|
HANDLE handle, LPVOID lpInput, DWORD dwInputSize, LPVOID lpOutput,
|
||||||
DWORD dwOutputSize, LPDWORD lpBytesRead, LPOVERLAPPED lpOverlapped)
|
DWORD dwOutputSize, LPDWORD lpBytesRead, LPOVERLAPPED lpOverlapped)
|
||||||
{
|
{
|
||||||
FIXME("%p %p %ld %p %ld %p %p\n",
|
BOOL r;
|
||||||
hPipe, lpInput, dwInputSize, lpOutput,
|
DWORD count;
|
||||||
|
|
||||||
|
TRACE("%p %p %ld %p %ld %p %p\n",
|
||||||
|
handle, lpInput, dwInputSize, lpOutput,
|
||||||
dwOutputSize, lpBytesRead, lpOverlapped);
|
dwOutputSize, lpBytesRead, lpOverlapped);
|
||||||
if(lpBytesRead)
|
|
||||||
*lpBytesRead=0;
|
if (lpOverlapped)
|
||||||
return FALSE;
|
{
|
||||||
|
FIXME("Doesn't support overlapped operation as yet\n");
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
r = WriteFile(handle, lpOutput, dwOutputSize, &count, NULL);
|
||||||
|
if (r)
|
||||||
|
r = ReadFile(handle, lpInput, dwInputSize, lpBytesRead, NULL);
|
||||||
|
|
||||||
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
|
|
Loading…
Reference in a new issue