summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/ldb_tdb/ldb_cache.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2005-10-12 06:10:23 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:39:41 -0500
commita599edf04cbdeef9014923ba0d3713b8ff84f266 (patch)
tree3754385df962fd26fe8bd0e16f3c3b706a385c24 /source4/lib/ldb/ldb_tdb/ldb_cache.c
parent655138602c75925a6d655841ee80cf5346a9a399 (diff)
downloadsamba-a599edf04cbdeef9014923ba0d3713b8ff84f266.tar.gz
samba-a599edf04cbdeef9014923ba0d3713b8ff84f266.tar.bz2
samba-a599edf04cbdeef9014923ba0d3713b8ff84f266.zip
r10913: This patch isn't as big as it looks ...
most of the changes are fixes to make all the ldb code compile without warnings on gcc4. Unfortunately That required a lot of casts :-( I have also added the start of an 'operational' module, which will replace the timestamp module, plus add support for some other operational attributes In ldb_msg_*() I added some new utility functions to make the operational module sane, and remove the 'ldb' argument from the ldb_msg_add_*() functions. That argument was only needed back in the early days of ldb when we didn't use the hierarchical talloc and thus needed a place to get the allocation function from. Now its just a pain to pass around everywhere. Also added a ldb_debug_set() function that calls ldb_debug() plus sets the result using ldb_set_errstring(). That saves on some awkward coding in a few places. (This used to be commit f6818daecca95760c12f79fd307770cbe3346f57)
Diffstat (limited to 'source4/lib/ldb/ldb_tdb/ldb_cache.c')
-rw-r--r--source4/lib/ldb/ldb_tdb/ldb_cache.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/source4/lib/ldb/ldb_tdb/ldb_cache.c b/source4/lib/ldb/ldb_tdb/ldb_cache.c
index 5e40b8fd3f..01f9338009 100644
--- a/source4/lib/ldb/ldb_tdb/ldb_cache.c
+++ b/source4/lib/ldb/ldb_tdb/ldb_cache.c
@@ -95,7 +95,7 @@ static int ltdb_attributes_flags(struct ldb_message_element *el, unsigned *v)
int j;
for (j=0;ltdb_valid_attr_flags[j].name;j++) {
if (strcmp(ltdb_valid_attr_flags[j].name,
- el->values[i].data) == 0) {
+ (char *)el->values[i].data) == 0) {
value |= ltdb_valid_attr_flags[j].value;
break;
}
@@ -197,7 +197,8 @@ static int ltdb_subclasses_load(struct ldb_module *module)
for (i=0;i<msg->num_elements;i++) {
struct ldb_message_element *el = &msg->elements[i];
for (j=0;j<el->num_values;j++) {
- if (ldb_subclass_add(module->ldb, el->name, el->values[j].data) != 0) {
+ if (ldb_subclass_add(module->ldb, el->name,
+ (char *)el->values[j].data) != 0) {
goto failed;
}
}
@@ -268,7 +269,7 @@ static int ltdb_baseinfo_init(struct ldb_module *module)
el.values = &val;
el.num_values = 1;
el.flags = 0;
- val.data = talloc_strdup(msg, initial_sequence_number);
+ val.data = (uint8_t *)talloc_strdup(msg, initial_sequence_number);
if (!val.data) {
goto failed;
}
@@ -446,7 +447,7 @@ int ltdb_increase_sequence_number(struct ldb_module *module)
el.values = &val;
el.num_values = 1;
el.flags = LDB_FLAG_MOD_REPLACE;
- val.data = s;
+ val.data = (uint8_t *)s;
val.length = strlen(s);
ret = ltdb_modify_internal(module, msg);
@@ -495,7 +496,7 @@ int ltdb_attribute_flags(struct ldb_module *module, const char *attr_name)
for (i = 0; i < attr_el->num_values; i++) {
for (j=0; ltdb_valid_attr_flags[j].name; j++) {
if (strcmp(ltdb_valid_attr_flags[j].name,
- attr_el->values[i].data) == 0) {
+ (char *)attr_el->values[i].data) == 0) {
ret |= ltdb_valid_attr_flags[j].value;
}
}
@@ -514,7 +515,7 @@ int ltdb_check_at_attributes_values(const struct ldb_val *value)
int i;
for (i = 0; ltdb_valid_attr_flags[i].name != NULL; i++) {
- if ((strcmp(ltdb_valid_attr_flags[i].name, value->data) == 0)) {
+ if ((strcmp(ltdb_valid_attr_flags[i].name, (char *)value->data) == 0)) {
return 0;
}
}