summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ldap.cc14
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
{