ldap_parse_reference — Extract referrals and controls from a reference message
#include <ldap.h>
int
ldap_parse_reference( |
LDAP * | ld, |
| LDAPMessage * | reference, | |
| char *** | referralsp, | |
| LDAPControl *** | serverctrlsp, | |
| int | freeit); |
The ldap_parse_reference()
routine is used to extract referrals and controls from a
reference message. The reference parameter is a
reference message as returned by a call to ldap_first_reference(3),
ldap_next_reference(3),
ldap_first_message(3),
ldap_next_message(3), or
ldap_result(3).
The referralsp
parameter will be filled in with an allocated array of
character strings. The strings are copies of the referrals
contained in the parsed message. The array should be freed by
calling ldap_value_free(3). If
referralsp is NULL,
no referrals are returned. If no referrals were returned,
*referralsp is set
to NULL.
The serverctrlsp
parameter will be filled in with an allocated array of
controls copied from the parsed message. The array should be
freed by calling ldap_controls_free(3). If
serverctrlsp is NULL,
no controls are returned. If no controls were returned,
*serverctrlsp is
set to NULL.
The freeit
parameter determines whether the parsed message is freed or
not after the extraction. Any non-zero value will make it
free the message. The ldap_msgfree(3) routine can
also be used to free the message later.
Upon success LDAP_SUCCESS is returned. Otherwise the
values of the referralsp and serverctrlsp parameters are
undefined.
ldap(3), ldap_first_reference(3), ldap_first_message(3), ldap_result(3), ldap_get_values(3), ldap_controls_free(3)