summaryrefslogtreecommitdiff
path: root/source4/dsdb/samdb/samdb.h
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2008-12-16 09:21:55 +0100
committerAndrew Bartlett <abartlet@samba.org>2008-12-17 12:29:28 +1100
commit1f28541a241d2dc4c5460344f817d56182a672ce (patch)
tree33dcbea037d3183dd87d3e9410061fbeb00e8a13 /source4/dsdb/samdb/samdb.h
parent911cf5d62569e77e9f490f28e776b5b47c81e05b (diff)
downloadsamba-1f28541a241d2dc4c5460344f817d56182a672ce.tar.gz
samba-1f28541a241d2dc4c5460344f817d56182a672ce.tar.bz2
samba-1f28541a241d2dc4c5460344f817d56182a672ce.zip
s4:dsdb: split extended_dn into extended_dn_in, extended_dn_out and extended_dn_store.
By splitting the module, the extended_dn_in and extended_dn_store moudles can use extended_dn_out to actually get the extended DN. This avoids code duplication. The extended_dn_out module also contains a client implementation of the OpenLDAP dereference control (draft-masarati-ldap-deref-00). This also introduces a new control 'DSDB_CONTROL_DN_STORAGE_FORMAT_OID' to ask the extended_dn_out module to return whatever the 'storage format' is. This allows us to work with both OpenLDAP (which performs a dereference at run time) and LDB (which stores the GUID and SID on disk). Signed-off-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'source4/dsdb/samdb/samdb.h')
-rw-r--r--source4/dsdb/samdb/samdb.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/source4/dsdb/samdb/samdb.h b/source4/dsdb/samdb/samdb.h
index 570221ee25..efc467865c 100644
--- a/source4/dsdb/samdb/samdb.h
+++ b/source4/dsdb/samdb/samdb.h
@@ -59,6 +59,11 @@ struct dsdb_control_current_partition {
#define DSDB_CONTROL_REPLICATED_UPDATE_OID "1.3.6.1.4.1.7165.4.3.3"
/* DSDB_CONTROL_REPLICATED_UPDATE_OID has NULL data */
+#define DSDB_CONTROL_DN_STORAGE_FORMAT_OID "1.3.6.1.4.1.7165.4.3.4"
+/* DSDB_CONTROL_DN_STORAGE_FORMAT_OID has NULL data and behaves very
+ * much like LDB_CONTROL_EXTENDED_DN_OID when the DB stores an
+ * extended DN, and otherwise returns normal DNs */
+
#define DSDB_EXTENDED_REPLICATED_OBJECTS_OID "1.3.6.1.4.1.7165.4.4.1"
struct dsdb_extended_replicated_object {
struct ldb_message *msg;