summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorNalin Dahyabhai <nalin@redhat.com>2013-04-04 13:25:29 -0400
committerNalin Dahyabhai <nalin@redhat.com>2013-04-04 13:25:29 -0400
commit4f13ba5eb7712a831de2e3e3bb1b398a8d30387f (patch)
tree7adc8b091bf511a293692987e3ab08cfc100f2b0 /src
parent7c03d596ea043999c78801a4da078187c0dba5fd (diff)
downloadslapi-nis-4f13ba5eb7712a831de2e3e3bb1b398a8d30387f.tar.gz
slapi-nis-4f13ba5eb7712a831de2e3e3bb1b398a8d30387f.tar.xz
slapi-nis-4f13ba5eb7712a831de2e3e3bb1b398a8d30387f.zip
don't skip changes that only affect map membership
When checking if we can skip processing for a given change, pay attention to whether or not the changes cause the entry to need to be added or removed from a map (#912673).
Diffstat (limited to 'src')
-rw-r--r--src/back-shr.c27
1 files changed, 16 insertions, 11 deletions
diff --git a/src/back-shr.c b/src/back-shr.c
index 97fa2e2..e238a19 100644
--- a/src/back-shr.c
+++ b/src/back-shr.c
@@ -1677,17 +1677,22 @@ backend_shr_modify_entry_cb(const char *group, const char *set, bool_t flag,
}
}
if (mod == NULL) {
- slapi_log_error(SLAPI_LOG_PLUGIN,
- cbdata->state->plugin_desc->spd_id,
- "no interesting changes for "
- "\"%s\"/\"%s\" made in (\"%s\") "
- "(%s not in %s)\n",
- set_data->group,
- set_data->set,
- cbdata->ndn,
- cbdata->modlist ? cbdata->modlist : "",
- backend_shr_get_rel_attr_list(set_data));
- return TRUE;
+ if (backend_shr_entry_matches_set(set_data, cbdata->pb,
+ cbdata->e_pre) ==
+ backend_shr_entry_matches_set(set_data, cbdata->pb,
+ cbdata->e_post)) {
+ slapi_log_error(SLAPI_LOG_PLUGIN,
+ cbdata->state->plugin_desc->spd_id,
+ "no interesting changes for "
+ "\"%s\"/\"%s\" made in (\"%s\") "
+ "(%s not in %s)\n",
+ set_data->group,
+ set_data->set,
+ cbdata->ndn,
+ cbdata->modlist ? cbdata->modlist : "",
+ backend_shr_get_rel_attr_list(set_data));
+ return TRUE;
+ }
} else {
slapi_log_error(SLAPI_LOG_PLUGIN,
cbdata->state->plugin_desc->spd_id,