Manpages - ldap_get_values.3

Table of Contents

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_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 is returned and the ld_errno field in the ld parameter is set to indicate the error. See *ldap_error*(3) for a description of possible error codes.

NOTES

These routines dynamically allocate memory which the caller must free using the supplied routines.

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 University of Michigan LDAP 3.3 Release.

Author: dt

Created: 2022-02-20 Sun 17:10