summaryrefslogtreecommitdiffstats
path: root/src/map.c
diff options
context:
space:
mode:
authorNalin Dahyabhai <nalin.dahyabhai@pobox.com>2008-06-25 18:05:59 -0400
committerNalin Dahyabhai <nalin.dahyabhai@pobox.com>2008-06-25 18:05:59 -0400
commit8f827e17bd9806d7bb599ea7e3440f923e05e452 (patch)
treeb85f38dc866a799b95ac97aa630457e9d648880f /src/map.c
parentfbd45de92c70a130d74a0d48f8975483ae21f68b (diff)
downloadslapi-nis-8f827e17bd9806d7bb599ea7e3440f923e05e452.tar.gz
slapi-nis-8f827e17bd9806d7bb599ea7e3440f923e05e452.tar.xz
slapi-nis-8f827e17bd9806d7bb599ea7e3440f923e05e452.zip
- don't require a key count when we're adding an entry to the map
Diffstat (limited to 'src/map.c')
-rw-r--r--src/map.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/map.c b/src/map.c
index 903a9db..016b84b 100644
--- a/src/map.c
+++ b/src/map.c
@@ -840,17 +840,19 @@ map_data_set_entry(struct plugin_state *state,
const char *domain_name,
const char *map_name,
const char *id,
- unsigned int n_keys,
- unsigned int *key_lens,
+ unsigned int *key_lengths,
char **keys,
unsigned int value_len,
char *value)
{
struct map *map;
struct map_entry *entry;
- unsigned int i, key_len;
+ unsigned int i, key_len, n_keys;
void **key_trees;
map = map_data_find_map(state, domain_name, map_name);
+ for (n_keys = 0; keys[n_keys] != NULL; n_keys++) {
+ continue;
+ }
if (value_len == (unsigned int) -1) {
value_len = strlen(value);
}
@@ -893,8 +895,8 @@ map_data_set_entry(struct plugin_state *state,
entry->keys = malloc((n_keys + 1) * sizeof(char *));
if (entry->keys != NULL) {
for (i = 0; i < n_keys; i++) {
- if (key_lens != NULL) {
- key_len = key_lens[i];
+ if (key_lengths != NULL) {
+ key_len = key_lengths[i];
} else {
key_len = -1;
}
@@ -934,8 +936,9 @@ map_data_set_entry(struct plugin_state *state,
if ((entry->keys != NULL) &&
(entry->key_len != NULL)) {
for (i = 0; i < n_keys; i++) {
- if (key_lens != NULL) {
- key_len = key_lens[i];
+ if (key_lengths != NULL) {
+ key_len =
+ key_lengths[i];
} else {
key_len = -1;
}