Update Random_Compat from 1.1.6 to 1.2.1.

Changes: https://github.com/paragonie/random_compat/compare/1.1.6...v1.2.1

See #35665.

git-svn-id: https://develop.svn.wordpress.org/trunk@36886 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Dominik Schilling (ocean90)
2016-03-08 17:14:52 +00:00
parent 5064747619
commit dfc6f47841
10 changed files with 134 additions and 47 deletions

View File

@@ -48,12 +48,13 @@ function random_bytes($bytes)
'random_bytes(): $bytes must be an integer'
);
}
if ($bytes < 1) {
throw new Error(
'Length must be greater than 0'
);
}
$secure = true;
/**
* $secure is passed by reference. If it's set to false, fail. Note
* that this will only return false if this function fails to return
@@ -61,12 +62,18 @@ function random_bytes($bytes)
*
* @ref https://github.com/paragonie/random_compat/issues/6#issuecomment-119564973
*/
$secure = true;
$buf = openssl_random_pseudo_bytes($bytes, $secure);
if ($buf !== false && $secure) {
if (RandomCompat_strlen($buf) === $bytes) {
return $buf;
}
if (
$buf !== false
&&
$secure
&&
RandomCompat_strlen($buf) === $bytes
) {
return $buf;
}
/**
* If we reach here, PHP has failed us.
*/