Plug-in Programmerís Guide
Red Hat Directory Server                                                            

Previous
Contents
Index
Next

Preface


This book describes how to write server plug-ins in order to customize and extend the capabilities of the Red Hat Directory Server (Directory Server).

What You Should Already Know

This book assumes you have this basic background:

Using Directory Server Plug-in APIs

Note the following:

server_root /plugins/slapd/slapi/
server_root /plugins/slapd/slapi/include/slapi-plugin.h
 
server_root /plugins/slapd/slapi/examples/
 
The NSPR API allows compliant applications to use system facilities such as threads, thread synchronization, I/O, interval timing, atomic operations, and several other low-level services in a platform-independent manner.
server_root /plugins/slapd/slapi/include/slapi-plugin-compat4.h
 
Table 0-1 Deprecated Functions and Their Suggested Replacements  
Deprecated Function
Suggested Replacement Function
The following functions that deal with bervals are deprecated and their use is not recommended. For each deprecated function, you will find in slapi-plugin.h a corresponding function with an _sv extension that uses Slapi_Values instead of bervals. The new functions are more efficient than the old ones.
slapi_entry_attr_merge()
slapi_entry_add_values()
slapi_entry_delete_values()
slapi_entry_attr_replace()
slapi_attr_get_values()
slapi_attr_get_oid()
slapi_pw_find()
slapi_call_syntax_values2keys()
slapi_call_syntax_assertion2keys_ava()
slapi_call_syntax_assertion2keys_sub()
slapi_entry_attr_hasvalue()
The following internal-operation calls are deprecated. The new internal operation functions that are defined in slapi-plugin.h take a Slapi_PBlock for extensibility and support the new plug-in configuration capabilities.
slapi_search_internal_callback()
slapi_search_internal()
slapi_modify_internal()
slapi_add_internal()
slapi_delete_internal()
slapi_modrdn_internal()
The following three functions are not multi-thread safe; they return a pointer to unprotected data. Use the new functions in slapi-plugin.h that end in _copy() instead.
slapi_get_supported_controls()
slapi_get_supported_extended_ops()
slapi_get_supported_saslmechanism()

Document Conventions

The Directory Server runs on a number of different UNIX platforms; the information here applies to all versions.

This book uses Uniform Resource Locators (URLs) of the form

http://server.domain/path/file .html
 

In these URLs, server represents the name of the server on which you run your application (such as research1 or www), domain represents your Internet domain name (such as example.com), path represents the directory structure on the server, and file .html represents an individual filename.

If your server has Secure Sockets Layer (SSL) enabled, you would use https instead of http in the URL.

This book uses the following font conventions:

Where to Find Directory Server Information

This book explains how to write your own server plug-ins to customize the Directory Server. You can write plug-ins that validate data before the data is stored in the directory, that notify users when data has changed, or that replace the standard database in the Directory Server with your own database.

The document set for Directory Server also contains the following guides:

For a list of documentation installed with Directory Server, open the server_root /manual/en/slapd/index.htm file, where server_root is the directory in which you installed Directory Server.

For the latest information about Directory Server, including current release notes, complete product documentation, technical notes, and deployment information, check this site:

http://www.redhat.com/docs/manuals/dir-server/
 

For a list of LDAP standards-related documents, check this site:

http://www.mozilla.org/directory/standards.html
 



Previous
Contents
Index
Next

© 2001 Sun Microsystems, Inc. Used by permission. © 2005 Red Hat, Inc. All rights reserved.
Read the Full Copyright and Third-Party Acknowledgments.

last updated May 26, 2005