GNU/Linux |
RedHat 6.2(Zoot) |
|
![]() |
ldap_first_attribute(3) |
![]() |
ldap_first_attribute, ldap_next_attribute − step through LDAP entry attributes
#include
<lber.h>
#include <ldap.h>
char
*ldap_first_attribute(ld, entry, berptr)
LDAP *ld;
LDAPMessage *entry;
BerElement **berptr;
char
*ldap_next_attribute(ld, entry, ber)
LDAP *ld;
LDAPMessage *entry;
BerElement *ber;
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 a per-connection buffer containing the first attribute type in the entry. The return value should be treated as if it is a pointer to a static area (i.e., strdup(3) it if you want to save it).
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 used to effectively step through the entry’s attributes. This pointer is freed by ldap_next_attribute() when there are no more attributes (that is, when ldap_next_attribute() returns NULL). Otherwise, the caller is 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’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() routine mallocs memory that may need to be freed by the caller via ber_free(3).
ldap(3), ldap_first_entry(3), ldap_get_values(3), ldap_error(3)
OpenLDAP is developed and maintained by The OpenLDAP Project (http://www.openldap.org/). OpenLDAP is derived from University of Michigan LDAP 3.3 Release.
![]() |
ldap_first_attribute(3) | ![]() |