From aa7a02d45fefad3640f273b1d3bfe535a1e6b88c Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Sat, 13 May 2006 21:08:37 +0000 Subject: r15582: Commit some forgotten stuff that have been setting on my private tree fro long (This used to be commit 7c050b541e98cd442a0c9ed0ddadb3e573cd1304) --- source4/lib/ldb/common/ldb_msg.c | 17 +++++++++++++++++ source4/lib/ldb/include/ldb.h | 8 ++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) (limited to 'source4/lib') diff --git a/source4/lib/ldb/common/ldb_msg.c b/source4/lib/ldb/common/ldb_msg.c index f76d7e8dd9..b09f2ce6ed 100644 --- a/source4/lib/ldb/common/ldb_msg.c +++ b/source4/lib/ldb/common/ldb_msg.c @@ -724,3 +724,20 @@ void ldb_dump_results(struct ldb_context *ldb, struct ldb_result *result, FILE * } } +int ldb_msg_check_string_attribute(const struct ldb_message *msg, const char *name, const char *value) +{ + struct ldb_message_element *el; + struct ldb_val val; + + el = ldb_msg_find_element(msg, name); + if (el == NULL) + return 0; + + val.data = discard_const(value); + val.length = strlen(value) + 1; + + if (ldb_msg_find_val(el, &val)) + return 1; + + return 0; +} diff --git a/source4/lib/ldb/include/ldb.h b/source4/lib/ldb/include/ldb.h index af3aed24c6..866b062d06 100644 --- a/source4/lib/ldb/include/ldb.h +++ b/source4/lib/ldb/include/ldb.h @@ -625,11 +625,11 @@ struct ldb_search { }; struct ldb_add { - const struct ldb_message *message; + struct ldb_message *message; }; struct ldb_modify { - const struct ldb_message *message; + struct ldb_message *message; }; struct ldb_delete { @@ -1178,6 +1178,10 @@ struct ldb_message *ldb_msg_diff(struct ldb_context *ldb, struct ldb_message *msg1, struct ldb_message *msg2); +int ldb_msg_check_string_attribute(const struct ldb_message *msg, + const char *name, + const char *value); + /** Integrity check an ldb_message -- cgit