|LDAP_FIRST_REFERENCE(3)||Library Functions Manual||LDAP_FIRST_REFERENCE(3)|
ldap_first_reference, ldap_next_reference, ldap_count_references - Stepping through continuation references in a result chain
OpenLDAP LDAP (libldap, -lldap)
int ldap_count_references( LDAP *ld, LDAPMessage *result )
LDAPMessage *ldap_first_reference( LDAP *ld, LDAPMessage *result )
LDAPMessage *ldap_next_reference( LDAP *ld, LDAPMessage *reference )
These routines are used to step through the continuation references in a result chain received from ldap_result(3) or the synchronous LDAP search operation routines.
The ldap_first_reference() routine is used to retrieve the first reference message in a result chain. It takes the result as returned by a call to ldap_result(3), ldap_search_s(3) or ldap_search_st(3) and returns a pointer to the first reference message in the result chain.
This pointer should be supplied on a subsequent call to ldap_next_reference() to get the next reference message, the result of which should be supplied to the next call to ldap_next_reference(), etc. ldap_next_reference() will return NULL when there are no more reference messages. The reference messages returned from these calls are used by ldap_parse_reference(3) to extract referrals and controls.
A count of the number of reference messages in the search result can be obtained by calling ldap_count_references(). It can also be used to count the number of reference messages remaining in a result chain.
If an error occurs in ldap_first_reference() or ldap_next_reference(), NULL is returned. If an error occurs in ldap_count_references(), -1 is returned.
OpenLDAP Software is developed and maintained by The OpenLDAP Project http://www.openldap.org/. OpenLDAP Software is derived from the University of Michigan LDAP 3.3 Release.