From ca27b3bc5783ce1dbda7f23883d0ddf3729902a8 Mon Sep 17 00:00:00 2001 From: Suraj K Suresh Date: Mon, 28 Sep 2020 14:48:39 +0530 Subject: executor: msvc support syz-executor --- executor/executor_windows.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'executor/executor_windows.h') diff --git a/executor/executor_windows.h b/executor/executor_windows.h index 1e210826b..bb863c009 100644 --- a/executor/executor_windows.h +++ b/executor/executor_windows.h @@ -6,6 +6,9 @@ #include "nocover.h" +#define read read_win +#define write write_win + static void os_init(int argc, char** argv, void* data, size_t data_size) { if (VirtualAlloc(data, data_size, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE) != data) @@ -20,3 +23,18 @@ static intptr_t execute_syscall(const call_t* c, intptr_t a[kMaxArgs]) return -1; } } + +static __inline int read_win(int pipe_id, void* input_data, int data_size) +{ + DWORD dwBytesRead = 0; + ReadFile((HANDLE)_get_osfhandle(pipe_id), input_data, data_size, &dwBytesRead, NULL); + + return (int)dwBytesRead; +} + +static __inline int write_win(int pipe_id, void* input_data, int data_size) +{ + DWORD dwBytesWritten = 0; + WriteFile((HANDLE)_get_osfhandle(pipe_id), input_data, data_size, &dwBytesWritten, NULL); + return (int)dwBytesWritten; +} -- cgit mrf-deployment