ABCDEFGHIJKLMNOPQRSTUVWXYZ

ldap_count_values_len

LDAP_GET_VALUES(3)                                          LDAP_GET_VALUES(3)



NAME
       ldap_get_values,    ldap_get_values_len,   ldap_count_values   -   LDAP
       attribute value handling routines

SYNOPSIS
       #include <ldap.h>

       typedef struct berval {
           unsigned long bv_len;
           char *bv_val;
       };

       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

       ldap_count_values(vals)
       char **vals;

       ldap_count_values_len(vals)
       struct berval **vals;

       ldap_value_free(vals)
       char **vals;

       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.

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  is  developed  and  maintained  by   The   OpenLDAP   Project
       (http://www.openldap.org/).   OpenLDAP  is  derived  from University of
       Michigan LDAP 3.3 Release.



OpenLDAP 2.0.27-Release        22 September 1998            LDAP_GET_VALUES(3)