comparison dyncallback/dyncall_alloc_wx_win32.c @ 202:030fbb70aa1b

- changed allocwx code: * to introduce a call allowing to switch the written page to be executable (e.g. using mprotect) * changed mmap based code so page is always W^X
author Tassilo Philipp
date Mon, 20 Mar 2017 23:12:58 +0100
parents 3e629dc19168
children f5577f6bf97a
comparison
equal deleted inserted replaced
201:136409adbdd1 202:030fbb70aa1b
26 26
27 #include "dyncall_alloc_wx.h" 27 #include "dyncall_alloc_wx.h"
28 #include <windows.h> 28 #include <windows.h>
29 #include <assert.h> 29 #include <assert.h>
30 30
31 int dcAllocWX(size_t size, void** ptr) 31 DCerror dcAllocWX(size_t size, void** ptr)
32 { 32 {
33 LPVOID p = VirtualAlloc(0, size, MEM_COMMIT, PAGE_EXECUTE_READWRITE); 33 LPVOID p = VirtualAlloc(0, size, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
34 if (p == NULL) return -1; 34 if (p == NULL) return -1;
35 *ptr = p; 35 *ptr = p;
36 return 0;
37 }
38
39 DCerror dcInitExecWX(void* p, size_t size)
40 {
36 return 0; 41 return 0;
37 } 42 }
38 43
39 void dcFreeWX(void* p, size_t size) 44 void dcFreeWX(void* p, size_t size)
40 { 45 {