Commit Graph

102 Commits

Author SHA1 Message Date
Alexandre Julliard d6ef9401b3 server: Use the object type information to implement access mapping.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-05 22:53:46 +01:00
Alexandre Julliard dc4e881834 server: Add support for object counts in the object type information.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 23:11:22 +01:00
Alexandre Julliard c6f2aacb57 server: Add a type descriptor to all server objects.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 21:25:32 +01:00
Nikolay Sivov 2a7a1bbee2 server: Handle duplicate handles when inheriting them for the new process.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50004
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-19 14:56:29 +02:00
Nikolay Sivov fde5967f72 server: Inherit standard handles together with explicit handle list.
Restores standard handles behavior pre-c58a10c16395c30e7793cde1f748febe0432a6ad,
always inheriting them when inherit mode is enabled.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49895
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-29 21:04:13 +02:00
Zebediah Figura fa1b0fcf6c server: Check duplicated handle access against the calling thread token and target process token.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 15:22:36 +02:00
Alexandre Julliard 25692223f1 server: Rename make_object_static() to make_object_permanent().
This makes it clear that it's the same as the OBJ_PERMANENT flag.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-23 15:26:10 +02:00
Alexandre Julliard 2e51f9aae3 server: Add an object operation to retrieve an object name.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-22 16:55:08 +02:00
Nikolay Sivov c58a10c163 server: Implement inherited handles list.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-22 14:04:45 +02:00
Zebediah Figura 24021931a8 server: Remove no longer used enumerate_handles().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 16:57:42 +02:00
Zebediah Figura 77e74fb1db ntdll: Implement NtMakeTemporaryObject().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Jacek Caban b2a546c92d server: Introduce kernel_object struct for generic association between server and kernel objects.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-26 13:55:15 +01:00
Michael Müller 187b53e5a5 server: Do not set SE_{D, S}ACL_PRESENT if no {D, S}ACL was set.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-15 11:09:16 +02:00
Michael Müller af2d01c2fa server: Implement changing the label of a security descriptor.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-15 11:08:59 +02:00
Michael Müller 2ebe679638 server: Implement querying the security label of a security descriptor.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-15 10:50:54 +02:00
Michael Müller 0e49e0541f server: Give all access rights when opening an object with MAXIMUM_ALLOWED.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-13 11:37:02 +01:00
Alexandre Julliard 10a38ef056 server: Require a directory as root to open an object with a name.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-12 23:07:30 +09:00
Michael Müller 18a8636ebe server: Add support for Win8 pseudo handles.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 12:15:54 +09:00
Alexandre Julliard 39e60dc680 server: Support opening objects from any root, not only directories.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 20:36:17 +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 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 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 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
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
Andrew Cook 5d85f57814 server: Track handle count of objects. 2015-04-03 17:07:37 +09:00
Alexandre Julliard 4654d871b2 server: Map new handle access even when not checking it. 2013-08-26 14:17:42 +02:00
Piotr Caban 76bfbf43e9 server: Don't create new handle when DUP_HANDLE_CLOSE_SOURCE is used if possible. 2013-06-05 17:31:40 +02:00
Dmitry Timoshkov 094e465790 server: A destroyed process handle table means that the process is terminating. 2013-05-08 12:44:49 +02:00
Michael Stefaniuc 835171c2e0 server: Remove casts to the type of the casted expression. 2011-09-21 14:41:01 +02:00
Bernhard Loos bf3c2a06f5 server: Check for STATUS_OBJECT_TYPE_MISMATCH before STATUS_ACCESS_DENIED in get_handle_obj. 2011-07-20 19:23:04 +02:00
André Hentschel c7becc3015 server: Remove dead initializations (clang). 2011-07-06 11:20:37 +02:00
Alexandre Julliard 350c0caba0 server: Always free the process handle table even if the process didn't start. 2010-08-24 12:10:51 +02:00
Alexandre Julliard 658dae988d server: Add support for returning the object name in NtQueryObject. 2010-01-08 13:01:50 +01:00
Alexandre Julliard 60efdd55ea server: Don't set last error in close_handle(), return the error code instead. 2009-12-01 13:59:41 +01:00
Alexandre Julliard 1a6c472115 server: Don't set last error in get_handle(), move that into the callers. 2009-12-01 13:49:43 +01:00
Alexandre Julliard 0d3d456bd0 server: Make object handles ints instead of pointers. 2008-12-08 16:04:20 +01:00
Alexandre Julliard 9434e19965 server: Limit the number of allocated handles before running out of memory. 2008-12-04 16:12:04 +01:00
Alexandre Julliard 8382eb01b2 server: Return correct object types in the get_directory_entry request. 2007-12-05 18:16:42 +01:00
Alexandre Julliard d30b5742ed server: Implemented EnumWindowStations and EnumDesktops. 2007-12-05 16:45:32 +01:00
Rob Shearman 92db6d2c2f server: Don't do access checks on the security descriptors of newly created objects. 2007-11-06 14:52:21 +01:00
Rob Shearman 9980f478e2 server: Make sure to always initialise req_sd.owner_len and req_sd.group_len in the handler for the get_security_object call. 2007-11-01 12:51:12 +01:00
Rob Shearman c1707d8938 server: Add get_sd and set_sd object operations to allow the security descriptor to be stored somewhere other than server memory, such as on disk. 2007-10-04 12:30:52 +02:00
Rob Shearman 5356bfde2c server: Add a new get_security_object call for getting the security descriptor of an object.
Use it to implement NtQuerySecurityObject.
2007-10-03 11:16:45 +02:00
Rob Shearman 5af809abfd server: Move set_security_object to handle.c and set_object_sd to object.c.
These both don't operate on tokens so token.c is not the right place for 
them to be implemented.
2007-10-03 11:04:43 +02:00
Alexandre Julliard 7e71c1ddee server: Add an open_file() function to the object operations. 2007-03-22 11:44:29 +01:00
Andrew Talbot b1788c8462 server: Replace inline static with static inline. 2007-03-17 20:05:05 +01:00
Rob Shearman 6a76a0ac7a server: Check object's security when creating handles.
Don't check object's security when duplicating a handle of the same or 
lower access rights. Based on a patch by Vitaliy Margolen.
2007-02-21 19:49:02 +01:00
Vitaliy Margolen c04e7e7878 advapi32: Add more tests for granted access mask. Fix test on Wine. 2007-01-25 12:52:27 +01:00
Vitaliy Margolen bae75024a4 server/ntdll: Simplistic implementation of NtQueryObject(ObjectBasicInformation). 2007-01-25 12:48:35 +01:00
Alexandre Julliard 3410354d61 ntdll: Fix NtDuplicateObject to only close the file descriptor if it's in the same process. 2007-01-18 12:18:51 +01:00