Skip to content

Commit 0939122

Browse files
committed
change default NumberGenerator to XorShift128Plus -> Secure
1 parent ce7f1b2 commit 0939122

File tree

2 files changed

+6
-14
lines changed

2 files changed

+6
-14
lines changed

ext/random/random.c

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1235,21 +1235,11 @@ PHP_METHOD(Random_Randomizer, __construct)
12351235

12361236
/* Create default RNG instance */
12371237
if (!generator_object) {
1238-
zval zseed;
1239-
zend_long seed = 0;
1240-
1241-
if (php_random_bytes_throw(&seed, sizeof(zend_long) == FAILURE)) {
1242-
RETURN_THROWS();
1243-
}
1244-
1245-
ZVAL_LONG(&zseed, seed);
1246-
1247-
generator_object = php_random_numbergenerator_xorshift128plus_new(random_ce_Random_NumberGenerator_XorShift128Plus);
1248-
zend_call_known_instance_method_with_1_params(
1238+
generator_object = php_random_numbergenerator_secure_new(random_ce_Random_NumberGenerator_Secure);
1239+
zend_call_known_instance_method_with_0_params(
12491240
random_ce_Random_NumberGenerator_XorShift128Plus->constructor,
12501241
generator_object,
1251-
NULL,
1252-
&zseed
1242+
NULL
12531243
);
12541244

12551245
/* No need self-refcount */

ext/random/tests/randomizer/readonly.phpt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ Random: Randomizer: readonly numbergenerator
33
--FILE--
44
<?php
55

6-
$one = new \Random\Randomizer();
6+
$one = new \Random\Randomizer(
7+
new \Random\NumberGenerator\XorShift128Plus(1234)
8+
);
79

810
$one_ng_clone = clone $one->numberGenerator;
911
if ($one->numberGenerator->generate() !== $one_ng_clone->generate()) {

0 commit comments

Comments
 (0)