diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2017-09-27 11:44:15 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2017-09-27 18:59:50 +0200 |
| commit | bdffe2484cfffefd2f3321cb42890be70887cf44 (patch) | |
| tree | d0479d4e02301160ddb11c09f154d115cc70d80f /executor/common.h | |
| parent | 11fc874fb5c0446e3eebe3a3ca4bad19c6407505 (diff) | |
executor: fix execution of windows syscalls
First, they must be called with stdcall convention.
Second, wrap them in __try/__except because they can crash.
Diffstat (limited to 'executor/common.h')
| -rw-r--r-- | executor/common.h | 8 |
1 files changed, 6 insertions, 2 deletions
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 |
