Section (3) ldap_first_attribute

Linux manual pages Section 3  


ldap_first_attribute, ldap_next_attribute — step through LDAP entry attributes


#include <ldap.h>
char *ldap_first_attribute( LDAP *ld,
  LDAPMessage *entry,
  BerElement **berptr);
char *ldap_next_attribute( LDAP *ld,
  LDAPMessage *entry,
  BerElement *ber);


OpenLDAP LDAP (libldap, −lldap)


The ldap_first_attribute() and ldap_next_attribute() routines are used to step through the attributes in an LDAP entry. ldap_first_attribute() takes an entry as returned by ldap_first_entry(3) or ldap_next_entry(3) and returns a pointer to character string containing the first attribute description in the entry. ldap_next_attribute() returns the next attribute description in the entry.

It also returns, in berptr, a pointer to a BerElement it has allocated to keep track of its current position. This pointer should be passed to subsequent calls to ldap_next_attribute() and is used to effectively step through the entry_zsingle_quotesz_s attributes. The caller is solely responsible for freeing the BerElement pointed to by berptr when it is no longer needed by calling ber_free(3). When calling ber_free(3) in this instance, be sure the second argument is 0.

The attribute names returned are suitable for inclusion in a call to ldap_get_values(3) to retrieve the attribute_zsingle_quotesz_s values.


If an error occurs, NULL is returned and the ld_errno field in the ld parameter is set to indicate the error. See ldap_error(3) for a description of possible error codes.


The ldap_first_attribute() and ldap_next_attribute() return dynamically allocated memory that must be freed by the caller via ldap_memfree(3).


ldap(3), ldap_first_entry(3), ldap_get_values(3), ldap_error(3)


OpenLDAP Software is developed and maintained by The OpenLDAP Project <>. OpenLDAP Software is derived from the University of Michigan LDAP 3.3 Release.

See the following documents: COPYRIGHTLICENSE