|
HyperDbg Debugger
|
Server and Client communication over NamedPipes. More...
#include "pch.h"Functions | |
| HANDLE | NamedPipeServerCreatePipe (LPCSTR PipeName, UINT32 OutputBufferSize, UINT32 InputBufferSize) |
| Create a named pipe server. | |
| BOOLEAN | NamedPipeServerWaitForClientConntection (HANDLE PipeHandle) |
| wait for client connection | |
| UINT32 | NamedPipeServerReadClientMessage (HANDLE PipeHandle, char *BufferToSave, int MaximumReadBufferLength) |
| read client message from the named pipe | |
| BOOLEAN | NamedPipeServerSendMessageToClient (HANDLE PipeHandle, char *BufferToSend, int BufferSize) |
| VOID | NamedPipeServerCloseHandle (HANDLE PipeHandle) |
| Close handle of server's named pipe. | |
| HANDLE | NamedPipeClientCreatePipe (LPCSTR PipeName) |
| Create a client named pipe. | |
| HANDLE | NamedPipeClientCreatePipeOverlappedIo (LPCSTR PipeName) |
| Create a client named pipe through overlapped I/O. | |
| BOOLEAN | NamedPipeClientSendMessage (HANDLE PipeHandle, char *BufferToSend, int BufferSize) |
| send client message over named pipe | |
| UINT32 | NamedPipeClientReadMessage (HANDLE PipeHandle, char *BufferToRead, int MaximumSizeOfBuffer) |
| VOID | NamedPipeClientClosePipe (HANDLE PipeHandle) |
| close named pipe handle of client | |
| int | NamedPipeServerExample () |
| and example of how to use named pipe as a server | |
| int | NamedPipeClientExample () |
| and example of how to use named pipe as a client | |
Variables | |
| OVERLAPPED | g_OverlappedIoStructureForReadDebugger |
| This is an OVERLAPPED structure for managing simultaneous read and writes for debugger (in current design debuggee is not needed to write simultaneously but it's needed for write) | |
| OVERLAPPED | g_OverlappedIoStructureForWriteDebugger |
Server and Client communication over NamedPipes.
| VOID NamedPipeClientClosePipe | ( | HANDLE | PipeHandle | ) |
close named pipe handle of client
| PipeHandle |
| HANDLE NamedPipeClientCreatePipe | ( | LPCSTR | PipeName | ) |
Create a client named pipe.
Pipe name format - \servername\pipe\pipename This pipe is for server on the same computer, however, pipes can be used to connect to a remote server
| PipeName |
| HANDLE NamedPipeClientCreatePipeOverlappedIo | ( | LPCSTR | PipeName | ) |
Create a client named pipe through overlapped I/O.
Pipe name format - \servername\pipe\pipename This pipe is for server on the same computer, however, pipes can be used to connect to a remote server
| PipeName |
| int NamedPipeClientExample | ( | ) |
and example of how to use named pipe as a client
| UINT32 NamedPipeClientReadMessage | ( | HANDLE | PipeHandle, |
| char * | BufferToRead, | ||
| int | MaximumSizeOfBuffer ) |
| BOOLEAN NamedPipeClientSendMessage | ( | HANDLE | PipeHandle, |
| char * | BufferToSend, | ||
| int | BufferSize ) |
send client message over named pipe
| PipeHandle | |
| BufferToSend | |
| BufferSize |
| VOID NamedPipeServerCloseHandle | ( | HANDLE | PipeHandle | ) |
Close handle of server's named pipe.
| PipeHandle |
| HANDLE NamedPipeServerCreatePipe | ( | LPCSTR | PipeName, |
| UINT32 | OutputBufferSize, | ||
| UINT32 | InputBufferSize ) |
Create a named pipe server.
| PipeName | |
| OutputBufferSize | |
| InputBufferSize |
| int NamedPipeServerExample | ( | ) |
and example of how to use named pipe as a server
| UINT32 NamedPipeServerReadClientMessage | ( | HANDLE | PipeHandle, |
| char * | BufferToSave, | ||
| int | MaximumReadBufferLength ) |
read client message from the named pipe
| PipeHandle | |
| BufferToSave | |
| MaximumReadBufferLength |
| BOOLEAN NamedPipeServerSendMessageToClient | ( | HANDLE | PipeHandle, |
| char * | BufferToSend, | ||
| int | BufferSize ) |
| BOOLEAN NamedPipeServerWaitForClientConntection | ( | HANDLE | PipeHandle | ) |
wait for client connection
| PipeHandle |
|
extern |
This is an OVERLAPPED structure for managing simultaneous read and writes for debugger (in current design debuggee is not needed to write simultaneously but it's needed for write)
|
extern |