X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/41578db67d72562346e4dbb2a14889b23d522813..refs/tags/wordpress-4.3:/wp-includes/class-phpass.php diff --git a/wp-includes/class-phpass.php b/wp-includes/class-phpass.php index 1970ae9d..ccd17963 100644 --- a/wp-includes/class-phpass.php +++ b/wp-includes/class-phpass.php @@ -39,7 +39,10 @@ class PasswordHash { var $portable_hashes; var $random_state; - function PasswordHash($iteration_count_log2, $portable_hashes) + /** + * PHP5 constructor. + */ + function __construct( $iteration_count_log2, $portable_hashes ) { $this->itoa64 = './0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; @@ -52,6 +55,13 @@ class PasswordHash { $this->random_state = microtime() . uniqid(rand(), TRUE); // removed getmypid() for compatibility reasons } + /** + * PHP4 constructor. + */ + public function PasswordHash( $iteration_count_log2, $portable_hashes ) { + self::__construct( $iteration_count_log2, $portable_hashes ); + } + function get_random_bytes($count) { $output = ''; @@ -214,6 +224,10 @@ class PasswordHash { function HashPassword($password) { + if ( strlen( $password ) > 4096 ) { + return '*'; + } + $random = ''; if (CRYPT_BLOWFISH == 1 && !$this->portable_hashes) { @@ -249,6 +263,10 @@ class PasswordHash { function CheckPassword($password, $stored_hash) { + if ( strlen( $password ) > 4096 ) { + return false; + } + $hash = $this->crypt_private($password, $stored_hash); if ($hash[0] == '*') $hash = crypt($password, $stored_hash);