From: Timo Sirainen Date: Thu, 11 Sep 2025 12:27:52 +0000 (+0300) Subject: auth: ldap - Avoid assert-crash when using %{ldap:} or %{ldap_multi:} with empty... X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6304f925663c7d96fd97143c695c13c7ec1c09ef;p=thirdparty%2Fdovecot%2Fcore.git auth: ldap - Avoid assert-crash when using %{ldap:} or %{ldap_multi:} with empty attribute name --- 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);