Alexandre Julliard
4c763a41ee
server: Allow the object attributes to be omitted in requests.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-16 00:05:57 +09:00
Alexandre Julliard
7350682aa6
server: Store the attributes in the object_attributes structure.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-16 00:05:57 +09:00
Alexandre Julliard
3198fb0c1c
ntdll: Add a helper function to allocate the full object_attributes structure.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-16 00:05:57 +09:00
Alex Henrie
63468b02b8
ntdll: Remove redundant avail_mode check and confusing comment.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-12 22:26:28 +09:00
Austin English
23d3b123db
ntdll: Add RtlCreateUserProcess stub.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-09 17:30:04 +09:00
Alex Henrie
a228d7d980
ntdll/tests: Correct signaled / not signaled error messages.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-09 17:30:04 +09:00
Sebastian Lackner
6483c07b4e
ntdll/tests: Add tests for setting debug registers with NtSetContextThread.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-06 15:50:54 +01:00
Sebastian Lackner
7c468f8eca
ntdll: Receive debug registers from server on x86_64.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-06 15:50:42 +01:00
Sebastian Lackner
897ac569c8
ntdll: Check ContextFlags before restoring registers on x86_64.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-06 15:50:30 +01:00
Nikolay Sivov
ae1fe69e39
kernel32: Forward GetLogicalProcessorInformationEx() to ntdll.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 15:08:29 +01:00
Nikolay Sivov
114123370b
ntdll: Add NtQuerySystemInformationEx() stub.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 15:08:26 +01:00
Nikolay Sivov
c9c138f53f
ntdll/tests: Some tests for NtQuerySystemInformationEx().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 15:08:20 +01:00
Sebastian Lackner
08706ef357
server: Implement wineserver call for SystemHandleInformation.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-29 17:51:59 +01:00
Alex Henrie
65942760c4
ntdll: Increase maximum number of autodetected COM/LPT ports to 256.
...
Windows autodetects up to 256 serial ports and 256 parallel ports per
system.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-25 12:04:40 +01:00
Austin English
f12241ae14
ntoskrnl.exe: Add RtlInitializeGenericTableAvl/RtlInsertElementGenericTableAvl stubs.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 15:04:31 +01:00
Sebastian Lackner
e4e906c871
ntdll/tests: Add more tests for SystemHandleInformation.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 11:51:06 +01:00
Thomas Faller
a0b8f178df
ntdll: Fix valgrind heap realloc notifications.
...
Valgrind can't handle a realloc if the new size is zero.
Signed-off-by: Thomas Faller <tfaller1@gmx.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 21:55:26 +01:00
Nikolay Sivov
86df15cbf1
ntdll: Trace RTL_BITMAP api arguments as unsigned when appropriate.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 21:54:35 +01:00
Piotr Caban
a8ef261493
ntdll: Fix NtQueryDirectoryFile behavior on short file names on case insensitive file systems.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 20:26:48 +01:00
Sebastian Lackner
1980834c7d
ntdll: ProcessDebugFlags should return debug_children flag instead of !debugger_present.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 18:14:43 +01:00
Sebastian Lackner
85df0c61e5
ntdll/tests: Add more tests for ProcessDebugFlags.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-10 16:26:03 +09:00
Qian Hong
b4172c08dd
ntdll/tests: Restore old value in a more context independent way.
...
Signed-off-by: Qian Hong <qhong@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-03 16:23:34 +09:00
Qian Hong
10d080aa8d
ntdll: Silence useless fixme message when handling SIMD floating point invalid operation exception.
...
Signed-off-by: Qian Hong <qhong@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-03 16:23:30 +09:00
Qian Hong
6a03e618df
ntdll/tests: Add SIMD exception test for floating point invalid operation fault.
...
Signed-off-by: Qian Hong <qhong@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-03 16:23:24 +09:00
Alexandre Julliard
9cad1cc847
ntdll/tests: Use more reasonable timeouts and avoid long long constants.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-02 21:38:30 +09:00
Sebastian Lackner
7b66f9f6b4
ntdll: Commit new guard pages in virtual_handle_stack_fault.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-30 23:16:49 +09:00
Nikolay Sivov
1ea99a8f29
ntdll: Remove unused helper (Clang).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-27 20:53:31 +09:00
Thomas Faber
429fcf3a9d
ntdll/tests: Fix build with PSDK headers.
...
CRITICAL_SECTION is distinct from RTL_CRITICAL_SECTION in PSDK.
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-27 15:38:06 +09:00
Jacek Caban
26df0863ca
ntdll: Added more NtOpenKey tests.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 20:55:16 +09:00
Sebastian Lackner
b1c8e0591c
ntdll/tests: Print the correct status code in ok() messages.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-16 17:09:24 +09:00
Jacek Caban
731d09fa9d
server: Store all 32 bits of value type.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-12 23:42:26 +09:00
Jacek Caban
5eb3035374
ntdll: Added KeyCachedInformation key info class implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-12 22:17:02 +09:00
Sebastian Lackner
163b3f1e38
ntdll/tests: Add tests for multiple registry notifications per key.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-11 19:39:27 +09:00
Sebastian Lackner
f0f248913f
ntdll: Fix specfile entry for NtCreateKeyTransacted.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-11 19:39:20 +09:00
Dmitry Timoshkov
beeeb2a528
ntdll: Avoid path buffer re-allocation step for common dll name lengths.
...
For instance c:\windows\system32\advapi32.dll is 33 characters long with
0-terminator.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-10 19:43:11 +09:00
Jacek Caban
0b33b80f6e
ntdll: Added a few registry stubs.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-10 11:53:20 +09:00
Jacek Caban
7bd852c6ce
ntdll: Added NtNotifyChangeMultipleKeys implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 23:16:45 +09:00
Jacek Caban
e0d51609a1
server: Notify parent key when subkey is created.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 23:16:44 +09:00
Jacek Caban
deba2faf60
server: Reset event in set_registry_notification.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 23:16:44 +09:00
Jacek Caban
7d66a01fc2
ntdll: Return STATUS_PENDING in NtNotifyChangeKey if async notify is performed.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 23:16:44 +09:00
Jacek Caban
a0d0d0dd0a
ntdll: Fixed argument order in NtNotifyChangeKey.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-06 23:20:50 +09:00
Jacek Caban
4269423ee4
ntdll: Added NtOpenKeyEx implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-05 20:22:37 +09:00
Sebastian Lackner
23cdc7e529
server: Unconditionally close APC handle in get_apc_result call.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-29 10:59:44 +09:00
Nikolay Sivov
c1a46db98b
ntdll: Fix printf format to use unsigned integers (PVS-Studio).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-29 10:54:04 +09:00
Gerald Pfeifer
a7f124ae31
ntdll: Avoid a case of shift overflow in get_cpuinfo.
...
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-27 21:44:31 +09:00
Alexandre Julliard
e01dbac2bb
ntdll: Remove some redundant shifts.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-26 23:03:40 +09:00
Sebastian Lackner
8a33dd43f6
ntdll: Do not check if object was signaled after user APC in server_select.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-23 13:21:10 +09:00
Sebastian Lackner
cbb5705216
ntdll: Use wrapper function for consolidate callback on x86_64.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 19:19:08 +09:00
Andrew Eikum
a3af13614f
ntdll: Claim success for FSCTL_SET_SPARSE.
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 12:41:18 +09:00
Dmitry Timoshkov
6262cc325f
ntdll: Return from snoop tracing helpers earlier if tracing is disabled.
...
This allows turning off and on snooping from task manager.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-20 00:30:36 +09:00
Thomas Faller
c96684c3b2
ntdll/tests: Fix use of uninitialized value.
...
Signed-off-by: Thomas Faller <tfaller1@gmx.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-15 13:27:34 +09:00
Dmitry Timoshkov
af66108446
ntdll: Implement RtlValidRelativeSecurityDescriptor.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-12 22:09:56 +09:00
Austin English
132ff59b3e
kernel32: Add a stub for GetCurrentProcessorNumberEx.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-12 22:09:55 +09:00
Sebastian Lackner
7c46763ea7
ntdll: Implement RtlIsCriticalSectionLocked[ByThread].
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-11 13:47:34 +09:00
Sebastian Lackner
b028f2c076
ntdll/tests: Add tests for RtlIsCriticalSectionLocked[ByThread].
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-11 13:47:23 +09:00
Sebastian Lackner
ea87d1c317
ntdll: Synchronize Nt and Zw exports.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-11 13:47:16 +09:00
Sebastian Lackner
381c034be3
ntdll: Wait_thread_proc should not terminate on user APC.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 20:56:27 +09:00
Sebastian Lackner
e37cdbbc2c
ntdll/tests: Add Sleep to make threadpool wait tests more reliable.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 20:56:17 +09:00
Jacek Caban
19e16319b8
ntdll: Initialize PEB SessionId to 1.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-08 21:32:40 +09:00
Sebastian Lackner
b8315e87f1
ntdll/tests: Add tests for calling NtReadFile/NtWriteFile on directory.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-08 20:17:05 +09:00
Sebastian Lackner
0b1204d870
ntdll/tests: Add tests for RtlRegisterWait.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-07 13:27:23 +09:00
Sebastian Lackner
f97a18f8c0
ntdll/tests: Limit number of pool threads to avoid random test failures.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-07 13:27:23 +09:00
Sebastian Lackner
53c8345c6d
ntdll/tests: Fix test failures on Windows 10.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-07 13:27:23 +09:00
Francois Gouget
67c2e06fcd
ntdll: Work around a conflict between Wine and Solaris list.h.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
2015-10-05 22:27:16 +09:00
Michael Müller
00d966cd3a
ntdll: Return STATUS_OBJECT_NAME_INVALID in wine_nt_to_unix_file_name for prefix-only paths.
...
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-02 18:11:31 +09:00
Michael Müller
24ea49b6ab
ntdll/tests: Add additional tests for NtQueryFullAttributesFile.
...
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-02 18:11:31 +09:00
Michael Müller
55ae09068b
ntdll: Implement ThreadGroupInformation class.
...
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-02 18:11:31 +09:00
Charles Davis
476d97b0ee
ntdll: Use an __ms_va_list in sscanf (Clang).
...
Signed-off-by: Charles Davis <cdavis5x@gmail.com>
2015-10-01 23:18:43 +09:00
Dmitry Timoshkov
7d2cd2fe61
ntdll: Print process id in the loader log if requested.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
2015-10-01 23:08:13 +09:00
Dmitry Timoshkov
451156b4fa
ntdll: Print process id in the relay log if requested.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
2015-10-01 23:08:12 +09:00
Sebastian Lackner
6d9cf49103
ntdll: Ignore higher bits in selector for ThreadDescriptorTableEntry info query.
...
Fixes a random test failure in kernel32/thread tests caused by the
uninitialized HIWORD.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-09-25 21:03:17 +02:00
André Hentschel
c6b888f16f
ntdll/tests: Simplify the RtlRandom test.
2015-09-25 20:59:55 +02:00
Lauri Kenttä
b3d51fb78b
ntdll/tests: Fix error message.
2015-09-15 17:00:32 +09:00
Thomas Faller
d90f25156c
ntdll: Fix invalid use of uninitialized memory.
2015-09-09 17:46:24 +09:00
Jacek Caban
719a7d32c5
ntdll: Added new pid debug channel to append process id to debug output.
2015-08-25 21:13:22 +09:00
Michael Müller
75c9da68e2
ntdll: Use helper function for NtWaitForMultipleObjects and NtWaitForSingleObject.
2015-08-24 18:41:34 +09:00
Sebastian Lackner
ec851647e2
server: Implement open_file_object for rootdir pointing to file object.
2015-08-21 14:39:21 +09:00
Sebastian Lackner
84d2610aaf
ntdll/tests: Add additional tests for calling NtOpenFile with file object as RootDirectory.
2015-08-21 14:36:12 +09:00
Sebastian Lackner
1f2a443cb4
server: Implement support for FileLinkInformation class in NtSetInformationFile.
2015-08-21 14:36:02 +09:00
Qian Hong
57d443824a
ntdll/tests: Add tests for FileLinkInformation class.
...
Based on the FileRenameInformation tests by Sebastian Lackner.
2015-08-21 14:35:18 +09:00
Sebastian Lackner
857d436784
ntdll: Implement FileRenameInformation support.
2015-08-20 18:34:13 +09:00
Sebastian Lackner
6899eade5d
ntdll/tests: Add additional tests for FileRenameInformation.
2015-08-20 18:33:45 +09:00
Jianqiu Zhang
a5b58144a5
ntdll/tests: Add basic tests for FileRenameInformation.
2015-08-20 18:33:39 +09:00
Dmitry Timoshkov
7386de357f
ntdll: Do not fail to relocate an image if the size of relocation block is 0.
2015-08-20 14:32:32 +09:00
Erich E. Hoover
6955a298f4
server: Do not permit FileDispositionInformation to delete a file without write access.
2015-08-19 20:19:58 +09:00
Sebastian Lackner
0fabfe7d6b
server: Add support for setting file disposition information.
...
Based on a patch by Dmitry Timoshkov.
2015-08-19 20:19:57 +09:00
Dmitry Timoshkov
e67a00b466
ntdll: Separate image relocation from NtMapViewOfSection.
2015-08-18 19:56:48 +09:00
Andrey Gusev
5cdcd4493f
Assorted spelling and typos fixes.
2015-08-18 15:00:13 +09:00
André Hentschel
c4cd981a61
ntdll/tests: Add ARM64 support for map protection tests.
2015-08-17 16:59:32 +09:00
André Hentschel
27bf278d72
ntdll: Add support for Win 10.
2015-08-13 15:04:29 +09:00
Sebastian Lackner
38076fa633
ntdll: Move cookie initialization code from memory management to loader.
2015-08-12 22:58:28 +09:00
Piotr Caban
18d9ca872a
ntdll: Fix modules order in InInitializationOrderModuleList.
2015-08-12 22:54:42 +09:00
André Hentschel
ccc91f25c6
ntdll: Fix stack alignment on ARM64.
2015-08-12 22:54:13 +09:00
Francois Gouget
f8a7d6ed74
Assorted spelling fixes.
2015-08-07 23:50:48 +09:00
Francois Gouget
e0e2ee3487
ntdll: Add a trailing '\n' to a FIXME() trace.
2015-08-07 23:50:20 +09:00
Francois Gouget
93a7845ae8
ntdll: Use #ifdef to check for potentially undefined macros.
2015-08-07 23:44:30 +09:00
Sebastian Lackner
3977ebafc0
ntdll: Lookup DynamicDST based on current year, instead of year of daylight date.
...
When there are no further time changes, the function find_dst_change() will
return (year_end + 1). This patch ensures that we don't lookup the wrong
DynamicDST entry in such a case.
2015-08-04 09:45:28 +02:00
Sebastian Lackner
1050988997
ntdll: Improve stub for NtQueryInformationJobObject.
2015-07-31 12:08:09 +02:00
Sebastian Lackner
905bf79337
server: Store correct entry point for first thread.
2015-07-30 11:37:15 +02:00
Sebastian Lackner
6e66c12c68
ntdll: Validate SecurityCookie pointer before accessing cookie value.
2015-07-30 11:36:21 +02:00
Sebastian Lackner
5bd9d58016
ntdll: Mark newly spawned worker threads as busy.
2015-07-29 22:23:56 +02:00
Martin Storsjo
2a904d3bb3
ntdll: Handle partial image load config structs.
2015-07-29 21:44:03 +02:00
Sebastian Lackner
22f0611cf9
ntdll/tests: Add tests for ThreadQuerySetWin32StartAddress info class.
2015-07-29 21:44:03 +02:00
Sebastian Lackner
845164004b
ntdll: Implement ThreadQuerySetWin32StartAddress info class in NtQueryInformationThread.
2015-07-29 21:44:03 +02:00
Sebastian Lackner
6ab494ceb5
ntdll: Implement ThreadQuerySetWin32StartAddress info class in NtSetInformationThread.
2015-07-29 21:44:03 +02:00
Sebastian Lackner
6156cf3134
server: Use a separate wineserver call to fetch thread times.
2015-07-29 21:44:03 +02:00
Sebastian Lackner
9562e81810
ntdll: Reimplement RtlQueueWorkItem on top of new threadpool API.
2015-07-28 09:54:18 +02:00
Sebastian Lackner
c774a8c3ae
ntdll/tests: Add basic tests for RtlQueueWorkItem.
2015-07-28 09:54:05 +02:00
Sebastian Lackner
4a1629c411
ntdll: Avoid possible deadlock by using _exit() in NtTerminateProcess.
...
When threads are killed with SIGQUIT some locks can be in an undefined
state, and it not safe to call exit handlers.
2015-07-17 14:29:04 +09:00
Dmitry Timoshkov
21c3724813
ntdll: Cache contents of IMAGE_TLS_DIRECTORY instead of saving a directory pointer.
2015-07-15 15:13:16 +09:00
Erich E. Hoover
e9d7cf99ad
ntdll: Only set the security cookie if it has not already been set.
2015-07-14 16:43:30 +09:00
Alasdair Sinclair
241b3928b1
ntdll: Add missing WINAPI to RtlDecompressFragment.
2015-07-14 14:54:54 +09:00
Sebastian Lackner
b687fee66f
ntdll: Fix incorrect assignment in assert statement (Coverity).
2015-07-13 14:44:40 +09:00
Sebastian Lackner
db1e8a686e
ntdll/tests: Add tests for RtlDecompressFragment.
2015-07-10 14:54:57 +09:00
Sebastian Lackner
0e7bd45571
ntdll/tests: Add tests for RtlDecompressBuffer.
2015-07-10 14:54:54 +09:00
Sebastian Lackner
e3503799d9
ntdll: Implement RtlDecompressFragment.
...
Based on a patch by Michael Müller.
2015-07-10 14:54:50 +09:00
Sebastian Lackner
577332f612
ntdll: Implement semi-stub for RtlGetCompressionWorkSpaceSize.
2015-07-09 17:34:48 +09:00
Sebastian Lackner
ee899dc55e
ntdll/tests: Add tests for RtlGetCompressionWorkSpaceSize.
2015-07-09 17:34:46 +09:00
Sebastian Lackner
275424e939
ntdll: Implement semi-stub for LZNT1 compression in RtlCompressBuffer.
...
This stub implementation just emits uncompressed blocks with
appropriate chunk headers.
2015-07-09 17:34:41 +09:00
Sebastian Lackner
025ea11dc4
ntdll/tests: Add tests for RtlCompressBuffer.
2015-07-09 17:34:37 +09:00
André Hentschel
7e1c886fbf
ntdll: Randomize security cookie when available.
2015-07-08 16:20:06 +09:00
Sebastian Lackner
f65f645c3f
ntdll: Add missing calls to RtlExitUserThread.
2015-07-08 16:02:24 +09:00
Sebastian Lackner
0021569778
ntdll: Try to merge threadpool wait queue buckets if possible.
...
When the number of elements per bucket is too small, then try to reduce
the number of threads by merging buckets. This is to ensure that the
number of running wait queue threads doesn't get too big.
2015-07-06 14:49:39 +09:00
Sebastian Lackner
634bbed3fb
ntdll/tests: Add threadpool wait tests with more than 63 objects.
2015-07-06 14:49:39 +09:00
Sebastian Lackner
553ae488d0
ntdll/tests: Add basic tests for threadpool wait objects.
2015-07-06 14:49:39 +09:00
Sebastian Lackner
185247576b
ntdll: Implement TpSetWait and TpWaitForWait.
2015-07-06 14:49:39 +09:00
Sebastian Lackner
f1be5dcac0
ntdll: Implement threadpool wait queues.
...
To implement waiting for an arbitrary number of handles, we group them
in buckets up to (MAXIMUM_WAIT_OBJECTS - 1) objects, and then assign a
dedicated wait queue thread. The last handle is used to notify about
changes.
2015-07-06 14:49:38 +09:00
Sebastian Lackner
4523a54c62
ntdll: Implement TpAllocWait and TpReleaseWait.
2015-07-06 14:34:20 +09:00
Sebastian Lackner
9f71015a99
ntdll/tests: Add tests for threadpool timer merging.
2015-07-03 13:06:50 +09:00
Sebastian Lackner
aefb85ddab
ntdll/tests: Add basic tests for threadpool timer functions.
2015-07-03 13:06:45 +09:00
Sebastian Lackner
cb2aae1af8
ntdll: Implement threadpool timer queues.
2015-07-03 13:06:41 +09:00
Sebastian Lackner
bd7cb07358
ntdll: Implement TpAllocTimer and TpReleaseTimer.
2015-07-03 13:06:31 +09:00
Sebastian Lackner
66c46e6960
ntdll/tests: Add tests for TpDisassociateCallback.
2015-07-03 13:06:21 +09:00
Sebastian Lackner
775d3dcecb
ntdll: Implement TpDisassociateCallback and add a separate group completion event.
2015-07-03 13:06:15 +09:00
Sebastian Lackner
8965511957
ntdll: Implement TpCallbackUnloadDllOnCompletion.
2015-07-02 14:54:13 +09:00
Sebastian Lackner
15110b1770
ntdll: Implement TpCallbackSetEventOnCompletion.
2015-07-02 14:54:04 +09:00
Sebastian Lackner
3dc1c6442a
ntdll/tests: Add tests for TpCallbackReleaseSemaphoreOnCompletion and finalization callback.
2015-07-02 14:53:56 +09:00
Sebastian Lackner
eb39cb1323
ntdll: Implement TpCallbackReleaseSemaphoreOnCompletion.
2015-07-02 14:53:50 +09:00
Sebastian Lackner
02ee5bb52d
ntdll: Implement TpCallbackReleaseMutexOnCompletion.
...
Various internal details about the order and error handling of completion
actions are documented in "Concurrent Programming on Windows" by Joe Duffy.
2015-07-02 14:53:41 +09:00
Sebastian Lackner
a9dd37be68
ntdll: Implement TpCallbackLeaveCriticalSectionOnCompletion.
...
An instance can only have one completion of each type, trying to add a
second one leads to an exception on Windows.
2015-07-02 14:53:21 +09:00
Sebastian Lackner
eb974bcd7a
ntdll: Implement instance objects and the TpCallbackMayRunLong function.
...
The instance is marked as long-running even if TpCallbackMayRunLong fails,
a second call will lead to an exception on Windows.
2015-07-02 14:53:02 +09:00
Sebastian Lackner
8fc2430c2a
ntdll: Implement threadpool RaceDll environment variable.
2015-07-02 14:52:44 +09:00
Sebastian Lackner
fa114f122b
ntdll: Add support for threadpool finalization callback.
2015-07-02 14:52:38 +09:00
Sebastian Lackner
e8d4b40386
ntdll/tests: Add tests for threadpool group cancel callback.
2015-07-02 14:52:32 +09:00
Sebastian Lackner
1839ce8697
ntdll: Add support for threadpool group cancel callback.
2015-07-02 14:52:27 +09:00
Sebastian Lackner
b75d7f064c
ntdll/tests: Add threadpool scheduler tests for work items.
2015-07-01 19:18:16 +09:00
Sebastian Lackner
17cd2a8b24
ntdll/tests: Add basic tests for threadpool work items.
2015-07-01 19:18:16 +09:00
Sebastian Lackner
e4c38f6bad
ntdll: Implement threadpool work item functions.
2015-07-01 19:18:15 +09:00
Sebastian Lackner
3606b47139
ntdll/tests: Add tests for TpAllocCleanupGroup and related functions.
2015-07-01 19:18:15 +09:00
Sebastian Lackner
68d92bceed
ntdll: Implement threadpool cleanup group functions.
2015-07-01 19:18:14 +09:00
Sebastian Lackner
7d9ec31e19
ntdll: Implement TpSetPoolMinThreads.
2015-07-01 19:18:14 +09:00
Sebastian Lackner
d56984a03d
ntdll: Implement TpSetPoolMaxThreads.
2015-07-01 19:18:13 +09:00
Sebastian Lackner
db9fc9141e
ntdll: Implement TpSimpleTryPost and basic threadpool infrastructure.
2015-07-01 19:18:13 +09:00
André Hentschel
d37f407645
ntdll: Silence warning about TAPE_GetStatus when sys/mtio.h is not available.
2015-06-30 14:42:13 +09:00
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
André Hentschel
8d4917e865
include: Add IMAGE_LOAD_CONFIG_DIRECTORY64 definition.
2015-06-24 15:37:02 +09:00
Nikolay Sivov
0824771423
kernel32: Export RtlCopyMemory().
2015-06-19 19:10:45 +09:00
André Hentschel
1133295267
ntdll: Set TPIDRURW inline on ARM.
2015-06-17 18:19:55 +09:00
André Hentschel
aa139d3e86
ntdll: Set platform register x18 to TEB on ARM64.
2015-06-17 18:19:55 +09:00
Mohamed Mediouni
2b095beace
ntdll: Multiply r4 with the word size in ARM for __chkstk.
2015-06-16 23:56:44 +09:00
André Hentschel
bef85a14f6
ntdll: Fix CONTEXT_ARM in RtlCaptureContext.
2015-06-15 15:29:03 +09:00
André Hentschel
cd258bef79
ntdll: Implement RtlCaptureContext on ARM64.
2015-06-15 15:29:03 +09:00
André Hentschel
bd1f7ef186
include: Rename 64-bit PState to 32-bit Cpsr on ARM64.
2015-06-15 14:51:33 +09:00
Erich E. Hoover
cdefae9ef2
ntdll: Fix IOCTL_DVD_READ_STRUCTURE expected output size.
2015-06-15 14:50:19 +09:00
Ken Thomases
3b74ac0f08
ntdll: Fix the "not found" status set by read_directory_stat() and read_directory_getattrlist() for when restart_scan is set.
2015-06-12 21:22:42 +09:00
Ken Thomases
e7fa766378
Revert "ntdll: Avoid one of the calls to getattrlist() when read_directory_getattrlist() checks the case sensitivity of the file system.".
...
This was wrong-headed and could never have worked. The second getattrlist()
call that I was trying to avoid was only necessary when the first fails. Given
that the first failed, its results can't be used to avoid the second, no matter
what information we requested.
This reverts commit 5514df9d4e
.
2015-06-12 21:22:42 +09:00
Sebastian Lackner
bdef5c5508
ntdll/tests: Add tests for info struct size for FileDispositionInformation.
2015-06-11 15:32:30 +09:00
Sebastian Lackner
8ddab2c2f4
ntdll: Fix status code when NtMapViewOfSection parameter check fails.
2015-06-08 15:34:04 +09:00
Ken Thomases
82dd799d52
ntdll: Add partial support for version 3 of DWARF CIEs which are generated by Clang/LLVM.
2015-06-05 18:40:39 +09:00
Ken Thomases
bbcfa6b4ee
ntdll: Add support for using libunwind to unwind the stack for x86_64.
...
On OS X, Apple uses compact unwind info in preference to DWARF unwind info.
2015-06-05 15:08:02 +09:00
Qian Hong
ef3ed04cdc
server: Fix type name of directory file.
2015-06-05 14:32:27 +09:00
Qian Hong
f208c50cc0
server: Fix type name of File.
2015-06-05 14:32:23 +09:00
Qian Hong
bdc223ad39
server: Fix type name of IoCompletion.
2015-06-05 14:32:15 +09:00
Qian Hong
7a7fc1e604
ntdll/tests: Add a few more ObjectTypeInformation tests.
2015-06-05 14:32:11 +09:00
Qian Hong
71080cc081
ntdll: Implemenent ObjectTypeInformation class support in NtQueryObject.
2015-06-05 14:32:01 +09:00
Sebastian Lackner
d6a044c86a
ntdll/tests: Don't call lstrlenW on non-null-terminated buffer.
2015-06-05 14:11:10 +09:00
André Hentschel
c13be7446e
ntdll: Fix returning from various ARM assembler functions.
2015-05-29 15:03:06 +09:00
André Hentschel
a18f84c0b1
ntdll: Add stub for __chkstk on ARM.
2015-05-29 15:03:05 +09:00
André Hentschel
8e0164bd26
include: Add more ARM64 CV constants.
2015-05-28 14:20:55 +09:00
Jactry Zeng
c9e1b6fb57
ntdll/tests: Test opening a directory with NULL ObjectName.
2015-05-27 17:13:08 +09:00
Ken Thomases
5514df9d4e
ntdll: Avoid one of the calls to getattrlist() when read_directory_getattrlist() checks the case sensitivity of the file system.
...
Extract a new function, get_dir_case_sensitivity_attr_by_id(), from
get_dir_case_sensitivity_attr(). Call that instead of get_dir_case_sensitivity()
from read_directory_getattrlist(). We get the device and file system IDs from
the same getattrlist() call we're already doing, so that avoids an extra call.
2015-05-22 14:11:03 +09:00
André Hentschel
dec7b246f8
ntdll: Add ARMv8 detection for ARM32.
2015-05-22 14:10:29 +09:00
André Hentschel
b5b34220cc
ntdll: Parse ARM64 CPU info.
2015-05-22 14:10:27 +09:00
Alexandre Julliard
ee1528040e
ntdll: Remove the special case for the NUL device.
2015-05-21 17:38:19 +09:00
Alexandre Julliard
950c82094b
ntdll: Add support for file I/O on device files.
2015-05-21 17:38:04 +09:00
Alexandre Julliard
c0ac2afb19
server: Create the null device and its symlink.
2015-05-21 17:24:34 +09:00
André Hentschel
74ef3af73d
ntdll: Use the correct arch value for ARM64.
2015-05-21 14:23:45 +09:00
Ken Thomases
bb89f10e5e
ntdll: Fix read_directory_getattrlist() to get the name of a symlink rather than its target, but still detect if the symlink is broken.
2015-05-21 13:59:56 +09:00
Ken Thomases
5c98448aa3
ntdll: If read_directory_getattrlist() finds that the file doesn't exist, return successful "no file" result to stop search.
2015-05-21 13:58:01 +09:00
Ken Thomases
f6926b3515
ntdll: Increase name buffer size in read_directory_getattrlist() for UTF-8 encoding.
...
The docs for getattrlist() say that ATTR_CMN_NAME can return up to NAME_MAX + 1
Unicode characters (code points) encoded in UTF-8, which means it can be up to
NAME_MAX * 3 + 1 bytes.
2015-05-21 13:57:45 +09:00
Sebastian Lackner
39abfc4d74
ntdll: Add stub for NtImpersonateAnonymousToken.
2015-05-21 13:57:05 +09:00
Matteo Bruni
cb5c92f33c
ntdll/tests: Add a test for filename casing with NtQueryDirectoryFile().
2015-05-20 17:32:19 +09:00
Matteo Bruni
2f0febe60a
ntdll: Ignore positive matches in read_directory_stat() for case-insensitive filesystems.
...
It's necessary to return the actual filename with correct casing and a
plain stat doesn't allow that. Make read_directory_stat() return the
result of the stat() call on a case-insensitive filesystem only when the
file is missing.
2015-05-20 17:32:16 +09:00
Matteo Bruni
5d65b9d0c2
ntdll: Implement a read_directory_getattrlist() function.
...
When searching for a specific filename on a case-insensitive filesystem
we first try with stat(). If stat() does find the file we currently
return the requested filename back.
That presents an issue when the application cares about the casing of the
actual file stored on-disk. Specifically, NtQueryDirectoryFile is
supposed to return the actual filename with correct casing.
One possible solution to the issue, without having to resort to manually
scanning the directory entries, is to make use of the OS X getattrlist()
function, since it can return the filename stored on the filesystem.
2015-05-20 17:32:09 +09:00
Alexandre Julliard
871ab51233
ntdll/tests: Use the correct flags for NtOpenFile.
2015-05-18 17:50:22 +09:00
Sebastian Lackner
b3913c4f77
ntdll/tests: Add tests for accessing \\Device\\Null.
2015-05-18 17:42:46 +09:00
Huw Davies
d6d703b592
ntdll/tests: Fix incorrect prototype.
2015-05-15 21:58:06 +09:00
Huw Davies
14c53a5863
ntdll/tests: Wait for pending file operations to complete.
2015-05-14 20:06:06 +09:00
Nikolay Sivov
2c98d5b90c
kernel32: Implement GetDynamicTimeZoneInformation().
2015-05-11 15:39:24 +09:00