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
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2019-03-02 14:47:54 +0300
committerCorinna Vinschen <corinna@vinschen.de>2019-03-02 14:47:54 +0300
commit4abac6219346f3b3c06401d8100593c742b094b3 (patch)
tree2eccfd21123e5143739050e03a085d46ac40a17c
parent6c86b85f4ea30662b16e22e1803cc18de2658f4f (diff)
Cygwin: load_user_profile: Don't give primary domain to ldap
If the user domain is the primary domain, LDAP is supposed to use the default naming context. This is accomplished by setting domain name to NULL in the call to cyg_ldap::fetch_ad_account. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
-rw-r--r--winsup/cygwin/sec_auth.cc21
1 files changed, 7 insertions, 14 deletions
diff --git a/winsup/cygwin/sec_auth.cc b/winsup/cygwin/sec_auth.cc
index 2f0480124..36874b63e 100644
--- a/winsup/cygwin/sec_auth.cc
+++ b/winsup/cygwin/sec_auth.cc
@@ -285,9 +285,7 @@ load_user_profile (HANDLE token, struct passwd *pw, cygpsid &usersid)
PCWSTR dnsdomain = NULL;
debug_printf ("primary domain <%W>", cygheap->dom.primary_flat_name ());
- if (!wcscasecmp (domain, cygheap->dom.primary_flat_name ()))
- dnsdomain = cygheap->dom.primary_dns_name ();
- else
+ if (wcscasecmp (domain, cygheap->dom.primary_flat_name ()))
{
PDS_DOMAIN_TRUSTSW td = NULL;
@@ -301,21 +299,16 @@ load_user_profile (HANDLE token, struct passwd *pw, cygpsid &usersid)
}
}
}
- if (dnsdomain)
+ if (cldap.fetch_ad_account (usersid, false, dnsdomain))
{
- if (cldap.fetch_ad_account (usersid, false, dnsdomain))
+ PWCHAR val = cldap.get_profile_path ();
+ if (val && *val)
{
- PWCHAR val = cldap.get_profile_path ();
- if (val && *val)
- {
- wcsncpy (userpath, val, MAX_PATH - 1);
- userpath[MAX_PATH - 1] = L'\0';
- pi.lpProfilePath = userpath;
- }
+ wcsncpy (userpath, val, MAX_PATH - 1);
+ userpath[MAX_PATH - 1] = L'\0';
+ pi.lpProfilePath = userpath;
}
}
- else
- debug_printf ("Unknown domain <%W>?", domain);
}
if (!LoadUserProfileW (token, &pi))