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