From: [EMAIL PROTECTED] Operating system: Linux Redhat 8.0 PHP version: 4.2.2 PHP Bug Type: Reproducible crash Bug description: ldapclose() SEGFAULTs
The following code will segfault with php-4.2.2 on RH-8.0 It queries a Microsoft Active Directory via LDAPv3. It is suposed to create a session if a given user exists in the directory, belongs to a given group and can bind to the directory with the given password. $ds=ldap_connect($LDAP_SERVER); if($ds){ ldap_bind($ds, $QUERYUSER_DN, $QUERYUSER_PASS); $err=ldap_errno($ds); if($err==0){ $sr=ldap_search($ds, $BASE_DN, "samaccountname=rsaura", array ("distinguishedName"), 0, 10000, 30, LDAP_DEREF_NEVER); $entry = ldap_first_entry($ds, $sr); if($entry == FALSE){ exit; } $attrs = ldap_get_attributes($ds, $entry); $dn = $attrs["distinguishedName"][0]; $test=0; $sr = ldap_search($ds, $BASE_DN, $GROUP_MEMBERSHIP, array ("member"), 0, 10000, 30, LDAP_DEREF_NEVER); $entry = ldap_first_entry($ds, $sr); $attrs = ldap_get_attributes($ds, $entry); foreach ($attrs["member"] as $user){ if($user==$dn){ $test=1; break; } } if($test==0){ exit; } ldap_close($ds); <---segfaults here! } else { exit; } } else { exit; } $ds=ldap_connect($LDAP_SERVER); if($ds){ ldap_bind($ds, $dn, $password); $err=ldap_errno($ds); if($err==0){ $loginok=1; } else { exit; } ldap_close($ds); } else { exit; } if($loginok == 1){ session_start(); session_register("loginok"); } -- Edit bug report at http://bugs.php.net/?id=21167&edit=1 -- Try a CVS snapshot: http://bugs.php.net/fix.php?id=21167&r=trysnapshot Fixed in CVS: http://bugs.php.net/fix.php?id=21167&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=21167&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=21167&r=needtrace Try newer version: http://bugs.php.net/fix.php?id=21167&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=21167&r=support Expected behavior: http://bugs.php.net/fix.php?id=21167&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=21167&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=21167&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=21167&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=21167&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=21167&r=dst IIS Stability: http://bugs.php.net/fix.php?id=21167&r=isapi