diff --git a/ext/ldap/ldap.c b/ext/ldap/ldap.c index 6e0f28f68080e..a6a562b885266 100644 --- a/ext/ldap/ldap.c +++ b/ext/ldap/ldap.c @@ -1442,6 +1442,12 @@ static int _php_sasl_interact(LDAP *ld, unsigned flags, void *defaults, void *in case SASL_CB_PASS: p = ctx->passwd; break; + case SASL_CB_NOECHOPROMPT: + /* FALLTHROUGH */ + case SASL_CB_ECHOPROMPT: + if (interact->challenge != NULL) + p = ctx->passwd; + break; } if (p) { interact->result = p;