openldap/doc/man/man3/ldap_get_values.3
Kurt Zeilenga 3a119bf1f7 Update man pages based upon required use of ldap_memfree() instead of free()
replace 'malloced' with 'dynamically allocated'
	State ldap_memfree(3) should be used instead of free()
	Still need ldap_memfree(3) man page.
1998-12-22 19:08:27 +00:00

106 lines
2.5 KiB
Groff

.TH LDAP_GET_VALUES 3 "22 September 1998" "OpenLDAP LDVERSION"
.SH NAME
ldap_get_values, ldap_get_values_len, ldap_count_values \- LDAP attribute value handling routines
.SH SYNOPSIS
.nf
.ft B
#include <lber.h>
#include <ldap.h>
typedef struct berval {
unsigned long bv_len;
char *bv_val;
};
.LP
.ft B
char **ldap_get_values(ld, entry, attr)
.ft
LDAP *ld;
LDAPMessage *entry;
char *attr
.LP
.ft B
struct berval **ldap_get_values_len(ld, entry, attr)
.ft
LDAP *ld;
LDAPMessage *entry;
char *attr
.LP
.ft B
ldap_count_values(vals)
.ft
char **vals;
.LP
.ft B
ldap_count_values_len(vals)
.ft
struct berval **vals;
.LP
.ft B
ldap_value_free(vals)
.ft
char **vals;
.LP
.ft B
ldap_value_free_len(vals)
.ft
struct berval **vals;
.SH DESCRIPTION
These routines are used to retrieve and manipulate attribute values
from an LDAP entry as returned by
.BR ldap_first_entry (3)
or
.BR ldap_next_entry (3).
.B ldap_get_values()
takes the \fIentry\fP and the attribute \fIattr\fP
whose values are desired and returns a NULL-terminated array of the
attribute's values. \fIattr\fP may be an attribute type as returned
from
.BR ldap_first_attribute (3)
or
.BR ldap_next_attribute (3),
or if the attribute type is known it can simply be given.
.LP
The number of values in the array can be counted by calling
.BR ldap_count_values() .
The array of values returned can be freed by calling
.BR ldap_value_free() .
.LP
If the attribute values are binary in nature, and thus not suitable
to be returned as an array of char *'s, the
.B ldap_get_values_len()
routine can be used instead. It takes the same parameters as
.BR 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.
.LP
The number of values in the array can be counted by calling
.BR ldap_count_values_len() .
The array of values returned can be freed by calling
.BR ldap_value_free_len() .
.SH ERRORS
If an error occurs in
.B ldap_get_values()
or
.BR ldap_get_values_len() ,
NULL is returned and the
.B ld_errno
field in the \fIld\fP parameter is set to
indicate the error. See
.BR ldap_error (3)
for a description of possible error codes.
.SH NOTES
These routines dynamically allocate memory which the caller must free
using the supplied routines.
.SH SEE ALSO
.BR ldap(3),
.BR ldap_first_entry(3),
.BR ldap_first_attribute(3),
.BR ldap_error(3)
.SH ACKNOWLEDGEMENTS
.B OpenLDAP
is developed and maintained by The OpenLDAP Project (http://www.openldap.org/).
.B OpenLDAP
is derived from University of Michigan LDAP 3.3 Release.