Commit Graph

3338 Commits (e4f9f53719b2bb381ebef8c3f680971fbc151133)

Author SHA1 Message Date
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
Akihiro Sagawa e94d2e0459 server: KeyNameInformation returns the full name of the key. 2014-10-15 22:01: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 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
André Hentschel 778c2ab6f9 ntdll: Add support for Win 8.1. 2014-10-08 17:45:51 +02:00
Michael Müller 15d013067d ntdll: Wait until builtin dlls are unloaded before releasing the virtual view. 2014-10-07 20:22:15 +02:00
Sebastian Lackner 5272ca241b ntdll: Set ldr.EntryPoint for main executable. 2014-10-07 20:22:13 +02: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
Akihiro Sagawa e47ff90659 ntdll/tests: Add KeyNameInformation tests. 2014-09-29 17:48:30 +02:00
Akihiro Sagawa 2be3df3c32 ntdll/tests: Remove duplicated entry. 2014-09-29 17:48:25 +02:00
André Hentschel 6d50cfcac2 ntdll: Use a dynamic buffer for change notification data. 2014-09-23 17:17:11 +02:00
Daniel Lehman 27b3a5cce4 ntdll: Use the configured CriticalSection timeout in RtlpWaitForCriticalSection. 2014-09-11 19:30:42 +02:00
Sebastian Lackner 636dc013cd ntdll: Use call_dll_entry_point to execute TLS callbacks. 2014-09-08 16:03:38 +02:00
Sebastian Lackner b7f77bb1fd ntdll: Save more registers in call_dll_entry_point on i386. 2014-09-08 16:02:17 +02:00
Felix Janda 3ae113a957 ntdll: getdents64 might have been defined previously. 2014-09-05 15:26:55 +02:00
Nikolay Sivov 7b7d8374a4 ntdll: NtWaitForMultipleObjects()'s third arguments means 'wait_any', not 'wait_all'. 2014-09-01 13:03:07 +02:00
Sebastian Lackner b765561b49 ntdll/tests: Add tests for FILE_PIPE_INFORMATION.
Based on a patch by Adam Martinson.
2014-08-21 18:02:27 +02:00
Sebastian Lackner 82ce3fdcfd server: Implement set_named_pipe_info wineserver call for NtSetInformationFile/FilePipeInformation.
Based on a patch by Adam Martinson.
2014-08-20 19:40:07 +02:00
Adam Martinson 55e10e4ae2 ntdll: Implement FILE_PIPE_INFORMATION for NtQueryInformationFile. 2014-08-20 19:35:44 +02:00
Ken Thomases a14ed527d8 ntdll: In find_file_in_dir(), don't test directory entries' short names if the target name isn't a short name.
hash_short_file_name() will always create a short name of at least 8 characters
with the 5th being a tilde (~).  If the target name isn't of that form, then it
can never match any short name constructed from the directory entries.
2014-07-30 11:31:55 -05:00
Alexandre Julliard d7f6f8ee6c ntdll: Define arch_prctl since it is missing on Android. 2014-07-24 20:44:50 +02:00
Francois Gouget 09ffb97fdd ntdll: Fix the compilation by using the right mcontext_t field names for the signal context on FreeBSD. 2014-07-24 19:24:41 +02:00
Thomas Faber b4c96633ea include: Correctly spell STATUS_SMI_PRIMITIVE_INSTALLER_FAILED. 2014-07-23 21:24:24 +02:00
Alexandre Julliard 69d198a9eb ntdll: Use the standard mcontext_t type for the signal context on Android. 2014-07-23 21:24:18 +02:00
Alexandre Julliard 775263aa5c ntdll: Directly use ucontext_t instead of SIGCONTEXT on all platforms. 2014-07-23 19:07:00 +02:00
Alexandre Julliard 8d817997ce configure: Add a check for sys/ucontext.h and include it where appropriate. 2014-07-23 19:06:58 +02:00
Alexandre Julliard 1b1ea639cd ntdll: Use a custom signal restorer for Android.
Bionic doesn't provide one, even when vdso has been unmapped by the
preloader.
2014-07-17 14:51:12 +02:00
Frédéric Delanoy ec3a9a54f5 ntdll: Avoid potential integer overflow when computing median position in bsearch. 2014-07-03 18:17:30 +02:00
Sebastian Lackner 9d82ee5cac ntdll/tests: Add tests for DBG_RIPEXCEPTION debugger events. 2014-06-23 11:06:00 +02:00
Sebastian Lackner 2fcecdb72e ntdll: Avoid leaking activation context in RtlCreateUserThread. (Valgrind). 2014-06-23 10:18:23 +02:00
Sebastian Lackner cfd09b0967 ntdll: Fix leaking activation context when terminating via exit_thread(). (Valgrind). 2014-06-23 10:17:26 +02:00
Sebastian Lackner 99ac786c69 ntdll/tests: Add more tests for debug string events.
This patch adds additional tests, to check how debuggers handle
OUTPUT_DEBUG_STRING_EVENT events.
2014-06-20 16:30:57 +02:00
Sebastian Lackner 457f6af057 ntdll/tests: Run crashing i386 exception tests as the last step. 2014-06-20 12:20:25 +02:00
Sebastian Lackner 3aa62498da ntdll/tests: Use an EXCEPTION_REGISTRATION_RECORD array to prevent compiler from reordering variables. 2014-06-20 12:19:53 +02:00
Sebastian Lackner 0828715179 ntdll/tests: Add exception tests for RtlUnwind on i386. 2014-06-19 19:44:34 +02:00
Sebastian Lackner 1b3d67aace kernel32: Raise DBG_PRINTEXCEPTION_C exception in OutputDebugStringA. 2014-06-17 10:58:28 +02:00
Michael Müller 97c3bb040e ntdll: Stub TokenAppContainerSid in NtQueryInformationToken. 2014-06-12 18:13:19 +02:00
Sebastian Lackner dd0e9fe91e ntdll/tests: Fix exception test failures on x86_64. 2014-06-11 19:15:01 +02:00
Jacek Caban 1d6bf952d3 ntdll: Removed no longer used defines. 2014-06-11 16:16:08 +02:00
Nikolay Sivov 5a8d73283c ntdll: Fix LdrLockLoaderLock()/LdrUnlockLoaderLock() on 64bit. 2014-06-11 13:05:39 +02:00
Nikolay Sivov 97e2af1f73 ntdll: Implement non-blocking mode for LdrLockLoaderLock(). 2014-05-16 10:52:52 +02:00
Martin Storsjo 8cb42d4135 ntdll: Align FILE_*_DIRECTORY_INFORMATION structs to 8 bytes. 2014-05-15 19:04:56 +02:00
Martin Storsjo 114444ca9c ntdll: Don't write uninitialized bytes at the end of filenames. 2014-05-15 19:04:55 +02:00
Alexandre Julliard 2cef8dbcc2 ntdll: Determine the mapping type automatically from the WRITECOPY flag. 2014-05-13 12:28:58 +02:00