NAME | SYNOPSIS | DESCRIPTION | Utility Functions | ATTRIBUTES
cc[ flag... ] file... -lldap[ library... ] #include <lber.h> #include <ldap.h>
The Lightweight Directory Access Protocol provides TCP/IP access to the X.500 Directory or to a stand-alone LDAP server. The SUNWlldap package includes various LDAP clients and an LDAP client library used to provide programmatic access to the LDAP protocol. This man page gives an overview of the LDAP library functions.
Both synchronous and asynchronous APIs are provided. Also included are various functions to parse the results returned from these functions. These functions are found in the libldap.so.3 shared object.
The basic interaction is as follows. A connection is made to an LDAP server by calling ldap_open(3LDAP). An LDAP bind operation is performed by calling one of ldap_bind(3LDAP) and friends. Next, other operations are performed by calling one of the synchronous or asynchronous functions (for example, ldap_search_s(3LDAP) or ldap_search(3LDAP) followed by ldap_result(3LDAP)). Results returned from these functions are interpreted by calling the LDAP parsing functions. The LDAP association is terminated by calling ldap_unbind(3LDAP). Errors can be interpreted by calling ldap_perror(3LDAP). The ldap_set_rebind_proc(3LDAP) function can be used to set a function to be called back when an LDAP bind operation needs to occur when handling a client referral.
Search filters to be passed to the ldap search functions can be constructed by hand, or by calling the ldap_getfilter(3LDAP) functions.
Results obtained from the ldap search functions can be output by hand, by calling ldap_first_entry(3LDAP) and ldap_next_entry(3LDAP) to step through the entries returned, ldap_first_attribute(3LDAP) and ldap_next_attribute(3LDAP) to step through an entry's attributes, and ldap_get_values(3LDAP) to retrieve a given attribute's value, and then calling printf(3C) or whatever to display the values.
Alternatively, the entry can be output automatically by calling the ldap_entry2text(3LDAP), ldap_entry2text_search(3LDAP), ldap_entry2html(3LDAP), or ldap_entry2html_search(3LDAP) functions. These functions look up the object class of the entry they are passed in the ldaptemplates.conf(4) file to decide which attributes to display and how to display them. Output is handled via a function passed in as a parameter.
The ldap_url(3LDAP) functions can be used test a URL to see if it is an LDAP URL, to parse LDAP URLs into their component pieces, to initiate searches directly using an LDAP URL, and to retrieve the URL associated with a DNS domain name or a distinguished name.
The ldap_ufn(3LDAP) functions implement a user friendly naming scheme via LDAP. This scheme allows you to look up entries using fuzzy, untyped names like "mark smith, umich, us".
The ldap_cache(3LDAP) functions implement a local client caching scheme, providing a substantial performance increase for repeated queries.
Also provided are various utility functions. The ldap_sort(3LDAP) functions are used to sort the entries and values returned via the ldap search functions. The ldap_friendly(3LDAP) functions are used to map from short two letter country codes (or other strings) to longer "friendlier" names. The ldap_charset(3LDAP) functions can be used to translate to and from the T.61 character set used for many character strings in the LDAP protocol.
The cldap_search_s(3LDAP) function allows you to access the directory via Connectionless LDAP (CLDAP), which is similar to LDAP but operates over UDP, obviating the need to set up and tear down a connection by calling ldap_open(3LDAP), ldap_bind(3LDAP), and ldap_unbind(3LDAP). cldap_open(3LDAP) should be called before using cldap_search_s(3LDAP). All the same getfilter, parsing, and display that can be used with regular LDAP functions can be used with the CLDAP functions.
Also included in the distribution is a set of lightweight Basic Encoding Rules functions. These functions are used by the LDAP library functions to encode and decode LDAP protocol elements using the (slightly simplified) Basic Encoding Rules defined by LDAP. They are not normally used directly by an LDAP application program. The functions provide a printf and scanf-like interface, as well as lower-level access.
open a connection to an LDAP server
initialize the LDAP library without opening a connection to a server
wait for the result from an asynchronous operation
abandon (abort) an asynchronous operation
asynchronously add an entry
synchronously add an entry
asynchronously add an entry, return value and place message
synchronously add an entry, return value and place message
asynchronously bind to the directory
synchronously bind to the directory
asynchronously bind to the directory using simple authentication
synchronously bind to the directory using simple authentication
synchronously unbind from the LDAP server and close the connection
equivalent to ldap_unbind(3LDAP)
enable LDAP client caching
disable LDAP client caching
disable LDAP client caching and destroy cache contents
flush LDAP client cache
uncache requests pertaining to an entry
uncache a request
set cache options
asynchronous compare to a directory entry
synchronous compare to a directory entry
asynchronous compare to a directory entry, return value and place message
synchronous compare to a directory entry, return value and place message
LDAP control disposal
LDAP control disposal
asynchronously delete an entry
synchronously delete an entry
asynchronously delete an entry, return value and place message
synchronously delete an entry, return value and place
initialize display template functions from a file
initialize display template functions from a buffer
free display template function memory
steps through ldap_result(3LDAP) message chain
counts the messages in an ldap_result(3LDAP) message chain
steps through ldap_result(3LDAP) message chain
counts the messages in an ldap_result(3LDAP) message chain
steps through ldap_result(3LDAP) message chain
returns the type of LDAP message
get first display template
get next display template
return template appropriate for objectclass
return attributes needed by template
return first row of displayable items in a template
return next row of displayable items in a template
return first column of displayable items in a template
return next column of displayable items in a template
display an entry as text using a display template
search for and display an entry as text using a display template
display values as text
display an entry as HTML (HyperText Markup Language) using a display template
search for and display an entry as HTML using a display template
display values as HTML
print an LDAP error indication to standard error
LDAP error indication
extract LDAP error indication from LDAP result
list of ldap errors and their meanings
convert LDAP error indication to a string
return first attribute name in an entry
return next attribute name in an entry
return first entry in a chain of search results
return next entry in a chain of search results
return number of entries in a search result
map from unfriendly to friendly names
free resources used by ldap_friendly (3N)
extract the DN from an entry
convert a DN into its component parts
convert a DNS-style DN into its component parts (experimental)
check to see if a DN is a DNS-style DN (experimental)
convert a DNS domain name into an X.500 distinguished name
convert a DN into user friendly form
return an attribute's values
return an attribute values with lengths
free memory allocated by lldap_get_values(3LDAP)
free memory allocated by ldap_get_values_len(3LDAP)
return number of values
return number of values
initialize getfilter functions from a file
initialize getfilter functions from a buffer
free resources allocated by ldap_init_getfilter (3N)
return first search filter
return next search filter
construct an LDAP search filter from a pattern
set prefix and suffix for search filters
asynchronously modify an entry
synchronously modify an entry
asynchronously modify an entry, return value, place message
synchronously modify an entry, return value, place message
free array of pointers to mod structures used by ldap_modify (3N)
asynchronously modify the RDN of an entry
synchronously modify the RDN of an entry
depreciated - use ldap_modrdn2 (3N)
depreciated - use ldap_modrdn2_s (3N)
asynchronously modify the name of an LDAP entry
synchronously modify the name of an LDAP entry
free results allocated by ldap_result (3N)
search for a message to parse
search for a message to parse
search for a message to parse
asynchronously search the directory
synchronously search the directory
asynchronously search the directory, return value and place message
synchronously search the directory, return value and place message
synchronously search the directory with timeout
user friendly search the directory
user friendly search the directory with cancel
user friendly search the directory with cancel and timeout
set filter file used by ldap_ufn (3N) functions
set prefix used by ldap_ufn (3N) functions
set timeout used by ldap_ufn (3N) functions
check a URL string to see if it is an LDAP URL
break up an LDAP URL string into its components
asynchronously search using an LDAP URL
synchronously search using an LDAP URL
synchronously search using an LDAP URL and a timeout
locate the LDAP URL associated with a DNS domain name.
locate the LDAP URL associated with a distinguished name.
initialize searchprefs functions from a file
initialize searchprefs functions from a buffer
free memory allocated by searchprefs functions
return first searchpref object
return next searchpref object
sort a list of search results
sort a list of attribute values
case insensitive string comparison
set character set translation functions used by LDAP library
translate from the T.61 character set to another character set
translate to the T.61 character set from another character set
enable or disable character translation for an LDAP entry result
open a connectionless LDAP (CLDAP) session
perform a search using connectionless LDAP
set retry and timeout information using connectionless LDAP
terminate a connectionless LDAP session
See attributes(5) for a description of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Availability | SUNWlldap (32-bit) |
SUNWldapx (64-bit) | |
Stability Level | Evolving |
NAME | SYNOPSIS | DESCRIPTION | Utility Functions | ATTRIBUTES