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

View file

@ -1122,7 +1122,13 @@ class Poche
public function generateToken() public function generateToken()
{ {
if (ini_get('open_basedir') === '') { 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 { else {
$token = substr(base64_encode(uniqid(mt_rand(), true)), 0, 20); $token = substr(base64_encode(uniqid(mt_rand(), true)), 0, 20);