diff options
Diffstat (limited to 'src/back-shr.c')
-rw-r--r-- | src/back-shr.c | 65 |
1 files changed, 31 insertions, 34 deletions
diff --git a/src/back-shr.c b/src/back-shr.c index bbae623..4b6701c 100644 --- a/src/back-shr.c +++ b/src/back-shr.c @@ -293,7 +293,7 @@ backend_shr_entry_matches(Slapi_PBlock *pb, Slapi_Entry *e, static void backend_shr_set_config_free_config(void *cb_data) { - struct backend_set_data *set_data; + struct backend_shr_set_data *set_data; set_data = cb_data; backend_set_config_free_config(set_data); @@ -305,15 +305,15 @@ backend_shr_set_config_entry_add_one(struct plugin_state *state, Slapi_Entry *e, Slapi_PBlock *pb; int i; bool_t flag; - struct backend_set_data *set_data; + struct backend_shr_set_data *set_data; char **set_bases; char *set_entry_filter; pb = slapi_pblock_new(); flag = FALSE; backend_set_config_read_config(state, e, group, set, &flag, &set_data); - set_bases = backend_set_config_get_bases(set_data); - set_entry_filter = backend_set_config_get_filter(set_data); + set_bases = set_data->bases; + set_entry_filter = set_data->entry_filter; if (set_data == NULL) { slapi_log_error(SLAPI_LOG_PLUGIN, state->plugin_desc->spd_id, @@ -486,14 +486,14 @@ backend_shr_get_set_config_entry_cb(Slapi_Entry *e, void *callback_data, /* Given a map configuration, return true if the entry is supposed to be in the * map. */ bool_t -backend_shr_entry_matches_set(struct backend_set_data *set_data, +backend_shr_entry_matches_set(struct backend_shr_set_data *set_data, Slapi_PBlock *pb, Slapi_Entry *e) { char **set_bases; char *set_filter; int i; - set_bases = backend_set_config_get_bases(set_data); - set_filter = backend_set_config_get_filter(set_data); + set_bases = set_data->bases; + set_filter = set_data->entry_filter; if (set_bases != NULL) { for (i = 0; set_bases[i] != NULL; i++) { if (backend_shr_entry_matches(pb, e, @@ -531,7 +531,7 @@ backend_shr_update_references_cb(const char *group, const char *set, void *backend_data, void *cbdata_ptr) { struct plugin_state *state; - struct backend_set_data *set_data; + struct backend_shr_set_data *set_data; struct backend_shr_update_references_cbdata *cbdata; Slapi_DN *referred_to_sdn; Slapi_ValueSet *values; @@ -543,20 +543,20 @@ backend_shr_update_references_cb(const char *group, const char *set, set_data = backend_data; cbdata = cbdata_ptr; - state = backend_set_config_get_state(set_data); + state = set_data->state; /* For every entry in this set which refers to this entry using * a DN stored in an attribute, update that entry. */ /* Build a filter with all of these attributes and this entry's DN. */ - ref_attrs = backend_set_config_get_ref_attrs(set_data); + ref_attrs = set_data->ref_attrs; for (i = 0; (ref_attrs != NULL) && (ref_attrs[i] != NULL); i++) { continue; } n_ref_attrs = i; if (n_ref_attrs > 0) { filter_size = strlen("(&(|))") + - strlen(backend_set_config_get_filter(set_data)) + + strlen(set_data->entry_filter) + 1; ndn = slapi_entry_get_ndn(cbdata->e); tndn = format_escape_for_filter(ndn); @@ -583,8 +583,7 @@ backend_shr_update_references_cb(const char *group, const char *set, free(tndn); return TRUE; } - sprintf(filter, "(&%s(|", - backend_set_config_get_filter(set_data)); + sprintf(filter, "(&%s(|", set_data->entry_filter); for (i = 0; (ref_attrs != NULL) && (ref_attrs[i] != NULL); i++) { @@ -597,7 +596,7 @@ backend_shr_update_references_cb(const char *group, const char *set, filter); free(tndn); /* Update any matching entry. */ - set_bases = backend_set_config_get_bases(set_data); + set_bases = set_data->bases; for (i = 0; (set_bases != NULL) && (set_bases[i] != NULL); i++) { @@ -630,7 +629,7 @@ backend_shr_update_references_cb(const char *group, const char *set, /* For every directory entry to which this directory entry refers and * which also has a corresponding entry in this map, update it. */ - inref_attrs = backend_set_config_get_inref_attrs(set_data); + 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) || @@ -664,7 +663,7 @@ backend_shr_update_references_cb(const char *group, const char *set, /* ...update it. */ backend_shr_set_config_entry_set_one_dn(state, ndn, - set_data); + set_data->self); } } slapi_vattr_values_free(&values, &actual_attr, @@ -704,7 +703,7 @@ static bool_t backend_shr_add_entry_cb(const char *group, const char *set, bool_t secure, void *backend_data, void *cbdata_ptr) { - struct backend_set_data *set_data; + struct backend_shr_set_data *set_data; struct backend_add_entry_cbdata *cbdata; set_data = backend_data; @@ -722,7 +721,7 @@ backend_shr_add_entry_cb(const char *group, const char *set, bool_t secure, /* Set the entry in the map which corresponds to this entry, or clear * any that might if this entry doesn't have a key and value. */ - backend_set_entry_one(cbdata->e, set_data); + backend_set_entry_one(cbdata->e, set_data->self); return TRUE; } @@ -791,7 +790,7 @@ static bool_t backend_shr_modify_entry_cb(const char *group, const char *set, bool_t flag, void *backend_data, void *cbdata_ptr) { - struct backend_set_data *set_data; + struct backend_shr_set_data *set_data; struct backend_shr_modify_entry_cbdata *cbdata; set_data = backend_data; @@ -804,12 +803,12 @@ backend_shr_modify_entry_cb(const char *group, const char *set, bool_t flag, cbdata->state->plugin_desc->spd_id, "clearing group/set/id " "\"%s\"/\"%s\"/(\"%s\")\n", - backend_set_config_get_group(set_data), - backend_set_config_get_set(set_data), + set_data->group, + set_data->set, cbdata->ndn); map_data_unset_entry_id(cbdata->state, - backend_set_config_get_group(set_data), - backend_set_config_get_set(set_data), + set_data->group, + set_data->set, cbdata->ndn); } /* If the entry now matches the map, add it (or re-add it). */ @@ -818,7 +817,7 @@ backend_shr_modify_entry_cb(const char *group, const char *set, bool_t flag, /* Set the entry in the set which corresponds to this entry, or * remove any that might if this entry doesn't produce a useful * value. */ - backend_shr_set_entry_one(cbdata->e_post, set_data); + backend_shr_set_entry_one(cbdata->e_post, set_data->self); } return TRUE; } @@ -907,7 +906,7 @@ static bool_t backend_shr_modrdn_entry_cb(const char *group, const char *set, bool_t secure, void *backend_data, void *cbdata_ptr) { - struct backend_set_data *set_data; + struct backend_shr_set_data *set_data; struct backend_shr_modrdn_entry_cbdata *cbdata; bool_t matched_pre, matched_post; @@ -924,12 +923,12 @@ backend_shr_modrdn_entry_cb(const char *group, const char *set, bool_t secure, cbdata->state->plugin_desc->spd_id, "clearing group/set/id " "\"%s\"/\"%s\"/(\"%s\")\n", - backend_set_config_get_group(set_data), - backend_set_config_get_set(set_data), + set_data->group, + set_data->set, cbdata->ndn_pre); map_data_unset_entry_id(cbdata->state, - backend_set_config_get_group(set_data), - backend_set_config_get_set(set_data), + set_data->group, + set_data->set, cbdata->ndn_pre); } /* Set the entry in the map which corresponds to this entry, or clear @@ -938,7 +937,7 @@ backend_shr_modrdn_entry_cb(const char *group, const char *set, bool_t secure, cbdata->pb, cbdata->e_post); if (matched_post) { - backend_set_entry_one(cbdata->e_post, set_data); + backend_set_entry_one(cbdata->e_post, set_data->self); } return TRUE; } @@ -1012,7 +1011,7 @@ static bool_t backend_shr_delete_entry_cb(const char *group, const char *set, bool_t flag, void *backend_data, void *cbdata_ptr) { - struct backend_set_data *set_data; + struct backend_shr_set_data *set_data; struct backend_shr_delete_entry_cbdata *cbdata; set_data = backend_data; cbdata = cbdata_ptr; @@ -1023,9 +1022,7 @@ backend_shr_delete_entry_cb(const char *group, const char *set, bool_t flag, cbdata->state->plugin_desc->spd_id, "unsetting group/set/id" "\"%s\"/\"%s\"=\"%s\"/\"%s\"/(\"%s\")\n", - group, set, - backend_set_config_get_group(set_data), - backend_set_config_get_set(set_data), + group, set, set_data->group, set_data->set, cbdata->ndn); map_data_unset_entry_id(cbdata->state, group, set, cbdata->ndn); } |