NAME | SYNOPSIS | DESCRIPTION | ERRORS | ATTRIBUTES | SEE ALSO | NOTES
cc [ flag... ] file... -lldap[ library... ] #include <lber.h> #include <ldap.h>char *ldap_first_attribute(LDAP *ld, LDAPMessage *entry, BerElement **berptr);
The ldap_first_attribute() and ldap_next_attribute() functions are used to step through the attributes in an LDAP entry. ldap_first_attribute() takes an entry as returned by ldap_first_entry(3LDAP) or ldap_next_entry(3LDAP) and returns a pointer to memory that must be freed with a call to ldap_memfree(3LDAP).
They also return, 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'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(3LDAP). When calling ber_free(3LDAP) 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(3LDAP) 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(3LDAP) for a description of possible error codes.
See attributes(5) for a description of the following attributes:
ATTRIBUTE TYPE |
ATTRIBUTE VALUE |
---|---|
Availability |
SUNWcsl (32-bit) |
|
SUNWcslx (64-bit) |
Interface Stability |
Evolving |
The ldap_first_attribute() function alllocates memory that might need to be freed by the caller by means of ber_free(3LDAP).
NAME | SYNOPSIS | DESCRIPTION | ERRORS | ATTRIBUTES | SEE ALSO | NOTES