Commit Graph

146 Commits

Author SHA1 Message Date
Sebastian Lackner d082ea3eab ntdll: Implement support for AT_ROUND_TO_PAGE flag in NtMapViewOfSection. 2015-06-26 20:35:05 +09:00
Sebastian Lackner 7a8470ea94 ntdll: NtMapViewOfSection should fail if both addr_ptr and zero_bits is set. 2015-06-26 20:35:05 +09:00
Sebastian Lackner 8ddab2c2f4 ntdll: Fix status code when NtMapViewOfSection parameter check fails. 2015-06-08 15:34:04 +09:00
Sebastian Lackner 5204d89dc9 kernel32/tests: Add tests for virtual memory alignment behaviour.
AT_ROUND_TO_PAGE is only available on 32-bit non-wow64 systems.
2015-06-08 15:33:59 +09:00
Sebastian Lackner ee6a477cab ntdll: Return failure in NtProtectVirtualMemory when last argument is omitted. 2015-05-05 23:15:31 +09:00
Sebastian Lackner 152b575eed kernel32/tests: Add tests for calling VirtualProtect with NULL as last argument. 2015-05-04 20:07:51 +09:00
Francois Gouget ea932fbcc1 Assorted spelling fixes. 2014-12-05 20:47:45 +01:00
Sebastian Lackner edc259fdeb kernel32/tests: Avoid test failures on systems where hardware DEP is not supported. 2014-10-29 20:31:09 +09:00
Sebastian Lackner d4d8efad46 kernel32/tests: Avoid crashing when exception info[0] contains wrong value. 2014-10-27 19:02:51 +09:00
Sebastian Lackner d74c9e3ec2 kernel32: Implement GetProcessDEPPolicy. 2014-10-21 18:51:19 +09:00
Sebastian Lackner 19927ee517 kernel32/tests: Add test for GetProcessDEPPolicy. 2014-10-21 18:51:17 +09:00
Sebastian Lackner 1c1e7ed016 ntdll: Add support for ATL thunk 'POP ecx; POP eax; PUSH ecx; JMP 4(%eax)'. 2014-10-21 18:51:05 +09:00
Sebastian Lackner dcd2b0a366 ntdll: Add support for ATL thunk 'MOV this,ecx; MOV func,eax; JMP eax'. 2014-10-21 18:51:04 +09:00
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
Alexandre Julliard a2089abd94 ntdll: Enforce correct protection values in virtual memory functions. 2008-12-11 14:05:42 +01:00
Alexandre Julliard af8bb2e922 ntdll: Add support for virtual write watches. 2008-11-25 12:07:35 +01:00
Alexandre Julliard 8772c5f150 kernel32/tests: Add a couple of tests for write watches. 2008-11-20 14:27:35 +01:00
Alexandre Julliard e4d7d902d5 kernel32/tests: Fix the write watch tests on Win98 and Win2000. 2008-11-14 20:36:20 +01:00
Alexandre Julliard 43fae4e425 kernel32/tests: Added a bunch of tests for write watches. 2008-11-14 11:02:15 +01:00
Alexandre Julliard a6ce819ca2 kernel32/tests: Fix one more failing test on Win9x. 2008-11-07 10:50:57 +01:00
Alexandre Julliard cc49f6ba8b kernel32/tests: Fix a few more errors on Win9x. 2008-11-06 11:23:16 +01:00
Alexandre Julliard 5e2ed6bfe9 ntdll,server: Fixed access checks for OpenFileMapping and MapViewOfFile. 2008-11-05 20:32:32 +01:00
Alexandre Julliard f21096ad01 ntdll: Don't force anonymous file mappings to always be fully committed. 2008-11-05 12:31:49 +01:00
Alexandre Julliard 503269a4db kernel32/tests: Add a few more tests, fix some failures on Windows. 2008-11-04 16:23:16 +01:00
Alexandre Julliard 7e54db23e9 kernel32/tests: Fix a couple of tests failing on NT4. 2008-09-19 14:03:40 +02:00
Alexandre Julliard 3cb0bcff83 kernel32/tests: Use Local instead of Global prefix to avoid permission issues. 2008-06-10 17:44:57 +02:00
Alexandre Julliard 9f76085c06 kernel32: File mapping names are case sensitive. 2008-05-21 20:45:11 +02:00
Rob Shearman e55854ddc5 kernel32: Add a test for calling VirtualAlloc on a view of a SEC_RESERVE file mapping. 2007-12-21 12:41:24 +01:00
Jacek Caban 8c2b994c46 kernel32: Terminate child process in virtual tests. 2007-11-26 12:35:55 +01:00
Marcus Meissner 524caf26c6 kernel32: Test IsBadReadPtr/ IsBadCodePtr / IsBadWritePtr. 2007-10-02 13:31:31 +02:00
Dmitry Timoshkov 5be5b9c5c7 kernel32: Add a test for read-only mapping of a write-only section, test actual page access rights of the mapping. 2007-09-25 11:58:11 +02:00
Dmitry Timoshkov 808d38fdb6 kernel32: Print last error in failure messages of the MapViewOfFile test. 2007-09-20 15:52:05 +02:00
Dmitry Timoshkov c6b7f7ccbe kernel32: Add a test for rw mapping of a read-only section. 2007-09-19 14:57:19 +02:00
Michael Stefaniuc 7596e3dd91 kernel32: Remove superfluous casts of void pointers to other pointer types. 2007-06-27 12:53:31 +02:00
Francois Gouget ed94ca1e4f kernel32/tests: src[i] is a char so there is no point trying to stuff 0xcafedead into it. 2007-05-29 12:13:35 +02:00
Detlef Riekenberg 9b8f699a08 kernel32/tests: VirtualAllocEx not present in Win95. 2007-01-22 12:08:16 +01:00
Alexandre Julliard 02e2fa7798 ntdll: Implementation of inter-process NtMapViewOfSection and NtUnmapViewOfSection. 2007-01-18 15:17:51 +01:00
Alexandre Julliard 1ea968016f ntdll: Implementation of inter-process VirtualProtectEx. 2007-01-15 22:30:04 +01:00
Alexandre Julliard 3d00239586 ntdll: Implementation of inter-process VirtualQueryEx. 2007-01-15 22:28:42 +01:00
Alexandre Julliard 7a00142bc1 ntdll: Implementation of inter-process VirtualAllocEx and VirtualFreeEx. 2007-01-15 22:27:40 +01:00
Dmitry Timoshkov 13dfa9a711 kernel32: Do not forget to cleanup if the test is skipped. 2007-01-10 11:59:02 +01:00
Paul Vriens aea09ade58 kernel32/tests: Prevent memory leak. 2007-01-08 21:13:54 +01:00
Dmitry Timoshkov cda3968693 kernel32: Skip the VirtualAllocEx test under Win9x. 2007-01-08 12:51:40 +01:00
Francois Gouget 14918e293a kernel32/tests: Use '%d' to print GetLastError(). 2007-01-04 11:26:22 +01:00
Thomas Kho 91c7c7bf43 kernel32: Add VirtualAllocEx remote thread conformance tests. 2007-01-03 14:13:12 +01:00
Michael Stefaniuc 8218440c20 kernel32/tests: Win64 printf format warning fixes. 2006-10-10 16:11:27 +02:00
Alexandre Julliard 489d87d1e5 kernel32: Renamed the kernel directory to kernel32.
Also get rid of the kernel/messages subdirectory.
2006-09-12 13:34:06 +02:00