Commit Graph

1916 Commits

Author SHA1 Message Date
Alexandre Julliard 7646df9f4b server: Use the generic named object functions for named pipes.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 20:03:32 +09:00
Alexandre Julliard 4e380b9e2b server: Use the generic named object functions for mailslots.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 20:03:32 +09:00
Alexandre Julliard 7a5b14d456 server: Add a function to open a named object inside any parent, not only directories.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 16:55:00 +09:00
Alexandre Julliard 0458a7d0e3 server: Use the lookup_name operation when creating a named object.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 14:24:15 +09:00
Alexandre Julliard e2ccc978a3 server: Implement the lookup_name operation for window stations.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 14:10:39 +09:00
Alexandre Julliard bfd0dff215 server: Add a function to lookup an object by name inside any parent, not only directories.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 14:10:39 +09:00
Alexandre Julliard b21a324070 server: Use the link_name operation to create named objects.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-05 00:20:01 +09:00
Alexandre Julliard f55db7882d server: Add link_name and unlink_name object operations.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-04 21:07:19 +09:00
Alexandre Julliard a69d7b29e3 server: Don't return an error if the created window station already exists.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-02 21:47:56 +09:00
Alexandre Julliard bc0bf9e505 server: Implement serial port read interval timeouts.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-02 16:07:30 +09:00
Alexandre Julliard 34d5994953 user32: Add some tests for window station and desktop object names.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-01 17:53:35 +09:00
Alexandre Julliard 37503be654 server: Fix checks for a valid directory in object attributes.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-01 14:57:37 +09:00
Alexandre Julliard 008f14f03f server: Directly return a structure in get_req_unicode_str().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:12 +09:00
Alexandre Julliard ed268bbf91 server: Use a common helper function to implement open object calls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:12 +09:00
Alexandre Julliard b3064d748b server: Implement NtOpenJobObject.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 16:38:53 +09:00
Alexandre Julliard b47bd4555c server: Fix initialization of mailslot objects that don't have a name.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 22:33:34 +09:00
Piotr Caban cefdbd59b7 server: Avoid infinite loop when we're out of timers in set_win_timer server call.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-26 23:26:59 +09:00
Anton Baskanov 9220556560 user32: Correctly update caret state in the server in SetCaretPos.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-25 18:27:31 +09:00
Sebastian Lackner 9dab25c124 server: Avoid invalid memory access if creation of namespace fails in create_directory (Coverity).
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-25 16:14:38 +09:00
Sebastian Lackner a52a117f80 server: Add missing check for objattr variable in load_registry wineserver call (Coverity).
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-25 16:14:36 +09:00
Sebastian Lackner df39830846 server: Fix invalid memory accesss caused by destroying winstation before desktop.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-22 16:40:30 +09:00
Alexandre Julliard d15f47412e server: Always print the full path of objects when dumping them.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-22 01:26:15 +09:00
Alex Henrie df59b04057 server: Fix duplicate, incorrect comment describing is_fd_signaled.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-22 01:26:15 +09:00
Alexandre Julliard fcc977c139 server: Store the desktop object names inside their window station.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-20 22:40:58 +09:00
Alexandre Julliard 546289dc59 server: Create window stations objects in a standard directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-20 22:02:03 +09:00
Alexandre Julliard cd6e9c38e4 server: Fix constraints on the length of NT object names.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-19 20:48:08 +09:00
Alexandre Julliard b99d1525de server: Pass full object attributes in the load_registry request.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-19 20:48:07 +09:00
Alexandre Julliard d01deff9cf server: Pass full object attributes in the create_key request.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-19 20:48:07 +09:00
Alexandre Julliard c4843d4a45 server: Add a helper function to skip the object attributes structure.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-19 20:48:07 +09:00
Alexandre Julliard 1eb69be36f server: Pass full object attributes in the create_completion request.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-18 00:17:30 +09:00
Alexandre Julliard 426c4a2f08 server: Pass full object attributes in the create_symlink request.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-18 00:17:30 +09:00
Alexandre Julliard 82800f513c server: Pass full object attributes in the create_directory request.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-18 00:17:30 +09:00
Alexandre Julliard 14825a7a55 server: Pass full object attributes in the create_mailslot request.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-18 00:17:30 +09:00
Alexandre Julliard b5245a15a8 server: Pass full object attributes in the create_timer request.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-18 00:17:30 +09:00
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 9504e2addf server: Add a helper function to validate and return object attributes.
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
Hugh McMaster 8ac323f61b wineconsole: Send the largest console window size information to the server.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 17:07:34 +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
Sebastian Lackner 25b0a4981b server: Fix assignment of primary_group in token_duplicate.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 18:17:03 +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 19a3f6b5cb user32: Make sure explorer.exe process is spawned for the correct desktop.
If an invalid combination of winstation/desktop is active for the
current process, the handle inheritance doesn't work, and no desktop is
created.

Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-04 13:22:55 +09:00
Sebastian Lackner 6bfa3896fc server: Check winstation visibility in server to avoid race-conditions.
GetDesktopWindow incorrectly assumes, that the process window station is
still the same one, which was used earlier when changing the desktop.
By moving the visibility check to wineserver we can also avoid
wineserver roundtrip for invisible desktops.

Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-04 13:18:00 +09:00
Sebastian Lackner ace9d329e9 server: Fix crash when calling SetNamedPipeHandleState on partially closed pipe.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-23 23:35:16 +09:00
Sebastian Lackner ee02530bc4 server: Fix crash when calling GetNamedPipeHandleState on partially closed pipe.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-23 23:35:16 +09:00
Qian Hong 499f0454c9 server: Remove out of date comment.
Signed-off-by: Qian Hong <qhong@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-20 22:19:28 +09:00
Sebastian Lackner 96f4f53937 server: Do not require SeBackupPrivilege in load_registry and unload_registry.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-16 17:26:22 +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
Sebastian Lackner 55c4a108d7 server: Only send WM_WINE_CLIPCURSOR for forced clip resets.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-12 22:17:02 +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
Jacek Caban 3d5db6bdf5 server: Return KeyFullInformation maximal string lengths in bytes.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-12 11:32:49 +09:00
Sebastian Lackner 4857f95803 server: Return STATUS_CANNOT_DELETE when trying to open readonly file with FILE_DELETE_ON_CLOSE.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-11 19:39:22 +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
Sebastian Lackner 41f7f19cb5 server: Wake up APC if we fail to allocate a handle in target process.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-05 20:22:38 +09:00
Hugh McMaster b61badcc90 server: Add console font information.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-03 00:33:24 +09:00
Sebastian Lackner 52f9acedd2 server: Clear last error when creating object without name.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-02 23:02:22 +09:00
Sebastian Lackner 9e66d84585 server: Add a missing grab_object in cgwe_enum.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-30 16:39:07 +09:00
Alexandre Julliard da340169d6 makefiles: Generate rules for installing programs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-29 21:20:06 +09:00
Sebastian Lackner 408b7ea6b3 server: Remove unused device manager argument from set_irp_result call.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-29 11:02:32 +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
Sebastian Lackner 51d17bfd2f server: Remove a wrong release_object in write_console_input.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-29 10:58:45 +09:00
Alexandre Julliard a1515c68d4 makefiles: Automatically add RPATH support for programs that use libwine.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 20:45:19 +09:00
Alexandre Julliard 7626728b56 makefiles: Generate rules for building tool binaries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-27 14:47:27 +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
Erich E. Hoover dfa73ca626 server: Return STATUS_CANT_WAIT/WSAEWOULDBLOCK for non-overlapped SIO_ADDRESS_LIST_CHANGE requests on non-blocking sockets.
Signed-off-by: Erich E. Hoover <erich.e.hoover@wine-staging.com>
2015-10-02 18:11:32 +09:00
Sebastian Lackner 0425c0eb95 server: Always switch back to server dir when open_fd returns.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-01 16:26:26 +09:00
Gerald Pfeifer 509d0f06ce server: Replace 1 << 31 by 1u << 31 to avoid shift overflow in in get_active_hooks. 2015-09-07 15:04:01 +09:00
Sebastian Lackner c948e84189 server: Properly inherit debug_children flag when creating new process. 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 1f2a443cb4 server: Implement support for FileLinkInformation class in NtSetInformationFile. 2015-08-21 14:36:02 +09:00
Dmitry Timoshkov 3bed65b5a9 server: For querying thread information demand THREAD_QUERY_LIMITED_INFORMATION access. 2015-08-21 14:35:04 +09:00
Dmitry Timoshkov 1d2241eca3 server: For querying process information demand PROCESS_QUERY_LIMITED_INFORMATION access. 2015-08-21 14:35:01 +09:00
Dmitry Timoshkov 93e8bea2bd server: Add implicit THREAD_[QUERY|SET]_LIMITED_INFORMATION access. 2015-08-21 14:34:59 +09:00
Dmitry Timoshkov c19091272d server: Add implicit PROCESS_[QUERY|SET]_LIMITED_INFORMATION access. 2015-08-21 14:34:55 +09:00
Sebastian Lackner 857d436784 ntdll: Implement FileRenameInformation support. 2015-08-20 18:34:13 +09:00
Sebastian Lackner 453d71b9f7 server: Avoid invalid memory access when create_console_input fails. 2015-08-19 20:19:58 +09:00
Sebastian Lackner 0f133aedd5 server: Avoid invalid memory accesses when create_console_output fails. 2015-08-19 20:19:58 +09:00
Sebastian Lackner 46cba58a98 server: Initialize table->handles immediately after creation of atom table.
When the malloc afterwards fails, release_object() is called.
atom_table_destroy() assumes that table->handles was properly initialized.
2015-08-19 20:19:58 +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 9124cb28f9 server: Keep a pointer to parent's fd unix_name in the closed_fd structure. 2015-08-19 20:19:57 +09:00
Alexandre Julliard 1baf01fc24 server: Store modification time as a key comment to avoid losing precision. 2015-08-18 18:11:32 +09:00
Sebastian Lackner a8c6fe39af server: Avoid leaking uninitialized stack memory to applications.
Without the memset() there is a risk of leaking uninitialized stack memory in the
get_next_device_request wineserver call.
2015-08-17 14:48:20 +09:00
Sebastian Lackner b279901546 server: Initialize irp->thread immediately after creation of irp_call object. 2015-08-17 14:48:08 +09:00
Sebastian Lackner 905bf79337 server: Store correct entry point for first thread. 2015-07-30 11:37:15 +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
Hans Leidekker e0206d9f8a server: Make returning used privileges optional in token_access_check. 2015-07-17 20:19:36 +09:00
Andrew Cook 453458f294 server: Implement JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE. 2015-07-17 14:28:59 +09:00
Sebastian Lackner 3db6d1acaf server: Avoid sending unexpected wakeup with uninitialized cookie value.
The code for SELECT_SIGNAL_AND_WAIT in select_on() calls signal_object(). This might
wake up the same thread which is currently in the wineserver call. The value for
current->wait->cookie is initialized at the end of the function, and not defined yet
at this point.
2015-07-15 16:29:11 +09:00
Alexandre Julliard 9cef52ffd6 server: Don't associate a thread to the MJ_CREATE and MJ_CLOSE requests. 2015-07-13 15:10:30 +09:00
Sebastian Lackner 8723d3455e server: Add fallback to desktop keystate in get_key_state wineserver call. 2015-07-10 15:07:45 +09:00
Alexandre Julliard bf26950194 server: Pass the file instead of the device pointer in all IRP requests. 2015-07-09 14:48:34 +09:00
Alexandre Julliard 13499a3d11 ntoskrnl: Implement creation and destruction of file objects. 2015-07-09 14:48:14 +09:00
Alexandre Julliard 350ee62ab4 server: Queue an IRP_MJ_CLOSE request on file destruction. 2015-07-09 14:38:18 +09:00
Alexandre Julliard b1fd5955c9 server: Queue an IRP_MJ_CREATE request on file creation. 2015-07-09 14:38:18 +09:00
Alexandre Julliard d087ea6798 server: Pass the device client pointer as part of the IRP parameters. 2015-07-09 14:38:18 +09:00