s4:ldb: add infrastructure for extended dn handlers
commitaa3eab70d5f9415dca7ccc37d87e9a0ca82855c7
authorAndrew Bartlett <abartlet@samba.org>
Tue, 16 Dec 2008 07:19:07 +0000 (16 08:19 +0100)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 17 Dec 2008 01:29:23 +0000 (17 12:29 +1100)
tree0eca64a6f849c9d803fe57ec1bec2dce50ec83ea
parent8ce5640fbfd48debc3e6b3f27e07d1a0d79bd2b4
s4:ldb: add infrastructure for extended dn handlers

This introduces a new set of pluggable syntax, for use on the
extended DN, and uses them when parsing the DN.

If the DN appears to be in the extended form, we no longer return the
full DN 'as is', but only return the normal part from
ldb_dn_get_linearized().

When validating/parsing the DN we validate not only the format of the
DN, but also the contents of the GUID or SID (to ensure they are
plausable).

We also have functions to set and get the extended components on the DN.

For now, extended_dn_get_linearized() returns a newly constructed and
allocated string each time.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
source4/lib/ldb/common/ldb_attributes.c
source4/lib/ldb/common/ldb_dn.c
source4/lib/ldb/include/ldb.h
source4/lib/ldb/include/ldb_private.h