|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2006-11-28 23:45 UTC] sujiannming at gmail dot com
Description: ------------ When connecting to ldaps:// via port 636, the first packet after the TCP handshake should be a SSLv2 "Client Hello." At least tracing ldapsearch, this is the case. However, with both php 4.3.x, 4.4.4, and php 5.1.x, the first packet after the TCP handshake seems to be a SSL Continuation Data. The result of this is the inability for php to bind to the ldap server. Reproduce code: --------------- http://us2.php.net/manual/en/function.ldap-bind.php Expected result: ---------------- When doing a tcpdump, I "should" see a SSLv2 Client Hello packet destined for the ldaps server. Which is what I see when I run the following ldapsearch command: ldapsearch -x -H ldaps://ldap.example.bogus -b dc=example,dc=bogus -D "uid=nocuser,ou=services,dc=example,dc=bogus" -W uid=some_uid Actual result: -------------- I'm actually seeing a SSL Continuation Data packet instead. PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Oct 27 13:00:01 2025 UTC |
Nevermind. Apparently, it is important to explicitly state the URI protocol ldaps:// if you want it to connect properly via SSL. Specifying port 636 isn't enough. So, ldap_connect("your_ldap_server", "636") won't do it. It has to be ldap_connect("ldaps://your_ldap_server", "636").