53.8. Information about the Plug-in

The parameters listed below specify information about the plug-in that is available to all plug-in functions defined in the current library. These parameters are available for all types of plug-ins.
Parameter ID Data Type Description
SLAPI_PLUGIN void * Pointer to the internal server representation of this plug-in.
SLAPI_PLUGIN_PRIVATE void * Private data that you want passed to your plug-in functions.
SLAPI_PLUGIN_TYPE int Specifies the type of plug-in function (refer to Section 53.8.1, “Types of Plug-ins”)
SLAPI_PLUGIN_ARGV char ** NULL-terminated array of command-line arguments specified for the plugin directive in the server configuration file.
SLAPI_PLUGIN_ARGC int Number of command-line arguments specified for the plugin directive in the server configuration file.
SLAPI_PLUGIN_VERSION char * Specifies the version of the plug-in function (refer to Section 53.8.2, “Version Information”).
SLAPI_PLUGIN_OPRETURN int Specifies the return value of the LDAP operation that has just been processed.
SLAPI_PLUGIN_OBJECT void * Reserved for internal use only; used with filter processing.
SLAPI_PLUGIN_DESTROY_FN void * Reserved for internal use only; used with filter processing.
SLAPI_PLUGIN_DESCRIPTION char * Provides a description of this plug-in function.
SLAPI_PLUGIN_IDENTITY char * Identifies this plug-in function.

53.8.1. Types of Plug-ins

The SLAPI_PLUGIN_TYPE parameter can have one of the following values, which identifies the type of the current plug-in:
Defined Constant Description
SLAPI_PLUGIN_DATABASE Deprecated.
SLAPI_PLUGIN_EXTENDEDOP Extended operation plug-in.
SLAPI_PLUGIN_BETXNEXTENDEDOP Transactional extended operation plugin.
SLAPI_PLUGIN_DATABASE Pre-operation/data validation plug-in.
SLAPI_PLUGIN_POSTOPERATION Post-operation/data notification plug-in.
SLAPI_PLUGIN_MATCHINGRULE Matching rule plug-in.
SLAPI_PLUGIN_SYNTAX Syntax plug-in.
SLAPI_PLUGIN_ACL Access control plug-in.
SLAPI_PLUG_BEPREOPERATION Database pre-operation plug-in.
SLAPI_PLUGIN_BEPOSTOPERATION Database post-operation plug-in.
SLAPI_PLUGIN_PWD_STORAGE_SCHEME Password storage scheme plug-in.
SLAPI_PLUGIN_REVER_PWD_STORAGE_SCHEME Reverse password storage scheme plug-in.
SLAPI_PLUGIN_VATTR_SP Virtual attribute service provider plug-in.
SLAPI_PLUGIN_INDEX Indexing plug-in.
SLAPI_PLUGIN_TYPE_OBJECT Object type plug-in.
SLAPI_PLUGIN_LDBM_ENTRY_FETCH_STORE Plug-in that fetches and stores an entry from the default backend database (ldbm).

53.8.2. Version Information

To set the value of the SLAPI_PLUGIN_VERSION parameter, you can specify one of the following values:
Defined Constant Description
SLAPI_PLUGIN_CURRENT_VERSION The current version of the Directory Server plug-in.
SLAPI_PLUGIN_VERSION_01 Version 1 of the plug-in interface, which is supported by the Directory Server 3.x and subsequent releases (including 4.0).
SLAPI_PLUGIN_VERSION_02 Version 2 of the plug-in interface, which is supported by the Directory Server 4.x release but not by previous releases.
SLAPI_PLUGIN_VERSION_03 Version 3 of the plug-in interface, which is supported by current releases of Directory Server but not by previous releases.