routines can be used to test a URL to see if it is an LDAP URL, to parse LDAP
URLs into their component pieces, and to initiate searches directly using
an LDAP URL.
-.SH CACHING
-The
-.BR ldap_cache (3)
-routines implement a local client caching scheme,
-providing a substantial performance increase for repeated queries.
-Caching is experiemental.
.SH UTILITY ROUTINES
Also provided are various utility routines. The
.BR ldap_sort (3)
.SM ldap_memfree (3)
dispose of memory allocated by LDAP routines.
.TP
-.SM ldap_enable_cache(3)
-enable LDAP client caching
-.TP
-.SM ldap_disable_cache(3)
-disable LDAP client caching
-.TP
-.SM ldap_destroy_cache(3)
-disable LDAP client caching and destroy cache contents
-.TP
-.SM ldap_flush_cache(3)
-flush LDAP client cache
-.TP
-.SM ldap_uncache_entry(3)
-uncache requests pertaining to an entry
-.TP
-.SM ldap_uncache_request(3)
-uncache a request
-.TP
-.SM ldap_set_cache_options(3)
-set cache options
-.TP
.SM ldap_compare(3)
asynchronously compare to a directory entry
.TP
+++ /dev/null
-.TH LDAP_CACHE 3 "RELEASEDATE" "OpenLDAP LDVERSION"
-.\" $OpenLDAP$
-.\" Copyright 1998-2003 The OpenLDAP Foundation All Rights Reserved.
-.\" Copying restrictions apply. See COPYRIGHT/LICENSE.
-.SH NAME
-ldap_enable_cache, ldap_disable_cache, ldap_destroy_cache, ldap_flush_cache, ldap_uncache_entry, ldap_uncache_request, ldap_set_cache_options \- LDAP client caching routines
-.SH LIBRARY
-OpenLDAP LDAP (libldap, -lldap)
-.SH SYNOPSIS
-.nf
-.ft B
-#include <ldap.h>
-.ft
-.LP
-.ft B
-ldap_enable_cache( ld, timeout, maxmem )
-.ft
-LDAP *ld;
-long timeout;
-long maxmem;
-.LP
-.ft B
-void ldap_disable_cache( ld )
-.ft
-LDAP *ld;
-.LP
-.ft B
-void ldap_destroy_cache( ld )
-.ft
-LDAP *ld;
-.LP
-.ft B
-void ldap_flush_cache( ld )
-.ft
-LDAP *ld;
-.LP
-.ft B
-void ldap_uncache_entry( ld, dn )
-.ft
-LDAP *ld;
-char *dn;
-.LP
-.ft B
-void ldap_uncache_request( ld, msgid )
-.ft
-LDAP *ld;
-int msgid;
-.LP
-.ft B
-void ldap_set_cache_options( ld, opts )
-.ft
-LDAP *ld;
-unsigned long opts;
-.fi
-.SH DESCRIPTION
-.LP
-These routines are used to control the behavior of the
-.B experimental
-client caching of
-.BR ldap_search (3)
-and
-.BR ldap_compare (3)
-operations. By
-default, the cache is disabled and no caching is done. Enabling the
-cache can greatly improve performance and reduce network bandwidth when
-a client DUA makes repeated requests.
-.LP
-.B ldap_enable_cache()
-should be called to turn on local caching or to
-change cache parameters (lifetime of cached requests and memory used).
-The \fIld\fP parameter should be the result of a successful call to
-.BR ldap_open (3).
-The \fItimeout\fP is specified in seconds, and is used to
-decide how long to keep cached requests. The \fImaxmem\fP value is in
-bytes, and is used to set an upper bound on how memory the cache will
-use. You can specify 0 for \fImaxmem\fP to restrict the cache size by
-the \fItimeout\fP only. The first call to ldap_enable_cache creates
-the cache; subsequent calls re-enable the cache and set the timeout and
-memory values.
-.LP
-.B ldap_disable_cache()
-temporarily disables use of the cache (new
-requests are not cached and the cache is not checked when returning
-results). It does not delete the cache contents.
-.LP
-.B ldap_destroy_cache()
-turns off caching and completely removes the cache from memory.
-.LP
-.B ldap_flush_cache()
-deletes the cache contents, but does not effect it in any other way.
-.LP
-.B ldap_uncache_entry()
-removes all requests that make reference to the
-distinguished name \fIdn\fP from the cache. It should be used, for
-example, after doing an
-.BR ldap_modify (3)
-call involving \fIdn\fP.
-.LP
-.B ldap_uncache_request()
-removes the request indicated by the LDAP request
-id \fImsgid\fP from the cache.
-.LP
-.B ldap_set_cache_options()
-is used to change caching behavior. The current supported options are
-.B LDAP_CACHE_OPT_CACHENOERRS
-to suppress caching of any requests that result in an error, and
-.B LDAP_CACHE_OPT_CACHEALLERRS
-to enable caching of all requests. The default behavior is to not
-cache requests that result in errors, except that request that result
-in the error
-.B LDAP_SIZELIMIT_EXCEEDED
-are cached.
-.SH ERRORS
-.B ldap_enable_cache()
-returns 0 upon success, and -1 if it is unable to
-allocate space for the cache. All the other calls are declared as
-void and return nothing.
-.SH SEE ALSO
-.BR ldap (3),
-.BR ldap_search (3),
-.BR ldap_compare (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.