Difference between revisions of "Samba4/LDB/Schema"

 
Line 1: Line 1:
= Schema Syntax =
+
= Structures =
  
struct ldb_schema_syntax {
+
== ldb_schema_syntax ==
    const char *name;
+
 
    ldb_attr_handler_t ldif_read_fn;
+
<pre>
    ldb_attr_handler_t ldif_write_fn;
+
struct ldb_schema_syntax {
    ldb_attr_handler_t canonicalise_fn;
+
    const char *name;
    ldb_attr_comparison_t comparison_fn;
+
    ldb_attr_handler_t ldif_read_fn;
};
+
    ldb_attr_handler_t ldif_write_fn;
 +
    ldb_attr_handler_t canonicalise_fn;
 +
    ldb_attr_comparison_t comparison_fn;
 +
};
 +
</pre>
  
 
Attribute handler structure.
 
Attribute handler structure.
Line 17: Line 21:
 
* comparison_fn: compare two values
 
* comparison_fn: compare two values
  
= Schema Attribute =
+
== ldb_schema_attribute ==
  
struct ldb_schema_attribute {
+
<pre>
    const char *name;
+
struct ldb_schema_attribute {
    unsigned flags;
+
    const char *name;
    const struct ldb_schema_syntax *syntax;
+
    unsigned flags;
};
+
    const struct ldb_schema_syntax *syntax;
 +
};
 +
</pre>
  
 
= Operations =
 
= Operations =

Revision as of 18:29, 24 September 2009

Structures

ldb_schema_syntax

struct ldb_schema_syntax {
    const char *name;
    ldb_attr_handler_t ldif_read_fn;
    ldb_attr_handler_t ldif_write_fn;
    ldb_attr_handler_t canonicalise_fn;
    ldb_attr_comparison_t comparison_fn;
};

Attribute handler structure.

  • name: The attribute name
  • ldif_read_fn: convert from ldif to binary format
  • ldif_write_fn: convert from binary to ldif format
  • canonicalise_fn: canonicalise a value, for use by indexing and dn construction
  • comparison_fn: compare two values

ldb_schema_attribute

struct ldb_schema_attribute {
    const char *name;
    unsigned flags;
    const struct ldb_schema_syntax *syntax;
};

Operations

ldb_schema_attribute_by_name()

const struct ldb_schema_attribute *ldb_schema_attribute_by_name(struct ldb_context *ldb,
    const char *name);