From 42690f8b5c5cd72dd38b095f57999268f4f5df1e Mon Sep 17 00:00:00 2001 From: Andrew McMillan Date: Sun, 13 Mar 2011 05:05:19 +1300 Subject: [PATCH] A more complete fix for weird passwords with LDAP. Signed-off-by: Andrew McMillan --- inc/drivers_ldap.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/inc/drivers_ldap.php b/inc/drivers_ldap.php index 0e459014..4c5f2a4b 100644 --- a/inc/drivers_ldap.php +++ b/inc/drivers_ldap.php @@ -210,8 +210,9 @@ class ldapDrivers return false; } } - else if ( empty($passwd) ) { - dbg_error_log( 'LDAP', 'drivers_ldap : user %s did not supply a password: login rejected', $dnUser ); + else if ( empty($passwd) || preg_match('/[\x00-\x19]/',$passwd) ) { + // See http://www.php.net/manual/en/function.ldap-bind.php#73718 for more background + dbg_error_log( 'LDAP', 'drivers_ldap : user %s supplied empty or invalid password (%s): login rejected', $dnUser, $passwd ); return false; } else {