Home | History | Annotate | Line # | Download | only in man
      1  1.5      tron .lf 1 stdin
      2  1.7  christos .TH SLAPD.PLUGIN 5 "2025/05/22" "OpenLDAP 2.6.10"
      3  1.7  christos .\" Copyright 2002-2024 The OpenLDAP Foundation All Rights Reserved.
      4  1.1     lukem .\" Copying restrictions apply.  See COPYRIGHT/LICENSE.
      5  1.1     lukem .SH NAME
      6  1.1     lukem slapd.plugin \- plugin configuration for slapd, the stand-alone LDAP daemon
      7  1.1     lukem .SH SYNOPSIS
      8  1.1     lukem /etc/openldap/slapd.conf
      9  1.1     lukem .SH DESCRIPTION
     10  1.1     lukem The 
     11  1.1     lukem .BR slapd.conf (5)
     12  1.1     lukem file contains configuration information for the
     13  1.1     lukem .BR slapd (8)
     14  1.1     lukem daemon. This configuration file is also used by the SLAPD tools
     15  1.1     lukem .BR slapadd (8),
     16  1.1     lukem .BR slapcat (8),
     17  1.7  christos .BR slapmodify (8),
     18  1.1     lukem and
     19  1.1     lukem .BR slapindex (8).
     20  1.1     lukem .LP
     21  1.1     lukem The
     22  1.1     lukem .B slapd.conf
     23  1.1     lukem file consists of a series of global configuration options that apply to
     24  1.1     lukem .B slapd
     25  1.1     lukem as a whole (including all backends), followed by zero or more database
     26  1.1     lukem backend definitions that contain information specific to a backend
     27  1.1     lukem instance.
     28  1.1     lukem .LP
     29  1.1     lukem The general format of
     30  1.1     lukem .B slapd.conf
     31  1.1     lukem is as follows:
     32  1.1     lukem .LP
     33  1.1     lukem .nf
     34  1.1     lukem     # comment - these options apply to every database
     35  1.1     lukem     <global configuration options>
     36  1.1     lukem     # first database definition & configuration options
     37  1.1     lukem     database    <backend 1 type>
     38  1.1     lukem     <configuration options specific to backend 1>
     39  1.1     lukem     # subsequent database definitions & configuration options
     40  1.1     lukem     ...
     41  1.1     lukem .fi
     42  1.1     lukem .LP
     43  1.3     lukem If slapd is compiled with \fI\-\-enable\-slapi\fP, support for plugins
     44  1.1     lukem according to \fINetscape's Directory Server Plug-Ins\fP.
     45  1.1     lukem Version 4 of the API is currently implemented, with some extensions
     46  1.1     lukem from version 5.
     47  1.1     lukem .LP
     48  1.1     lukem Both global and database specific data may contain plugin information.
     49  1.1     lukem Plugins associated with a specific database are called before global
     50  1.1     lukem plugins.
     51  1.1     lukem This manpage details the
     52  1.1     lukem .BR slapd (8)
     53  1.1     lukem configuration statements that affect the loading of SLAPI \fIplugins\fP.
     54  1.1     lukem .LP
     55  1.1     lukem Arguments that should be replaced by actual text are shown in brackets <>.
     56  1.1     lukem .LP
     57  1.1     lukem The structure of the plugin directives is
     58  1.1     lukem .TP
     59  1.1     lukem .B plugin "<type> <lib_path> <init_function> [<arguments>]"
     60  1.1     lukem Load a plugin of the specified type for the current database.
     61  1.1     lukem .LP
     62  1.1     lukem The 
     63  1.1     lukem .BR <type>
     64  1.1     lukem can be one of
     65  1.1     lukem .BR preoperation ,
     66  1.1     lukem that is executed before processing the operation for the specified
     67  1.1     lukem database, 
     68  1.1     lukem .BR postoperation ,
     69  1.1     lukem that is executed after the operation for the specified database
     70  1.1     lukem has been processed,
     71  1.1     lukem .BR extendedop ,
     72  1.1     lukem that is used when executing an extended operation, or
     73  1.1     lukem .BR object .
     74  1.1     lukem The latter is used for miscellaneous types such as ACL, computed
     75  1.1     lukem attribute and search filter rewriter plugins.
     76  1.1     lukem .LP
     77  1.1     lukem The
     78  1.1     lukem .BR <libpath>
     79  1.1     lukem argument specifies the path to the plugin loadable object; if a relative
     80  1.1     lukem path is given, the object is looked for according to the underlying
     81  1.1     lukem dynamic loading package (libtool's ltdl is used).
     82  1.1     lukem .LP
     83  1.1     lukem The 
     84  1.1     lukem .BR <init_function>
     85  1.1     lukem argument specifies what symbol must be called when the plugin is first
     86  1.1     lukem loaded.
     87  1.1     lukem This function should register the functions provided by the plugin
     88  1.1     lukem for the desired operations. It should be noted that it is this 
     89  1.1     lukem init function, not the plugin type specified as the first argument,
     90  1.1     lukem that determines when and for what operations the plugin will be invoked.
     91  1.1     lukem The optional
     92  1.1     lukem .BR <arguments>
     93  1.1     lukem list is passed to the init function.
     94  1.1     lukem .TP
     95  1.1     lukem .B pluginlog <file>
     96  1.1     lukem Specify an alternative path for the plugin log file (default is
     97  1.1     lukem /var/openldap/errors).
     98  1.1     lukem .TP
     99  1.1     lukem .B modulepath <pathspec>
    100  1.1     lukem This statement sets the module load path for dynamically loadable 
    101  1.1     lukem backends, as described in
    102  1.1     lukem .BR slapd.conf (5); 
    103  1.1     lukem however, since both the dynamically loadable backends 
    104  1.1     lukem and the SLAPI plugins use the same underlying library (libtool's ltdl)
    105  1.1     lukem its value also affects the plugin search path.
    106  1.1     lukem In general the search path is made of colon-separated paths; usually
    107  1.1     lukem the user-defined path is searched first; then the value of the
    108  1.1     lukem \fILTDL_LIBRARY_PATH\fP environment variable, if defined, is used;
    109  1.1     lukem finally, the system-specific dynamic load path is attempted (e.g. on
    110  1.1     lukem Linux the value of the environment variable \fILD_LIBRARY_PATH\fP).
    111  1.1     lukem Please carefully read the documentation of ltdl because its behavior 
    112  1.1     lukem is very platform dependent.
    113  1.1     lukem .SH FILES
    114  1.1     lukem .TP
    115  1.1     lukem /etc/openldap/slapd.conf
    116  1.1     lukem default slapd configuration file
    117  1.1     lukem .TP
    118  1.1     lukem /var/openldap/errors
    119  1.1     lukem default plugin log file
    120  1.1     lukem .SH SEE ALSO
    121  1.1     lukem .BR slapd (8),
    122  1.1     lukem .LP
    123  1.1     lukem "OpenLDAP Administrator's Guide" (http://www.OpenLDAP.org/doc/admin/)
    124  1.1     lukem .SH ACKNOWLEDGEMENTS
    125  1.5      tron .lf 1 ./../Project
    126  1.1     lukem .\" Shared Project Acknowledgement Text
    127  1.1     lukem .B "OpenLDAP Software"
    128  1.1     lukem is developed and maintained by The OpenLDAP Project <http://www.openldap.org/>.
    129  1.1     lukem .B "OpenLDAP Software"
    130  1.6  christos is derived from the University of Michigan LDAP 3.3 Release.  
    131  1.7  christos .lf 125 stdin
    132