<div dir="ltr"><div><span style="font-family:courier new,monospace">server: fix for default_set_sd which contained a number of issues related to setting defaults from tokens.<br><br>* SetSecurityInfo should not reset owner and group to default if SECURITY_INFORMATION does not contain OWNER_SECURITY_INFORMATION or GROUP_SECURITY_INFORMATION<br>
* The create functions for objects (create_event, create_mapping, create_mutex, create_semaphore) should set defaults if the security descriptor is NULL (it already did this properly if the security descriptor is empty).<br>
* For certain objects: The impersonation token of the thread should also be used to determine the default owner, dacl, not just the primary token.<br>* Any of the 4 SE_*_DEFAULTED controls should not be stored on the object, their usage is transient<br>
</span></div><div><span style="font-family:courier new,monospace"></span></div><div><span style="font-family:courier new,monospace"><br></span></div><span style="font-family:courier new,monospace">Tested on Wine, XP sp3, Vista sp2 and 8.1 update 1<br>
<br>---<br> dlls/advapi32/tests/security.c | 225 +++++++++++++++++++++++++++++++++--------<br> server/event.c                 |  50 ++++-----<br> server/mapping.c               |   8 +-<br> server/mutex.c                 |  40 ++++----<br>
 server/object.c                |  92 ++++++++++++-----<br> server/object.h                |   7 +-<br> server/semaphore.c             |  40 ++++----<br> server/timer.c                 |  32 +++---<br> 8 files changed, 340 insertions(+), 154 deletions(-)<br>
<br><br><br></span></div>