Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/winsup
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2014-05-22 20:40:13 +0400
committerCorinna Vinschen <corinna@vinschen.de>2014-05-22 20:40:13 +0400
commitde13ccea73cb3d340e5bfa43c1e2f86ba5f8bddd (patch)
tree6dc8577740996e20308d4edcf1c4e1bf64837368 /winsup
parentee9b1ceb2dd1aee9ee64d2aeee1ee6b4a26b9369 (diff)
* sec_auth.cc (get_server_groups): Call get_user_local_groups only if
get_logon_server succeeded.
Diffstat (limited to 'winsup')
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/sec_auth.cc9
2 files changed, 11 insertions, 3 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 2975beef5..431aba3c9 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,10 @@
2014-05-22 Corinna Vinschen <corinna@vinschen.de>
+ * sec_auth.cc (get_server_groups): Call get_user_local_groups only if
+ get_logon_server succeeded.
+
+2014-05-22 Corinna Vinschen <corinna@vinschen.de>
+
* ldap.cc (cyg_ldap::fetch_ad_account): Take additional domain string
parameter. Convert into likely rootDSE string if not NULL, and use in
subsequent call to ldap_search_stW. Add comment to explain that this
diff --git a/winsup/cygwin/sec_auth.cc b/winsup/cygwin/sec_auth.cc
index ac116ea22..3615588ef 100644
--- a/winsup/cygwin/sec_auth.cc
+++ b/winsup/cygwin/sec_auth.cc
@@ -467,12 +467,15 @@ get_server_groups (cygsidlist &grp_list, PSID usersid, struct passwd *pw)
return false;
}
/* If the SID does NOT start with S-1-5-21, the domain is some builtin
- domain. The search for a logon server is moot. */
+ domain. The search for a logon server and fetching group accounts
+ is moot. */
if (sid_id_auth (usersid) == 5 /* SECURITY_NT_AUTHORITY */
&& sid_sub_auth (usersid, 0) == SECURITY_NT_NON_UNIQUE
&& get_logon_server (domain, server, DS_IS_FLAT_NAME))
- get_user_groups (server, grp_list, user, domain);
- get_user_local_groups (server, domain, grp_list, user);
+ {
+ get_user_groups (server, grp_list, user, domain);
+ get_user_local_groups (server, domain, grp_list, user);
+ }
return true;
}