LDAP_GET_VALUES(3LDAP) LDAP Library Functions LDAP_GET_VALUES(3LDAP)

NAME


ldap_get_values, ldap_get_values_len, ldap_count_values,
ldap_count_values_len, ldap_value_free, ldap_value_free_len - LDAP
attribute value handling functions

SYNOPSIS


cc[ flag... ] file... -lldap[ library... ]
#include <lber.h>
#include <ldap.h>

char **ldap_get_values(LDAP *ld, LDAPMessage *entry, char *attr);


struct berval **ldap_get_values_len(LDAP *ld, LDAPMessage *entry,
char *attr);


ldap_count_values(char **vals);


ldap_count_values_len(struct berval **vals);


ldap_value_free(char **vals);


ldap_value_free_len(struct berval **vals);


DESCRIPTION


These functions are used to retrieve and manipulate attribute values from
an LDAP entry as returned by ldap_first_entry(3LDAP) or
ldap_next_entry(3LDAP). ldap_get_values() takes the entry and the
attribute attr whose values are desired and returns a null-terminated
array of the attribute's values. attr may be an attribute type as
returned from ldap_first_attribute(3LDAP) or ldap_next_attribute(3LDAP),
or if the attribute type is known it can simply be given.


The number of values in the array can be counted by calling
ldap_count_values(). The array of values returned can be freed by calling
ldap_value_free().


If the attribute values are binary in nature, and thus not suitable to be
returned as an array of char *'s, the ldap_get_values_len() function can
be used instead. It takes the same parameters as ldap_get_values(), but
returns a null-terminated array of pointers to berval structures, each
containing the length of and a pointer to a value.


The number of values in the array can be counted by calling
ldap_count_values_len(). The array of values returned can be freed by
calling ldap_value_free_len().

ERRORS


If an error occurs in ldap_get_values() or ldap_get_values_len(), NULL
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.

ATTRIBUTES


See attributes(7) for a description of the following attributes:


+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|Interface Stability | Evolving |
+--------------------+-----------------+

SEE ALSO


ldap(3LDAP), ldap_error(3LDAP), ldap_first_attribute(3LDAP),
ldap_first_entry(3LDAP), attributes(7)

NOTES


These functions allocates memory that the caller must free.

January 28, 2002 LDAP_GET_VALUES(3LDAP)