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
SYNOPSIS
#include <ldap.h>
ldap_enable_cache( ld, timeout, maxmem )
LDAP *ld;
long timeout;
long maxmem;
void ldap_disable_cache( ld )
LDAP *ld;
void ldap_destroy_cache( ld )
LDAP *ld;
void ldap_flush_cache( ld )
LDAP *ld;
void ldap_uncache_entry( ld, dn )
LDAP *ld;
char *dn;
void ldap_uncache_request( ld, msgid )
LDAP *ld;
int msgid;
void ldap_set_cache_options( ld, opts )
LDAP *ld;
unsigned long opts;
DESCRIPTION
These routines are used to control the behavior of client
caching of ldap_search(3) and 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.
ldap_enable_cache() should be called to turn on local
caching or to change cache parameters (lifetime of cached
requests and memory used). The ld parameter should be the
result of a successful call to ldap_open(3). The timeout
is specified in seconds, and is used to decide how long to
keep cached requests. The maxmem value is in bytes, and
is used to set an upper bound on how memory the cache will
use. You can specify 0 for maxmem to restrict the cache
size by the timeout only. The first call to
ldap_enable_cache creates the cache; subsequent calls re-
enable the cache and set the timeout and memory values.
(new requests are not cached and the cache is not checked
when returning results). It does not delete the cache
contents.
ldap_destroy_cache() turns off caching and completely
removes the cache from memory.
ldap_flush_cache() deletes the cache contents, but does
not effect it in any other way.
ldap_uncache_entry() removes all requests that make refer
ence to the distinguished name dn from the cache. It
should be used, for example, after doing an ldap_modify(3)
call involving dn.
ldap_uncache_request() removes the request indicated by
the LDAP request id msgid from the cache.
ldap_set_cache_options() is used to change caching behav
ior. The current supported options are
LDAP_CACHE_OPT_CACHENOERRS to suppress caching of any
requests that result in an error, and
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 LDAP_SIZELIMIT_EXCEEDED are cached.
ERRORS
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.
SEE ALSO
ldap(3), ldap_search(3), ldap_compare(3)
ACKNOWLEDGEMENTS
OpenLDAP is developed and maintained by The OpenLDAP Pro
ject (http://www.openldap.org/). OpenLDAP is derived from
University of Michigan LDAP 3.3 Release.
Man(1) output converted with
man2html