133 Commits

Author SHA1 Message Date
Sebastian Lackner
40472cd3a7 ntdll: Add support for ATL thunk 'MOV this,edx; MOV func,ecx; JMP ecx'. 2014-10-21 18:51:02 +09:00
Sebastian Lackner
aab0d25a49 ntdll: Add support for ATL thunk 'MOV this,ecx; JMP func'. 2014-10-21 18:50:59 +09:00
Sebastian Lackner
34b2d920b4 ntdll: Improve check_atl_thunk to prevent passing exceptions to the usermode application. 2014-10-15 11:52:06 +09:00
Sebastian Lackner
511a849046 kernel32/tests: Add test to show ATL thunk emulator exceptions are not passed to usermode. 2014-10-15 11:51:58 +09:00
Sebastian Lackner
1c957ceb96 ntdll: Only check for ATL thunk if allowed by execute option flags.
Checking for ATL thunks can be disabled by setting MEM_EXECUTE_OPTION_DISABLE_THUNK_EMULATION.
2014-10-13 18:31:26 +09:00
Sebastian Lackner
e16996bb3d ntdll: reset_write_watches shouldn't remove enforced exec permissions. 2014-10-13 18:31:19 +09:00
Sebastian Lackner
aa3c6111d9 ntdll: Ensure force_exec_prot is also used for views with write watch permissions. 2014-10-13 18:31:14 +09:00
Sebastian Lackner
0cf3d78167 ntdll: Avoid recursive exception handler calls when handling guard pages.
The ATL check leads to problems when a page is protected with guard page protection.
raise_segv_exception is called with EXCEPTION_EXECUTE_FAULT. The ATL check tries to
read the memory, and triggers another exception handler. This time the virtual_handle_fault
check is executed, and removes the guard page protection. Afterwards, when the ATL
check returns, the exception is _not_ catched by virtual_handle_fault, but instead
passed to the application.
2014-10-13 18:31:06 +09:00
Sebastian Lackner
9a806d0f1c kernel32/tests: Add tests for DEP combined with guard pages and write watches. 2014-10-13 18:30:57 +09:00
Michael Müller
9e69715900 ntdll: Fix handling of page fault if a guard page and write watch is triggered at the same time. 2014-10-07 20:21:56 +02:00
Sebastian Lackner
53611dfbab kernel32/tests: Add tests for PAGE_GUARD memory protection. 2014-10-07 20:21:54 +02:00
Jacek Caban
5ceb22714e ntdll: Use MAP_PRIVATE for copy on write mappings. 2014-05-13 12:27:32 +02:00
Jacek Caban
ea950ac7cf kernel32/tests: Added more shared memory tests, exposing MAP_PRIVATE mapping for read only mapping problem. 2014-05-08 18:27:51 +02:00
André Hentschel
4ecc9788bd ntdll: Adjust NtAreMappedFilesTheSame to win8 behaviour. 2013-11-13 11:21:50 +01:00
Dmitry Timoshkov
035295bb31 kernel32/tests: Fix virtual memory tests compilation with __WINESRC__ defined. 2013-10-17 20:29:28 +02:00
Dmitry Timoshkov
3d759a0c69 ntdll: NtAllocateVirtualMemory should fail to commit if an address range is already committed for a memory mapped file. 2013-07-19 14:40:17 +02:00
Dmitry Timoshkov
b0a3d93400 kernel32/tests: Fix a couple of typos. 2013-07-02 10:04:24 +02:00
Dmitry Timoshkov
c69cc5506b kernel32/tests: Add more VirtualAlloc and VirtualProtect tests. 2013-06-25 12:35:02 +02:00
Dmitry Timoshkov
54e2211db0 kernel32: Add a shared memory test. 2013-04-12 11:49:09 +02:00
Alexandre Julliard
5f20ecc62a kernel32/tests: Remove a couple of invalid tests. 2012-05-09 23:21:07 +02:00
Dmitry Timoshkov
d4d39736ce kernel32: Add more memory access checks. 2012-04-19 19:28:12 +02:00
Dmitry Timoshkov
d4e57b1598 kernel32: Fix some typos, remove not needed casts. 2012-04-17 11:49:13 +02:00
Alexander Morozov
5c9ca5cb53 kernel32/tests: Add more tests for early closing mapping handle. 2012-04-16 18:56:15 +02:00
Alexander Morozov
e01643af9c kernel32/tests: Add a test for creating named mapping after closing without unmapping. 2012-04-13 16:15:37 +02:00
Dmitry Timoshkov
3a5ee02735 ntdll: Add an access check for file mappings. 2012-01-24 18:10:31 +01:00
Dmitry Timoshkov
d50814846e kernel32: Remove a no longer needed todo_wine. 2012-01-18 12:37:39 +01:00
Dmitry Timoshkov
1d01a7ba1e kernel32: Fix access flags to page protection mapping in MapViewOfFileEx. 2012-01-17 11:54:43 +01:00
Dmitry Timoshkov
9bd55bc2f5 kernel32: Test MapViewOfFile and NtMapViewOfSection side by side. 2012-01-16 19:32:48 +01:00
Dmitry Timoshkov
1026bddf53 kernel32: Add a test for MapViewOfFile called on a not accessible mapping. 2011-12-20 10:15:42 +01:00
Dmitry Timoshkov
eed406e028 ntdll: Setting WRITECOPY protection on a memory-mapped file is allowed. 2011-12-16 16:38:29 +01:00
Dmitry Timoshkov
5379a75baf kernel32: Add the tests for various combinations of CreateFileMapping/MapViewOfFile protections. 2011-12-15 14:46:53 +01:00
Dmitry Timoshkov
d7e428a40a kernel32: Add a bunch of VirtualProtect tests on a memory-mapped file. 2011-12-01 16:01:30 +01:00
Dmitry Timoshkov
f9bb1b7afd kernel32: Add a test for protections accepted by CreateFileMapping, make it pass under Wine. 2011-11-30 14:56:43 +01:00
Dmitry Timoshkov
30882eb08e kernel32: Add a test to see how a page protection changes after write. 2011-11-22 11:10:02 +01:00
Dmitry Timoshkov
a93f86716f kernel32: Add a bunch of tests for protections accepted by VirtualAlloc, make it pass under Wine. 2011-11-08 10:19:51 +01:00
Dmitry Timoshkov
33255ee6ec ntdll: Make the VirtualProtect tests pass under Wine. 2011-11-03 13:51:56 +01:00
Dmitry Timoshkov
4eb69c8d7d kernel32: Add a bunch of VirtualProtect tests. 2011-09-27 16:24:26 +02:00
André Hentschel
0ba0f505af kernel32/tests: Don't test function directly when reporting GetLastError(). 2011-09-26 18:16:03 +02:00
André Hentschel
85386c2c6e kernel32/tests: Don't test function directly when reporting GetLastError(). 2011-01-12 14:59:43 +01:00
Alexandre Julliard
e7c67c0cb1 ntdll: More complete implementation of NtAreMappedFilesTheSame. 2010-10-19 16:14:40 +02:00
Alexandre Julliard
971e9a2239 kernel32/tests: Add some tests for NtAreMappedFilesTheSame. 2010-10-18 19:47:50 +02:00
Andrew Nguyen
11dce800c1 kernel32/tests: Add tests for IsBadCodePtr. 2010-01-18 14:38:53 +01:00
Andrew Nguyen
5b9730c494 kernel32/tests: Add more tests for IsBadWritePtr. 2010-01-18 14:38:48 +01:00
Andrew Nguyen
4108fd0f35 kernel32/tests: Add tests for IsBadReadPtr. 2010-01-18 14:38:41 +01:00
Alexandre Julliard
1a3777e2dc ntdll: Reject VirtualAlloc blocks in NtUnmapViewOfSection. 2009-11-04 19:53:00 +01:00
Alexandre Julliard
df6c65623a ntdll: Add support for the MEM_RESET flag in VirtualAlloc, with tests. 2009-07-09 19:31:36 +02:00
Alexandre Julliard
d5d0738fb9 ntdll: Tweak the file mapping permission checks some more, with tests. 2009-05-19 21:36:05 +02:00
Francois Gouget
5989534540 kernel32/tests: Use win_skip() to skip over unimplemented functionality. 2009-02-24 16:57:26 +01:00
Alexandre Julliard
31fd066393 kernel32/tests: Add test cases for reading/writing process memory from an invalid buffer address. 2009-01-15 12:06:16 +01:00
Alexandre Julliard
9e070a6108 kernel32/tests: Use the correct SIZE_T type instead of unsigned long. 2009-01-03 20:21:43 +01:00