From: Operating system: Linux PHP version: 5.3.2 Package: *Encryption and hash functions Bug Type: Bug Bug description:Use internal crypt() only for algorithms needed
Description: ------------ Attached patch changes crypt.c and accompanying m4 code so it selects only algorithms not supported by system library crypt() for candidates to use internal implementation of crypt(). It also unifies the code to one style (BF and MD5 used static output buffer, sha256,512 allocated the buffer dynamically, etc.), so it's easier to read and understand, which is needed due all #if statements there. Next it fixes some glitches in m4 code. Expected result: ---------------- Use internal implementation only for missing or buggy support for algorithm in system library crypt() function. Actual result: -------------- Internal implementation of crypt() is always selected and used(), when BF or EXT_DES is missing. (Note that due misplaced check for HAVE_CRYPT_R, it will be used even if BF and EXT_DES is present in the system.) -- Edit bug report at http://bugs.php.net/bug.php?id=51254&edit=1 -- Try a snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=51254&r=trysnapshot52 Try a snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=51254&r=trysnapshot53 Try a snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=51254&r=trysnapshot60 Fixed in SVN: http://bugs.php.net/fix.php?id=51254&r=fixed Fixed in SVN and need be documented: http://bugs.php.net/fix.php?id=51254&r=needdocs Fixed in release: http://bugs.php.net/fix.php?id=51254&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=51254&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=51254&r=needscript Try newer version: http://bugs.php.net/fix.php?id=51254&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=51254&r=support Expected behavior: http://bugs.php.net/fix.php?id=51254&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=51254&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=51254&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=51254&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=51254&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=51254&r=dst IIS Stability: http://bugs.php.net/fix.php?id=51254&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=51254&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=51254&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=51254&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=51254&r=mysqlcfg