diff options
author | Nalin Dahyabhai <nalin.dahyabhai@pobox.com> | 2008-12-03 18:33:27 -0500 |
---|---|---|
committer | Nalin Dahyabhai <nalin.dahyabhai@pobox.com> | 2008-12-03 18:33:27 -0500 |
commit | 166207d08e15be79452dcf2adc0258924b7a9af7 (patch) | |
tree | 251a041213d176273fcf1ab5e939bda44afb006d /src | |
parent | 5f0bf222e0e11fa3265b02a993653ebd400018c3 (diff) | |
download | slapi-nis-166207d08e15be79452dcf2adc0258924b7a9af7.tar.gz slapi-nis-166207d08e15be79452dcf2adc0258924b7a9af7.tar.xz slapi-nis-166207d08e15be79452dcf2adc0258924b7a9af7.zip |
- fix a logic error when determining if an entry which contains an
attrribute used in %referred() needs other things to be updated
Diffstat (limited to 'src')
-rw-r--r-- | src/back-shr.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/back-shr.c b/src/back-shr.c index 48a4117..7725cc5 100644 --- a/src/back-shr.c +++ b/src/back-shr.c @@ -812,7 +812,8 @@ backend_shr_update_references_cb(const char *group, const char *set, } n_ref_attrs = i; if (n_ref_attrs > 0) { - /* Build the search filter. */ + /* Build the search filter: entries in this map which refer to + * this entry. */ filter = backend_build_filter(state, slapi_entry_get_sdn(cbdata->e), set_data->entry_filter, @@ -854,9 +855,9 @@ backend_shr_update_references_cb(const char *group, const char *set, inref_attrs = set_data->inref_attrs; for (i = 0; (inref_attrs != NULL) && (inref_attrs[i] != NULL); i++) { - /* We're only processing inref attributes for this map. */ - if ((strcmp(inref_attrs[i]->group, group) != 0) || - (strcmp(inref_attrs[i]->set, set) != 0)) { + /* We're only processing inref attributes for other maps. */ + if ((strcmp(inref_attrs[i]->group, group) == 0) && + (strcmp(inref_attrs[i]->set, set) == 0)) { continue; } /* Extract the named attribute from the entry. */ |