]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
dict-ldap: dict_ldap_map_settings - Rename ldap_attributes into parsed_pattern_keys
authorMarco Bettini <marco.bettini@open-xchange.com>
Thu, 10 Oct 2024 08:37:34 +0000 (08:37 +0000)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Fri, 17 Jan 2025 08:40:01 +0000 (10:40 +0200)
src/lib-dict-backend/dict-ldap-settings.c
src/lib-dict-backend/dict-ldap-settings.h
src/lib-dict-backend/dict-ldap.c

index 76bd97503c83832666b40a3ca76d5ca23284e026..51529c072b99d55906145dfb02cd6d22ae76d199 100644 (file)
@@ -91,7 +91,7 @@ static const char *dict_ldap_attributes_map(struct setting_parser_ctx *ctx)
        pattern = t_str_new(strlen(ctx->cur_map.pattern) + 1);
        attributes = array_get_modifiable(&ctx->cur_attributes, &count);
 
-       p_array_init(&ctx->cur_map.ldap_attributes, ctx->pool, count);
+       p_array_init(&ctx->cur_map.parsed_pattern_keys, ctx->pool, count);
        for (p = ctx->cur_map.pattern; *p != '\0';) {
                if (*p != '$') {
                        str_append_c(pattern, *p);
@@ -114,7 +114,7 @@ static const char *dict_ldap_attributes_map(struct setting_parser_ctx *ctx)
 
                /* mark this attribute as used */
                attributes[i].variable = NULL;
-               array_push_back(&ctx->cur_map.ldap_attributes,
+               array_push_back(&ctx->cur_map.parsed_pattern_keys,
                                &attributes[i].name);
        }
 
@@ -160,9 +160,9 @@ static const char *dict_ldap_map_finish(struct setting_parser_ctx *ctx)
                else if (strcasecmp(ctx->cur_map.scope, "subtree") == 0) ctx->cur_map.parsed_scope = 2;
                else return "Scope must be one, base or subtree";
        }
-       if (!array_is_created(&ctx->cur_map.ldap_attributes)) {
+       if (!array_is_created(&ctx->cur_map.parsed_pattern_keys)) {
                /* no attributes besides value. allocate the array anyway. */
-               p_array_init(&ctx->cur_map.ldap_attributes, ctx->pool, 1);
+               p_array_init(&ctx->cur_map.parsed_pattern_keys, ctx->pool, 1);
                if (strchr(ctx->cur_map.pattern, '$') != NULL)
                        return "Missing attributes for pattern variables";
        }
index e0c0caf1b584bad73c788760854638ab8aabc369..e75bb1bc2d95c69703b84b3d8deee3d6f78672aa 100644 (file)
@@ -13,7 +13,7 @@ struct dict_ldap_map_settings {
        unsigned int timeout;
 
        /* parsed */
-       ARRAY_TYPE(const_string) ldap_attributes;
+       ARRAY_TYPE(const_string) parsed_pattern_keys;
        int parsed_scope;
 };
 
index b02f7ced469d4de40f5879b1425926f89399cb61..25b644d2a33c8df363495bb01e9d8cee083296ab 100644 (file)
@@ -165,11 +165,11 @@ ldap_dict_build_query(const struct dict_op_settings *set,
        const char *template, *error;
        ARRAY(struct var_expand_table) exp;
        struct var_expand_table entry;
-       i_zero(&entry);
 
        t_array_init(&exp, 8);
        if (priv) {
                i_assert(set->username != NULL);
+               i_zero(&entry);
                entry.value = ldap_escape(set->username);
                entry.key = "username";
                array_push_back(&exp, &entry);
@@ -178,12 +178,11 @@ ldap_dict_build_query(const struct dict_op_settings *set,
                template = map->filter;
        }
 
-       for(size_t i = 0; i < array_count(values) && i < array_count(&map->ldap_attributes); i++) {
+       for(size_t i = 0; i < array_count(values) && i < array_count(&map->parsed_pattern_keys); i++) {
                struct var_expand_table entry;
                const char *value = array_idx_elem(values, i);
-               const char *long_key = array_idx_elem(&map->ldap_attributes, i);
+               const char *long_key = array_idx_elem(&map->parsed_pattern_keys, i);
                i_zero(&entry);
-
                entry.value = ldap_escape(value);
                entry.key = long_key;
                array_push_back(&exp, &entry);