summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/include/ldb.h
diff options
context:
space:
mode:
Diffstat (limited to 'source4/lib/ldb/include/ldb.h')
-rw-r--r--source4/lib/ldb/include/ldb.h25
1 files changed, 15 insertions, 10 deletions
diff --git a/source4/lib/ldb/include/ldb.h b/source4/lib/ldb/include/ldb.h
index 485e2bc730..6670089902 100644
--- a/source4/lib/ldb/include/ldb.h
+++ b/source4/lib/ldb/include/ldb.h
@@ -154,20 +154,21 @@ struct ldb_debug_ops {
/* structues for ldb_parse_tree handling code */
-enum ldb_parse_op {LDB_OP_SIMPLE=1, LDB_OP_EXTENDED=2,
- LDB_OP_SUBSTRING=3, LDB_OP_PRESENT=4,
- LDB_OP_AND='&', LDB_OP_OR='|', LDB_OP_NOT='!'};
+enum ldb_parse_op { LDB_OP_AND=1, LDB_OP_OR=2, LDB_OP_NOT=3,
+ LDB_OP_EQUALITY=4, LDB_OP_SUBSTRING=5,
+ LDB_OP_GREATER=6, LDB_OP_LESS=7, LDB_OP_PRESENT=8,
+ LDB_OP_APPROX=9, LDB_OP_EXTENDED=10 };
struct ldb_parse_tree {
enum ldb_parse_op operation;
union {
struct {
- char *attr;
- struct ldb_val value;
- } simple;
+ struct ldb_parse_tree *child;
+ } isnot;
struct {
char *attr;
- } present;
+ struct ldb_val value;
+ } equality;
struct {
char *attr;
int start_with_wildcard;
@@ -176,6 +177,13 @@ struct ldb_parse_tree {
} substring;
struct {
char *attr;
+ } present;
+ struct {
+ char *attr;
+ struct ldb_val value;
+ } comparison;
+ struct {
+ char *attr;
int dnAttributes;
char *rule_id;
struct ldb_val value;
@@ -184,9 +192,6 @@ struct ldb_parse_tree {
unsigned int num_elements;
struct ldb_parse_tree **elements;
} list;
- struct {
- struct ldb_parse_tree *child;
- } isnot;
} u;
};