[php-src] Issue #22154: [8.4.21] ldap_connect(): Could not create new security context
[email protected] (Commifreak) Tue, 26 May 2026 18:12:37 +0000
| Newsgroups | php.bugs |
|---|---|
| Message-ID | <uqe0S27Jm8h1qoXDdtb2UjKxHlrTDRhn44tEY53w8p0@main.internal.php.net> |
Issue: https://github.com/php/php-src/issues/22154
Author: Commifreak
### Description
The following code:
```php
<?php
ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL, 7);
if (isset($_SERVER['HOME']) && strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN') {
$ldaprcfile = $_SERVER['HOME'] . '/.ldaprc';
if (!file_exists($ldaprcfile)) {
@file_put_contents($ldaprcfile, 'TLS_REQCERT allow')
}
putenv('LDAPCONF=' . $ldaprcfile);
}
putenv('LDAPTLS_REQCERT=allow');
putenv('TLS_REQCERT=allow');
$hostPrefix = 'ldaps://my.ldap.server';
$port = 636;
ldap_set_option(null, LDAP_OPT_NETWORK_TIMEOUT, 5);
$l = ldap_connect($hostPrefix, $port);
if (!$l) {
echo "Connect to $hostPrefix:$port failed!";
}
ldap_set_option($l, LDAP_OPT_NETWORK_TIMEOUT, 5);
ldap_set_option($l, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($l, LDAP_OPT_REFERRALS, 0);
$bind_dn = 'xxxxx';
$b = ldap_bind($l, $bind_dn, 'xxxxx');
if (!$b && ldap_errno($l) === -1) { // -1 = No TCP connection
echo "Connect try #$connTry failed!";
}
if (!$b) {
echo 'Bind failed! ' . ldap_error($l) . ' - Errno: ' . ldap_errno($l);
}
3
$result = ldap_search($l, 'dc=ldap', '(mail=*me*)', ['mail'], 0, -1, -1, LDAP_DEREF_NEVER);
$entries = ldap_get_entries($l, $result);
```
Resulted in this output:
```
PHP Warning: ldap_connect(): Could not create new security context in /root/ldap_test.php on line 35
```
But I expected this output instead:
```
-
```
Maybe this is a known bug, following up from #18529 ?
Only 8.4 is not working:
| PHP Version | Result |
|--------|--------|
| 7.3.33-32+ubuntu22.04.1+deb.sury.org+1| OK|
| 1:7.4.33-28+ubuntu22.04.1+deb.sury.org+1| OK|
| 1:8.0.30-22+ubuntu22.04.1+deb.sury.org+1| OK|
| 8.1.34-6+ubuntu22.04.1+deb.sury.org+1| OK|
| 8.2.31-3+ubuntu22.04.1+deb.sury.org+1| OK|
| 8.3.31-3+ubuntu22.04.1+deb.sury.org+1| OK|
| 8.4.21-3+ubuntu22.04.1+deb.sury.org+1| ldap_connect(): Could not create new security context|
| 8.5.6-3+ubuntu22.04.1+deb.sury.org+1| OK|
### PHP Version
```plain
PHP 8.4.21 (cli) (built: May 14 2026 16:00:34) (NTS)
Copyright (c) The PHP Group
Built by Ubuntu
Zend Engine v4.4.21, Copyright (c) Zend Technologies
with Zend OPcache v8.4.21, Copyright (c), by Zend Technologies
with Xdebug v3.5.0, Copyright (c) 2002-2025, by Derick Rethans
```
### Operating System
Ubuntu 22.04