mirror of
https://github.com/samba-team/samba.git
synced 2024-12-28 07:21:54 +03:00
r6967: fixed the new multi-value dn=@ATTRIBUTES so it actually works :-)
this demonstrates that we need a improved test suite as well
(This used to be commit 959c73e93f
)
This commit is contained in:
parent
d516fa53aa
commit
942eb58e61
@ -261,7 +261,7 @@ int ltdb_attribute_flags(struct ldb_module *module, const char *attr_name)
|
||||
{
|
||||
struct ltdb_private *ltdb = module->private_data;
|
||||
const struct ldb_message_element *attr_el;
|
||||
int i, ret=0;
|
||||
int i, j, ret=0;
|
||||
|
||||
if (ltdb->cache->last_attribute.name &&
|
||||
ldb_attr_cmp(ltdb->cache->last_attribute.name, attr_name) == 0) {
|
||||
@ -276,7 +276,6 @@ int ltdb_attribute_flags(struct ldb_module *module, const char *attr_name)
|
||||
attr_el = ldb_msg_find_element(ltdb->cache->attributes, attr_name);
|
||||
|
||||
if (!attr_el) {
|
||||
|
||||
/* check if theres a wildcard attribute */
|
||||
attr_el = ldb_msg_find_element(ltdb->cache->attributes, "*");
|
||||
|
||||
@ -286,8 +285,11 @@ int ltdb_attribute_flags(struct ldb_module *module, const char *attr_name)
|
||||
}
|
||||
|
||||
for (i = 0; i < attr_el->num_values; i++) {
|
||||
if (strcmp(ltdb_valid_attr_flags[i].name, attr_el->values[i].data) == 0) {
|
||||
ret |= ltdb_valid_attr_flags[i].value;
|
||||
for (j=0; ltdb_valid_attr_flags[j].name; j++) {
|
||||
if (strcmp(ltdb_valid_attr_flags[j].name,
|
||||
attr_el->values[i].data) == 0) {
|
||||
ret |= ltdb_valid_attr_flags[j].value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user