From bdffe2484cfffefd2f3321cb42890be70887cf44 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Wed, 27 Sep 2017 11:44:15 +0200 Subject: executor: fix execution of windows syscalls First, they must be called with stdcall convention. Second, wrap them in __try/__except because they can crash. --- executor/common.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'executor/common.h') diff --git a/executor/common.h b/executor/common.h index f5b525cc4..a283f7fbe 100644 --- a/executor/common.h +++ b/executor/common.h @@ -23,7 +23,11 @@ #endif #if defined(SYZ_EXECUTOR) -typedef long (*syscall_t)(long, long, long, long, long, long, long, long, long); +#ifndef SYSCALLAPI +#define SYSCALLAPI +#endif + +typedef long(SYSCALLAPI* syscall_t)(long, long, long, long, long, long, long, long, long); struct call_t { const char* name; @@ -156,4 +160,4 @@ static uint16_t csum_inet_digest(struct csum_inet* csum) { return ~csum->acc; } -#endif \ No newline at end of file +#endif -- cgit mrf-deployment