This directory contains a slapd overlay, usn, that extends slapd
to maintain the usnCreated and usnChanged operational attributes
normally used by Microsoft ActiveDirectory.

To use the overlay, add:

	moduleload <path to>usn.so
	...

	database mdb
	...
	overlay usn

to your slapd configuration file. The schema definitions for the
two USN attributes are hardcoded in this overlay.

Use Makefile to compile this plugin or use a command line similar to:

	gcc -c -I ../../include/ -I ../../servers/slapd -DSLAPD_OVER_USN=SLAPD_MOD_DYNAMIC usn.c
	gcc -shared -o usn.so usn.o

This overlay is only set up to be built as a dynamically loaded module.
On most platforms, in order for the module to be usable, all of the 
library dependencies must also be available as shared libraries.

If you need to build the overlay statically, you will have to move it into the
slapd/overlays directory and edit the Makefile and overlays.c to reference
it. You will also have to define SLAPD_OVER_USN to SLAPD_MOD_STATIC,
and add the relevant libraries to the main slapd link command.

---
This work is part of OpenLDAP Software <http://www.openldap.org/>.

Copyright 2007-2026 The OpenLDAP Foundation.
Portions Copyright 2007 Howard Chu, Symas Corp. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted only as authorized by the OpenLDAP
Public License.

A copy of this license is available in the file LICENSE in the
top-level directory of the distribution or, alternatively, at
<http://www.OpenLDAP.org/license.html>.

