Use the dsconf(1M) command to add information about the plug-in to the server configuration.
Configure the server to log plug-in messages:
$ dsconf set-log-prop -h localhost -p 1389 error level:err-plugins |
Configure the server to load the plug-in:
$ dsconf create-plugin -h localhost -p 1389 \ -H lib-path -F hello_init -Y object "Hello World" $ dsconf set-plugin-prop "Hello World" feature:"Hello, World" version:6.0 vendor:"Sun Microsystems, Inc." desc:"My first plug-in" $ dsconf enable-plugin -h localhost -p 1389 "Hello World" Directory Server needs to be restarted for changes to take effect |
Here, lib-path must correspond to the absolute path to the plug-in library, such as /local/myplugins/examples/libtest-plugin.so. Directory Server requires an absolute path, not a relative path. Before setting lib-path on a 64–bit system, read Searching Plug-In Libraries.
Plug-ins delivered with Directory Server have signatures, which are stored as ds-pluginSignature attribute values. Plug-ins also have digests, which are stored as ds-pluginDigest attribute values. The values allow you to differentiate plug-ins that are delivered with Directory Server from custom plug-ins.
After changing the Directory Server configuration, you must restart Directory Server for the server to register the plug-in. Use the dsadm(1M) command.
For example, to restart a server instance in /local/ds/, type the following:
$ dsadm restart /local/ds Waiting for server to stop... Server stopped Server started: pid=4362
After Directory Server has started, search the error log, instance-path/logs/errors, for Hello, World! You should find an entry similar to the following line, which is wrapped for the printed page:
[02/Jan/2006:16:56:07 +0100] - INFORMATION - hello() in My first plug-in - conn=-1 op=-1 msgId=-1 - Hello, World!
At this point, reset the log level to the default to avoid logging unnecessary messages:
$ dsconf set-log-prop -h localhost -p 1389 error level:default |