LDAP_FIRST_MESSAGE(3)LDAP_FIRST_MESSAGE(3)NAME
ldap_first_message, ldap_next_message, ldap_count_messages - Stepping through messages in
a result chain
LIBRARY
OpenLDAP LDAP (libldap, -lldap)
SYNOPSIS
#include <ldap.h>
int ldap_count_messages( LDAP *ld, LDAPMessage *result )
LDAPMessage *ldap_first_message( LDAP *ld, LDAPMessage *result )
LDAPMessage *ldap_next_message( LDAP *ld, LDAPMessage *message )
DESCRIPTION
These routines are used to step through the messages in a result chain received from
ldap_result(3). For search operations, the result chain can contain referral, entry and
result messages. The ldap_msgtype(3) function can be used to distinguish between the dif-
ferent message types.
The ldap_first_message() routine is used to retrieve the first 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 message in the result chain.
This pointer should be supplied on a subsequent call to ldap_next_message() to get the
next message, the result of which should be supplied to the next call to ldap_next_mes-
sage(), etc. ldap_next_message() will return NULL when there are no more messages.
These functions are useful when using routines like ldap_parse_result(3) that only operate
on the first result in the chain.
A count of the number of messages in the result chain can be obtained by calling
ldap_count_messages(). It can also be used to count the number of remaining messages in a
chain if called with a message, entry or reference returned by ldap_first_message() ,
ldap_next_message() , ldap_first_entry(3), ldap_next_entry(3), ldap_first_reference(3),
ldap_next_reference(3).
ERRORS
If an error occurs in ldap_first_message() or ldap_next_message(), NULL is returned. If
an error occurs in ldap_count_messages(), -1 is returned.
SEE ALSOldap(3), ldap_search(3), ldap_result(3), ldap_parse_result(3), ldap_first_entry(3),
ldap_first_reference(3)ACKNOWLEDGEMENTS
OpenLDAP Software is developed and maintained by The OpenLDAP Project <http://www.openl-
dap.org/>. OpenLDAP Software is derived from University of Michigan LDAP 3.3 Release.
OpenLDAP 2.4.23 2010/06/30 LDAP_FIRST_MESSAGE(3)