ldb: add the VERIFY_NAME control
[metze/samba/wip.git] / lib / ldb / include / ldb.h
index 4220ed096fae6178d0c5c308eb938cced3dcc636..d3a20c5ff8e22c4c3e6bcad586a8ba28717fdc76 100644 (file)
@@ -708,6 +708,15 @@ typedef int (*ldb_qsort_cmp_fn_t) (void *v1, void *v2, void *opaque);
 #define LDB_CONTROL_RELAX_OID "1.3.6.1.4.1.4203.666.5.12"
 #define LDB_CONTROL_RELAX_NAME "relax"
 
+/**
+   OID for the allowing some kind of relax check for attributes with DNs
+
+
+   \sa 3.1.1.3.4.1.16 in [MS-ADTS].pdf
+*/
+#define LDB_CONTROL_VERIFY_NAME_OID "1.2.840.113556.1.4.1338"
+#define LDB_CONTROL_VERIFY_NAME_NAME   "verify_name"
+
 /* Extended operations */
 
 /**
@@ -843,6 +852,12 @@ struct ldb_vlv_resp_control {
        char *contextId;
 };
 
+struct ldb_verify_name_control {
+       int flags;
+       size_t gc_len;
+       char *gc;
+};
+
 struct ldb_control {
        const char *oid;
        int critical;
@@ -1425,8 +1440,6 @@ int ldb_build_extended_req(struct ldb_request **ret_req,
 /**
   call an extended operation
 
-  This function deletes a record from the database.
-
   \param ldb the context associated with the database (from ldb_init())
   \param oid the OID of the extended operation.
   \param data a void pointer a the extended operation specific parameters,