ldap_next_attributeW function (winldap.h)
For a given entry, the ldap_next_attribute function returns the next attribute.
Syntax
WINLDAPAPI PWCHAR LDAPAPI ldap_next_attributeW(
[in] LDAP *ld,
[in] LDAPMessage *entry,
[in, out] BerElement *ptr
);
Parameters
[in] ld
The session handle.
[in] entry
The entry whose attributes are to be stepped through, as returned by ldap_first_entry or ldap_next_entry.
[in, out] ptr
The address of a pointer used internally to track the current position in the entry.
Return value
If the function succeeds, it returns a pointer to a null-terminated string that contains the current attribute name. If there are no more attributes to step through, it returns NULL. The session error parameter in the LDAP data structure is set to 0 in either case.
If the function fails, it returns NULL and sets the session error parameter in the LDAP data structure to the LDAP error code.
Remarks
Use ldap_next_attribute in conjunction with ldap_first_attribute to step through the list of attribute types returned with an entry. You can then pass these attribute names in a call to ldap_get_values to retrieve their associated values.
A call to ldap_next_attribute returns, through the ptr parameter, a pointer to a BerElement structure. Pass this pointer to the next call to ldap_next_attribute to track the current position in the list of attributes. When you have finished stepping through a list of attributes, and ptr is non-NULL, free the pointer by calling ber_free (ptr, 0). Be aware that you must pass the second parameter as 0 (zero) in this call.
The ldap_next_attribute function returns a pointer to an internally allocated buffer that contains the current attribute name. Free this buffer, when no longer required, by calling ldap_memfree. Because this buffer is overwritten on the next call to either ldap_first_attribute or ldap_next_attribute, the user should make a copy of the attribute name if it must be preserved for processing.
Note
The winldap.h header defines ldap_next_attribute as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista |
Minimum supported server | Windows Server 2008 |
Target Platform | Windows |
Header | winldap.h |
Library | Wldap32.lib |
DLL | Wldap32.dll |