From 15876e85e59658bfbda3bf0b0c34d56ca503fd2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=B4me=20Bernigaud?= Date: Mon, 16 Nov 2015 04:50:12 +0100 Subject: Added back support for undocummented host:port syntax --- ext/ldap/ldap.c | 7 ++++++- ext/ldap/tests/ldap_connect_variation.phpt | 5 +++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ext/ldap/ldap.c b/ext/ldap/ldap.c index da8936cd76..8b66ba44ca 100644 --- a/ext/ldap/ldap.c +++ b/ext/ldap/ldap.c @@ -372,7 +372,12 @@ PHP_FUNCTION(ldap_connect) } url = emalloc(urllen); - snprintf( url, urllen, "ldap://%s:%ld", host ? host : "", port ); + if (host && (strchr(host, ':') != NULL)) { + /* Legacy support for host:port */ + snprintf( url, urllen, "ldap://%s", host ); + } else { + snprintf( url, urllen, "ldap://%s:%ld", host ? host : "", port ); + } } #ifdef LDAP_API_FEATURE_X_OPENLDAP diff --git a/ext/ldap/tests/ldap_connect_variation.phpt b/ext/ldap/tests/ldap_connect_variation.phpt index 09b07e7786..eaee261542 100644 --- a/ext/ldap/tests/ldap_connect_variation.phpt +++ b/ext/ldap/tests/ldap_connect_variation.phpt @@ -28,6 +28,10 @@ var_dump($link); // bad hostname (connect should work, not bind) $link = ldap_connect("nonexistent" . $host); var_dump($link); + +// Legacy host:port syntax +$link = ldap_connect("$host:$port"); +var_dump($link); ?> ===DONE=== --EXPECTF-- @@ -36,4 +40,5 @@ resource(%d) of type (ldap link) resource(%d) of type (ldap link) resource(%d) of type (ldap link) resource(%d) of type (ldap link) +resource(%d) of type (ldap link) ===DONE=== -- cgit v1.2.1