Hans Leidekker : server: Include groups in file mode calculation if the security descriptor matches the current user .
Module: wine Branch: master Commit: 3321c450384e56e9153e0fff32b5933a18a7a6a7 URL: http://source.winehq.org/git/wine.git/?a=commit;h=3321c450384e56e9153e0fff32... Author: Hans Leidekker <hans(a)codeweavers.com> Date: Tue Jul 19 09:52:54 2011 +0200 server: Include groups in file mode calculation if the security descriptor matches the current user. --- server/file.c | 16 ++++++++-------- 1 files changed, 8 insertions(+), 8 deletions(-) diff --git a/server/file.c b/server/file.c index fcfd572..07dab39 100644 --- a/server/file.c +++ b/server/file.c @@ -505,15 +505,15 @@ mode_t sd_to_mode( const struct security_descriptor *sd, const SID *owner ) { denied_mode |= (mode << 6) | (mode << 3) | mode; /* all */ } - else if (security_equal_sid( sid, owner )) - { - denied_mode |= (mode << 6); /* user only */ - } else if ((security_equal_sid( user, owner ) && token_sid_present( current->process->token, sid, TRUE ))) { denied_mode |= (mode << 6) | (mode << 3); /* user + group */ } + else if (security_equal_sid( sid, owner )) + { + denied_mode |= (mode << 6); /* user only */ + } break; case ACCESS_ALLOWED_ACE_TYPE: aa_ace = (const ACCESS_ALLOWED_ACE *)ace; @@ -523,15 +523,15 @@ mode_t sd_to_mode( const struct security_descriptor *sd, const SID *owner ) { new_mode |= (mode << 6) | (mode << 3) | mode; /* all */ } - else if (security_equal_sid( sid, owner )) - { - new_mode |= (mode << 6); /* user only */ - } else if ((security_equal_sid( user, owner ) && token_sid_present( current->process->token, sid, FALSE ))) { new_mode |= (mode << 6) | (mode << 3); /* user + group */ } + else if (security_equal_sid( sid, owner )) + { + new_mode |= (mode << 6); /* user only */ + } break; } }
participants (1)
-
Alexandre Julliard