diff --git a/res/res_config_ldap.c b/res/res_config_ldap.c index 52855fdec0501564a922629dcf6267bb40a3a9d5..33ed247b780ade542418246da09626e8ecf654c5 100644 --- a/res/res_config_ldap.c +++ b/res/res_config_ldap.c @@ -1401,11 +1401,14 @@ int parse_config(void) } else ast_copy_string(user, s, sizeof(user)); - if (!(s = ast_variable_retrieve(config, "_general", "pass"))) { - ast_log(LOG_WARNING, "No directory password found, using 'asterisk' as default.\n"); - ast_copy_string(pass, "asterisk", sizeof(pass) - 1); - } else - ast_copy_string(pass, s, sizeof(pass)); + if (!ast_strlen_zero(user)) { + if (!(s = ast_variable_retrieve(config, "_general", "pass"))) { + ast_log(LOG_WARNING, "No directory password found, using 'asterisk' as default.\n"); + ast_copy_string(pass, "asterisk", sizeof(pass)); + } else { + ast_copy_string(pass, s, sizeof(pass)); + } + } /* URL is preferred, use host and port if not found */ if ((s = ast_variable_retrieve(config, "_general", "url"))) {