diff options
-rw-r--r-- | winsup/cygwin/ldap.cc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/winsup/cygwin/ldap.cc b/winsup/cygwin/ldap.cc index 01e892f03..3c9fd13a1 100644 --- a/winsup/cygwin/ldap.cc +++ b/winsup/cygwin/ldap.cc @@ -7,6 +7,10 @@ Cygwin license. Please consult the file "CYGWIN_LICENSE" for details. */ #include "winsup.h" +#include <lm.h> +#include <dsgetdc.h> +#include <iptypes.h> +#include <sys/param.h> #include "ldap.h" #include "cygerrno.h" #include "security.h" @@ -16,10 +20,7 @@ details. */ #include "cygheap.h" #include "registry.h" #include "pinfo.h" -#include "lm.h" -#include "dsgetdc.h" #include "tls_pbuf.h" -#include <sys/param.h> #define CYG_LDAP_ENUM_PAGESIZE 100 /* entries per page */ @@ -452,16 +453,15 @@ cyg_ldap::fetch_ad_account (PSID sid, bool group, PCWSTR domain) problems, we know what to do. */ base = tp.w_get (); PWCHAR b = base; - for (PWCHAR dotp = (PWCHAR) domain; dotp && *dotp; domain = dotp) + for (PCWSTR dotp = domain; dotp && *dotp; domain = dotp) { dotp = wcschr (domain, L'.'); - if (dotp) - *dotp++ = L'\0'; if (b > base) *b++ = L','; b = wcpcpy (b, L"DC="); - b = wcpcpy (b, domain); + b = dotp ? wcpncpy (b, domain, dotp++ - domain) : wcpcpy (b, domain); } + debug_printf ("naming context <%W>", base); } else { |