FreeBSD Manual Pages
LDAP_FIRST_ATTRIBUTE(3) Library Functions Manual LDAP_FIRST_ATTRIBUTE(3) NAME ldap_first_attribute, ldap_next_attribute - step through LDAP entry attrib- utes LIBRARY OpenLDAP LDAP (libldap, -lldap) SYNOPSIS #include <ldap.h> char *ldap_first_attribute( LDAP *ld, LDAPMessage *entry, BerElement **berptr ) char *ldap_next_attribute( LDAP *ld, LDAPMessage *entry, BerElement *ber ) int ldap_get_attribute_ber( LDAP *ld, LDAPMessage *entry, BerElement *ber, BerValue *attr, BerVarray *vals ) DESCRIPTION The ldap_first_attribute(), ldap_next_attribute() and ldap_get_at- tribute_ber() routines are used to step through the attributes in an LDAP entry. ldap_first_attribute() takes an entry as returned by ldap_first_en- try(3) or ldap_next_entry(3) and returns a pointer to character string con- taining the first attribute description in the entry. ldap_next_at- tribute() 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 sub- sequent calls to ldap_next_attribute() and is used to effectively step through the entry's attributes. The caller is solely responsible for free- ing 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's values. The ldap_get_attribute_ber() routine allows one to iterate over all attrib- utes in-place, without allocating memory to hold text for the attribute name or its values, if requested. The use case is similar to ldap_next_at- tribute() except that the attribute name is returned into attr and, if vals is non-NULL, the list of values is stored there. Both point into the LDAP message and remain valid only while the entry is valid. The caller is still responsible for freeing vals with ldap_memfree(3), if used. ERRORS If an error occurs, NULL is returned and the ld_errno field in the ld para- meter is set to indicate the error. See ldap_error(3) for a description of possible error codes. NOTES The ldap_first_attribute() and ldap_next_attribute() return dynamically al- located memory that must be freed by the caller via ldap_memfree(3). For ldap_get_attribute_ber(), only the actual vals pointer needs to be freed with ldap_memfree(3), other data is accounted for as part of ber. SEE ALSO ldap(3), ldap_first_entry(3), ldap_get_values(3), ldap_error(3) ACKNOWLEDGEMENTS OpenLDAP Software is developed and maintained by The OpenLDAP Project <http://www.openldap.org/>. OpenLDAP Software is derived from the Univer- sity of Michigan LDAP 3.3 Release. OpenLDAP 2.6.13 2026/03/09 LDAP_FIRST_ATTRIBUTE(3)
NAME | LIBRARY | SYNOPSIS | DESCRIPTION | ERRORS | NOTES | SEE ALSO | ACKNOWLEDGEMENTS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ldap_first_attribute&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>
