Fix of #580 : Add some random for Windows hosts

This commit is contained in:
tcit 2014-03-26 17:19:57 +01:00
parent cc60cbbbab
commit ad03eb6286
1 changed files with 7 additions and 1 deletions

View File

@ -1122,7 +1122,13 @@ class Poche
public function generateToken()
{
if (ini_get('open_basedir') === '') {
$token = substr(base64_encode(file_get_contents('/dev/urandom', false, null, 0, 20)), 0, 15);
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
echo 'This is a server using Windows!';
// alternative to /dev/urandom for Windows
$token = substr(base64_encode(uniqid(mt_rand(), true)), 0, 20);
} else {
$token = substr(base64_encode(file_get_contents('/dev/urandom', false, null, 0, 20)), 0, 15);
}
}
else {
$token = substr(base64_encode(uniqid(mt_rand(), true)), 0, 20);