ldap_get_values - LDAP attribute value handling routines
#include <ldap.h> char **ldap_get_values(ld, entry, attr) LDAP *ld; LDAPMessage *entry; char *attr; struct berval **ldap_get_values_len(ld, entry, attr) LDAP *ld; LDAPMessage *entry; char *attr; int ldap_count_values(vals) char **vals; int ldap_count_values_len(vals) struct berval **vals; void ldap_value_free(vals) char **vals; void ldap_value_free_len(vals) struct berval **vals;
LDAP_GET_VALUES(3oldap) LDAP_GET_VALUES(3oldap)
NAME
ldap_get_values, ldap_get_values_len, ldap_count_values - LDAP
attribute value handling routines
LIBRARY
OpenLDAP LDAP (libldap, -lldap)
SYNOPSIS
#include <ldap.h>
char **ldap_get_values(ld, entry, attr)
LDAP *ld;
LDAPMessage *entry;
char *attr;
struct berval **ldap_get_values_len(ld, entry, attr)
LDAP *ld;
LDAPMessage *entry;
char *attr;
int ldap_count_values(vals)
char **vals;
int ldap_count_values_len(vals)
struct berval **vals;
void ldap_value_free(vals)
char **vals;
void ldap_value_free_len(vals)
struct berval **vals;
DESCRIPTION
These routines are used to retrieve and manipulate attribute values
from an LDAP entry as returned by ldap_first_entry(3) or
ldap_next_entry(3). 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(3) or ldap_next_attribute(3), 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() routine
can be used instead. It takes the same parameters as ldap_get_val-
ues(), but returns a NULL-terminated array of pointers to berval struc-
tures, 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
is returned and the ld_errno field in the ld parameter is set to indi-
cate the error. See ldap_error(3) for a description of possible error
codes.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+------------------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+------------------------------+
|Availability | system/network/ldap/openldap |
+---------------+------------------------------+
|Stability | Pass-through uncommitted |
+---------------+------------------------------+
NOTES
These routines dynamically allocate memory which the caller must free
using the supplied routines.
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from ftp://ftp.openldap.org/pub/OpenLDAP/openl-
dap-release/openldap-2.4.59.tgz.
Further information about this software can be found on the open source
community website at http://www.openldap.org/.
SEE ALSO
ldap(3), ldap_first_entry(3), ldap_first_attribute(3), ldap_error(3)
ACKNOWLEDGEMENTS
OpenLDAP Software is developed and maintained by The OpenLDAP Project
<http://www.openldap.org/>. OpenLDAP Software is derived from the Uni-
versity of Michigan LDAP 3.3 Release.
OpenLDAP 2.4.59 2021/06/03 LDAP_GET_VALUES(3oldap)