1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-27 03:21:53 +03:00
samba-mirror/source4/lib/ldb/modules
Andrew Bartlett 027583e6de r17525: This is a merge from the Google Summer of Code 2006 project by Martin Kühl
<mkhl@samba.org>.

Martin took over the work done last year by Jelmer, in last year's
SoC.  This was a substanital task, as the the ldb modules API changed
significantly during the past year, with the addition of async calls.

This changeset reimplements and enables the ldb_map ldb module and
adapts the example module and test case, both named samba3sam, to the
implementation.

The ldb_map module supports splitting an ldb database into two parts
(called the "local" and "remote" part) and storing the data in one of
them (the remote database) in a different format while the other acts
as a fallback.
This allows ldb to e.g. store to and load data from a remote LDAP
server and present it according to the Samba4 schema while still
allowing the LDAP to present and modify its data separately.

A complex example of this is the samba3sam module (by Jelmer
Vernooij), which maps data between the samba3 and samba4 schemas.

A simpler example is given by the entryUUID module (by Andrew
Bartlett), which handles some of the differences between AD and
OpenLDAP in operational attributes.  It principally maps objectGUID,
to and from entryUUID elements.  This is also an example of a module
that doesn't use the local backend as fallback storage.

This merge also splits the ldb_map.c file into smaller, more
manageable parts.
(This used to be commit af2bece4d3)
2007-10-10 14:15:33 -05:00
..
asq.c r17514: Simplify the way to set ldb errors and add another 2007-10-10 14:15:31 -05:00
ldb_map_inbound.c r17525: This is a merge from the Google Summer of Code 2006 project by Martin Kühl 2007-10-10 14:15:33 -05:00
ldb_map_outbound.c r17525: This is a merge from the Google Summer of Code 2006 project by Martin Kühl 2007-10-10 14:15:33 -05:00
ldb_map_private.h r17525: This is a merge from the Google Summer of Code 2006 project by Martin Kühl 2007-10-10 14:15:33 -05:00
ldb_map.c r17525: This is a merge from the Google Summer of Code 2006 project by Martin Kühl 2007-10-10 14:15:33 -05:00
ldb_map.h r17525: This is a merge from the Google Summer of Code 2006 project by Martin Kühl 2007-10-10 14:15:33 -05:00
objectclass.c r17514: Simplify the way to set ldb errors and add another 2007-10-10 14:15:31 -05:00
operational.c r17514: Simplify the way to set ldb errors and add another 2007-10-10 14:15:31 -05:00
paged_results.c r17514: Simplify the way to set ldb errors and add another 2007-10-10 14:15:31 -05:00
rdn_name.c r17186: "async" word abuse clean-up part 2 2007-10-10 14:10:17 -05:00
schema.c r16090: Fix standalone build after the rename of enum ldb_request_type in 2007-10-10 14:08:58 -05:00
skel.c r15927: Optimize ldb module traverse while keeping the API intact. 2007-10-10 14:08:41 -05:00
sort.c r17514: Simplify the way to set ldb errors and add another 2007-10-10 14:15:31 -05:00