Skip to content

winldap: Fix ldap_get_dn function prototype#2222

Open
jay wants to merge 1 commit into
MicrosoftDocs:docsfrom
jay:ldap_get_dn
Open

winldap: Fix ldap_get_dn function prototype#2222
jay wants to merge 1 commit into
MicrosoftDocs:docsfrom
jay:ldap_get_dn

Conversation

@jay

@jay jay commented Jun 15, 2026

Copy link
Copy Markdown
Contributor
  • Override the syntax manually to declare ldap_get_dn returns PTCHAR.

Prior to this change the auto-generated syntax erroneously said that ldap_get_dn returned PCHAR instead of PTCHAR.

The bad syntax probably has to do with the way the unusual way ldap functions are declared in winldap.h. ldap_get_dn is either a macro that maps to ldap_get_dnW (LDAP_UNICODE defined, returns PWCHAR) or given its own protoype the same as ldap_get_dnA (no LDAP_UNICODE, returns PCHAR).

Closes #xxxx


AFAICT, LDAP_UNICODE is only used internally and set depending on UNICODE. They are different symbols so LDAP_UNICODE can be different from UNICODE. This presents a dilemma because LDAP_UNICODE does not have specific dependent types like TCHAR. It may be more correct (but also confusing) to add in remarks that if LDAP_UNICODE is defined to 0 then the return type is PCHAR.

Many ldap functions have incorrect prototype documentation but I only changed one. There is no way to open an issue so I opened a PR with this one change to notify. I suggest MS rather tackle this issue wholesale.

- Override the syntax manually to declare ldap_get_dn returns PTCHAR.

Prior to this change the auto-generated syntax erroneously said that
ldap_get_dn returned PCHAR instead of PTCHAR.

The bad syntax probably has to do with the way the unusual way
ldap functions are declared in winldap.h. ldap_get_dn is either a macro
that maps to ldap_get_dnW (LDAP_UNICODE defined, returns PWCHAR) or
given its own protoype the same as ldap_get_dnA (no LDAP_UNICODE,
returns PCHAR).

Closes #xxxx
@prmerger-automator

Copy link
Copy Markdown

@jay : Thanks for your contribution! The author(s) and reviewer(s) have been notified to review your proposed change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants