]> git.sur5r.net Git - openldap/blobdiff - doc/man/man5/slapd.plugin.5
Further details as to why slapcat(8) output cannot be used
[openldap] / doc / man / man5 / slapd.plugin.5
index fae3fd4a10f5be173fd61c00c04473e989e4122e..8e7b384849713f6050dbb76b90fac3af5ec80524 100644 (file)
@@ -1,5 +1,5 @@
 .TH SLAPD.PLUGIN 5 "RELEASEDATE" "OpenLDAP LDVERSION"
-.\" Copyright 2002 The OpenLDAP Foundation All Rights Reserved.
+.\" Copyright 2002-2006 The OpenLDAP Foundation All Rights Reserved.
 .\" Copying restrictions apply.  See COPYRIGHT/LICENSE.
 .SH NAME
 slapd.plugin \- plugin configuration for slapd, the stand-alone LDAP daemon
@@ -42,11 +42,18 @@ is as follows:
 .LP
 If slapd is compiled with \fI--enable-slapi\fP, support for plugins
 according to \fINetscape's Directory Server Plug-Ins\fP.
-Version 4.0 of the API is currently implemented.
+Version 4 of the API is currently implemented, with some extensions
+from version 5.
 .LP
-Database specific data may contain plugin information.
+Both global and database specific data may contain plugin information.
+Plugins associated with a specific database are called before global
+plugins.
+This manpage details the
+.BR slapd (8)
+configuration statements that affect the loading of SLAPI \fIplugins\fP.
 .LP
 Arguments that should be replaced by actual text are shown in brackets <>.
+.LP
 The structure of the plugin directives is
 .TP
 .B plugin "<type> <lib_path> <init_function> [<arguments>]"
@@ -59,10 +66,13 @@ can be one of
 that is executed before processing the operation for the specified
 database, 
 .BR postoperation ,
-that is execured after the operation for the specified database
-has been processed, or
-.BR extendedop .
-The latter is used when executing an extended operation [FIXME].
+that is executed after the operation for the specified database
+has been processed,
+.BR extendedop ,
+that is used when executing an extended operation, or
+.BR object .
+The latter is used for miscellaneous types such as ACL, computed
+attribute and search filter rewriter plugins.
 .LP
 The
 .BR <libpath>
@@ -75,10 +85,31 @@ The
 argument specifies what symbol must be called when the plugin is first
 loaded.
 This function should register the functions provided by the plugin
-for the desired operations.
+for the desired operations. It should be noted that it is this 
+init function, not the plugin type specified as the first argument,
+that determines when and for what operations the plugin will be invoked.
 The optional
 .BR <arguments>
 list is passed to the init function.
+.TP
+.B pluginlog <file>
+Specify an alternative path for the plugin log file (default is
+LOCALSTATEDIR/error).
+.TP
+.B modulepath <pathspec>
+This statement sets the module load path for dynamically loadable 
+backends, as described in
+.BR slapd.conf (5); 
+however, since both the dynamically loadable backends 
+and the SLAPI plugins use the same underlying library (libtool's ltdl)
+its value also affects the plugin search path.
+In general the search path is made of colon-separated paths; usually
+the user-defined path is searched first; then the value of the
+\fILTDL_LIBRARY_PATH\fP environment variable, if defined, is used;
+finally, the system-specific dynamic load path is attempted (e.g. on
+Linux the value of the environment variable \fILD_LIBRARY_PATH\fP).
+Please carefully read the documentation of ltdl because its behavior 
+is very platform dependent.
 .SH FILES
 .TP
 ETCDIR/slapd.conf