X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/177fd6fefd2e3d5a0ea6591c71d660cabdb3c1a4..9c2096d803812dacbdf6cf8efe90053e39f00b96:/wp-includes/class-phpass.php diff --git a/wp-includes/class-phpass.php b/wp-includes/class-phpass.php index c964b09b..dcdf3803 100644 --- a/wp-includes/class-phpass.php +++ b/wp-includes/class-phpass.php @@ -3,24 +3,16 @@ * Portable PHP password hashing framework. * @package phpass * @since 2.5 - * @version 0.1 + * @version 0.3 / WordPress * @link http://www.openwall.com/phpass/ */ -# -# Portable PHP password hashing framework. -# -# Version 0.1 / genuine. # # Written by Solar Designer in 2004-2006 and placed in -# the public domain. +# the public domain. Revised in subsequent years, still public domain. # # There's absolutely no warranty. # -# The homepage URL for this framework is: -# -# http://www.openwall.com/phpass/ -# # Please be sure to update the Version line if you edit this file in any way. # It is suggested that you leave the main version number intact, but indicate # your project name (after the slash) and add your own revision information. @@ -32,6 +24,15 @@ # Obviously, since this code is in the public domain, the above are not # requirements (there can be none), but merely suggestions. # + +/** + * Portable PHP password hashing framework. + * + * @package phpass + * @version 0.3 / WordPress + * @link http://www.openwall.com/phpass/ + * @since 2.5 + */ class PasswordHash { var $itoa64; var $iteration_count_log2; @@ -48,14 +49,14 @@ class PasswordHash { $this->portable_hashes = $portable_hashes; - $this->random_state = microtime() . (function_exists('getmypid') ? getmypid() : '') . uniqid(rand(), TRUE); - + $this->random_state = microtime() . uniqid(rand(), TRUE); // removed getmypid() for compatibility reasons } function get_random_bytes($count) { $output = ''; - if (($fh = @fopen('/dev/urandom', 'rb'))) { + if ( @is_readable('/dev/urandom') && + ($fh = @fopen('/dev/urandom', 'rb'))) { $output = fread($fh, $count); fclose($fh); } @@ -113,7 +114,9 @@ class PasswordHash { if (substr($setting, 0, 2) == $output) $output = '*1'; - if (substr($setting, 0, 3) != '$P$') + $id = substr($setting, 0, 3); + # We use "$P$", phpBB3 uses "$H$" for the same thing + if ($id != '$P$' && $id != '$H$') return $output; $count_log2 = strpos($this->itoa64, $setting[3]);