From 6304f925663c7d96fd97143c695c13c7ec1c09ef Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Thu, 11 Sep 2025 15:27:52 +0300 Subject: [PATCH] auth: ldap - Avoid assert-crash when using %{ldap:} or %{ldap_multi:} with empty attribute name --- src/auth/db-ldap.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/auth/db-ldap.c b/src/auth/db-ldap.c index 6122cb7d18..9309ccffd3 100644 --- a/src/auth/db-ldap.c +++ b/src/auth/db-ldap.c @@ -1092,8 +1092,9 @@ void db_ldap_get_attribute_names(pool_t pool, const char *const *vars = var_expand_program_variables(prog); for (; *vars != NULL; vars++) { const char *ldap_attr; - if (str_begins(*vars, "ldap:", &ldap_attr) || - str_begins(*vars, "ldap_multi:", &ldap_attr)) { + if ((str_begins(*vars, "ldap:", &ldap_attr) || + str_begins(*vars, "ldap_multi:", &ldap_attr)) && + ldap_attr[0] != '\0') { /* when we free program, this name would be invalid, so dup it here. */ ldap_attr = p_strdup(pool, ldap_attr); -- 2.47.3