Skip to content

Commit 734c305

Browse files
committed
Remove deprecated gmp_random() function
Deprecated in PHP 7.2 as part of https://wiki.php.net/rfc/deprecations_php_7_2.
1 parent faf03e4 commit 734c305

File tree

3 files changed

+48
-193
lines changed

3 files changed

+48
-193
lines changed

ext/gmp/gmp.c

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -99,10 +99,6 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_gmp_prob_prime, 0, 0, 1)
9999
ZEND_ARG_INFO(0, reps)
100100
ZEND_END_ARG_INFO()
101101

102-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gmp_random, 0, 0, 0)
103-
ZEND_ARG_INFO(0, limiter)
104-
ZEND_END_ARG_INFO()
105-
106102
ZEND_BEGIN_ARG_INFO_EX(arginfo_gmp_random_seed, 0, 0, 1)
107103
ZEND_ARG_INFO(0, seed)
108104
ZEND_END_ARG_INFO()
@@ -175,7 +171,6 @@ static const zend_function_entry gmp_functions[] = {
175171
ZEND_FE(gmp_kronecker, arginfo_gmp_binary)
176172
ZEND_FE(gmp_cmp, arginfo_gmp_binary)
177173
ZEND_FE(gmp_sign, arginfo_gmp_unary)
178-
ZEND_DEP_FE(gmp_random, arginfo_gmp_random)
179174
ZEND_FE(gmp_random_seed, arginfo_gmp_random_seed)
180175
ZEND_FE(gmp_random_bits, arginfo_gmp_random_bits)
181176
ZEND_FE(gmp_random_range, arginfo_gmp_random_range)
@@ -1882,28 +1877,6 @@ static void gmp_init_random(void)
18821877
}
18831878
}
18841879

1885-
/* {{{ proto GMP gmp_random([int limiter])
1886-
Gets random number */
1887-
ZEND_FUNCTION(gmp_random)
1888-
{
1889-
zend_long limiter = 20;
1890-
mpz_ptr gmpnum_result;
1891-
1892-
if (zend_parse_parameters(ZEND_NUM_ARGS(), "|l", &limiter) == FAILURE) {
1893-
return;
1894-
}
1895-
1896-
INIT_GMP_RETVAL(gmpnum_result);
1897-
gmp_init_random();
1898-
1899-
#ifdef GMP_LIMB_BITS
1900-
mpz_urandomb(gmpnum_result, GMPG(rand_state), GMP_ABS (limiter) * GMP_LIMB_BITS);
1901-
#else
1902-
mpz_urandomb(gmpnum_result, GMPG(rand_state), GMP_ABS (limiter) * __GMP_BITS_PER_MP_LIMB);
1903-
#endif
1904-
}
1905-
/* }}} */
1906-
19071880
/* {{{ proto GMP gmp_random_seed(mixed seed)
19081881
Seed the RNG */
19091882
ZEND_FUNCTION(gmp_random_seed)

ext/gmp/tests/gmp_random.phpt

Lines changed: 0 additions & 60 deletions
This file was deleted.

ext/gmp/tests/gmp_random_seed.phpt

Lines changed: 48 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,12 @@ gmp_random_seed() basic tests
33
--SKIPIF--
44
<?php if (!extension_loaded("gmp")) print "skip"; ?>
55
<?php if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only"); ?>
6-
--INI--
7-
error_reporting=E_ALL&~E_DEPRECATED
86
--FILE--
97
<?php
108

119
// zero int
1210
var_dump(gmp_random_seed(0));
1311

14-
var_dump(gmp_strval(gmp_random()));
15-
var_dump(gmp_strval(gmp_random(1)));
16-
var_dump(gmp_strval(gmp_random(10)));
17-
1812
var_dump(gmp_strval(gmp_random_bits(10)));
1913
var_dump(gmp_strval(gmp_random_bits(100)));
2014
var_dump(gmp_strval(gmp_random_bits(1000)));
@@ -27,10 +21,6 @@ var_dump(gmp_strval(gmp_random_range(-10000, 0)));
2721
// zero gmp
2822
var_dump(gmp_random_seed(gmp_init(0)));
2923

30-
var_dump(gmp_strval(gmp_random()));
31-
var_dump(gmp_strval(gmp_random(1)));
32-
var_dump(gmp_strval(gmp_random(10)));
33-
3424
var_dump(gmp_strval(gmp_random_bits(10)));
3525
var_dump(gmp_strval(gmp_random_bits(100)));
3626
var_dump(gmp_strval(gmp_random_bits(1000)));
@@ -43,10 +33,6 @@ var_dump(gmp_strval(gmp_random_range(-10000, 0)));
4333
// negative int
4434
var_dump(gmp_random_seed(-100));
4535

46-
var_dump(gmp_strval(gmp_random()));
47-
var_dump(gmp_strval(gmp_random(1)));
48-
var_dump(gmp_strval(gmp_random(10)));
49-
5036
var_dump(gmp_strval(gmp_random_bits(10)));
5137
var_dump(gmp_strval(gmp_random_bits(100)));
5238
var_dump(gmp_strval(gmp_random_bits(1000)));
@@ -59,10 +45,6 @@ var_dump(gmp_strval(gmp_random_range(-10000, 0)));
5945
// negative gmp
6046
var_dump(gmp_random_seed(gmp_init(-100)));
6147

62-
var_dump(gmp_strval(gmp_random()));
63-
var_dump(gmp_strval(gmp_random(1)));
64-
var_dump(gmp_strval(gmp_random(10)));
65-
6648
var_dump(gmp_strval(gmp_random_bits(10)));
6749
var_dump(gmp_strval(gmp_random_bits(100)));
6850
var_dump(gmp_strval(gmp_random_bits(1000)));
@@ -75,10 +57,6 @@ var_dump(gmp_strval(gmp_random_range(-10000, 0)));
7557
// positive int
7658
var_dump(gmp_random_seed(100));
7759

78-
var_dump(gmp_strval(gmp_random()));
79-
var_dump(gmp_strval(gmp_random(1)));
80-
var_dump(gmp_strval(gmp_random(10)));
81-
8260
var_dump(gmp_strval(gmp_random_bits(10)));
8361
var_dump(gmp_strval(gmp_random_bits(100)));
8462
var_dump(gmp_strval(gmp_random_bits(1000)));
@@ -91,10 +69,6 @@ var_dump(gmp_strval(gmp_random_range(-10000, 0)));
9169
// positive gmp
9270
var_dump(gmp_random_seed(100));
9371

94-
var_dump(gmp_strval(gmp_random()));
95-
var_dump(gmp_strval(gmp_random(1)));
96-
var_dump(gmp_strval(gmp_random(10)));
97-
9872
var_dump(gmp_strval(gmp_random_bits(10)));
9973
var_dump(gmp_strval(gmp_random_bits(100)));
10074
var_dump(gmp_strval(gmp_random_bits(1000)));
@@ -110,10 +84,6 @@ $seed <<= 512;
11084
// large negative gmp
11185
var_dump(gmp_random_seed($seed * -1));
11286

113-
var_dump(gmp_strval(gmp_random()));
114-
var_dump(gmp_strval(gmp_random(1)));
115-
var_dump(gmp_strval(gmp_random(10)));
116-
11787
var_dump(gmp_strval(gmp_random_bits(10)));
11888
var_dump(gmp_strval(gmp_random_bits(100)));
11989
var_dump(gmp_strval(gmp_random_bits(1000)));
@@ -126,10 +96,6 @@ var_dump(gmp_strval(gmp_random_range(-10000, 0)));
12696
// large positive gmp
12797
var_dump(gmp_random_seed($seed));
12898

129-
var_dump(gmp_strval(gmp_random()));
130-
var_dump(gmp_strval(gmp_random(1)));
131-
var_dump(gmp_strval(gmp_random(10)));
132-
13399
var_dump(gmp_strval(gmp_random_bits(10)));
134100
var_dump(gmp_strval(gmp_random_bits(100)));
135101
var_dump(gmp_strval(gmp_random_bits(1000)));
@@ -147,85 +113,61 @@ echo "Done\n";
147113
?>
148114
--EXPECTF--
149115
NULL
150-
string(386) "16100871751340485642888774479422205950971474538471317276388238970713821926852258806210387669237144400278914671533438653274777493140545293541785377162348524402063489947660558889561219968642920852870483050552936324125257259316643328803697665037881088889859735075814746314563786538493931260996669892959501637800179548654075887300734264333417283208357503038004080669367070111848040502362219"
151-
string(18) "255344473360201232"
152-
string(192) "566276705882089203328999735915155615747289398229935944715725865523491463654289449864817867794422824157675456435165973986660058784111212531276312901205233176071526587181942240113004108328736022"
153-
string(3) "766"
154-
string(31) "1251852006013618829761115383588"
155-
string(301) "2904442664575028522451529381233481137998826790384445089758175726247096826023839957531211794198483328480161675791738894500687706952157332727908305084432443942315866545175274665372161864357698401817740956147940095302549920711069038378541222669595494627580205085300332122174778540693048337420608925104417"
156-
string(4) "5969"
157-
string(5) "-4126"
158-
string(4) "-926"
116+
string(3) "107"
117+
string(30) "576055025228722307492589900056"
118+
string(301) "5075491613651149525976453192895895253653438900772590630831858908690082668789318258254821002217677675804439098856210618572534955562143303188483908287009522532300439665975877709754914215718998849272363858786685187951932478210775857465448084868199807983919191214972626993925394176279001074206804955195464"
119+
string(4) "4098"
120+
string(3) "866"
121+
string(5) "-4602"
159122
NULL
160-
string(386) "16100871751340485642888774479422205950971474538471317276388238970713821926852258806210387669237144400278914671533438653274777493140545293541785377162348524402063489947660558889561219968642920852870483050552936324125257259316643328803697665037881088889859735075814746314563786538493931260996669892959501637800179548654075887300734264333417283208357503038004080669367070111848040502362219"
161-
string(18) "255344473360201232"
162-
string(192) "566276705882089203328999735915155615747289398229935944715725865523491463654289449864817867794422824157675456435165973986660058784111212531276312901205233176071526587181942240113004108328736022"
163-
string(3) "766"
164-
string(31) "1251852006013618829761115383588"
165-
string(301) "2904442664575028522451529381233481137998826790384445089758175726247096826023839957531211794198483328480161675791738894500687706952157332727908305084432443942315866545175274665372161864357698401817740956147940095302549920711069038378541222669595494627580205085300332122174778540693048337420608925104417"
166-
string(4) "5969"
167-
string(5) "-4126"
168-
string(4) "-926"
123+
string(3) "107"
124+
string(30) "576055025228722307492589900056"
125+
string(301) "5075491613651149525976453192895895253653438900772590630831858908690082668789318258254821002217677675804439098856210618572534955562143303188483908287009522532300439665975877709754914215718998849272363858786685187951932478210775857465448084868199807983919191214972626993925394176279001074206804955195464"
126+
string(4) "4098"
127+
string(3) "866"
128+
string(5) "-4602"
169129
NULL
170-
string(386) "13477111096113160882601567427091178332669645276785709413953468738199940626922635042144840457533224221336117027441609364710893482124071124759231943384805378201041406842697962243732316555316214869988749798708139879922380266366387589101775891621221881149417841139463207495993669582399783202126977651864760442797681787747348653884279195479310922110107643437514016795836672871442926389274400"
171-
string(20) "15370156633245019617"
172-
string(192) "294354325919119835375781661354719128667828860233586416953977190644006896604022494655398295674227944872858213051595447565156112646032890737200590095517623075051828676500990477704073251304424133"
173-
string(3) "683"
174-
string(31) "1105092118036828878542238774672"
175-
string(301) "2700084798786584694260166508009114488318099110808331607090845844712329387915039325877090587052399841255219556028410036280510827424748532204766771994624650610348058361519239518625728955462297681525123214377383395734875500143425080808436274385326255154393544373636015993206705180032889399161843788895374"
176-
string(4) "7268"
177-
string(5) "-3518"
178-
string(5) "-8432"
130+
string(3) "800"
131+
string(30) "136797365759249926716355081555"
132+
string(300) "983682312243221532860194306859606025979259367996304596374614332718375645173854152266611727577102182844028492473112400528817154210713755887896949560718745264129216953815968005630126359941634684721501777057142617647654380585317016323758806063124938232519551123440573348326061244006512869165793958775168"
133+
string(4) "1029"
134+
string(4) "7093"
135+
string(5) "-9074"
179136
NULL
180-
string(386) "13477111096113160882601567427091178332669645276785709413953468738199940626922635042144840457533224221336117027441609364710893482124071124759231943384805378201041406842697962243732316555316214869988749798708139879922380266366387589101775891621221881149417841139463207495993669582399783202126977651864760442797681787747348653884279195479310922110107643437514016795836672871442926389274400"
181-
string(20) "15370156633245019617"
182-
string(192) "294354325919119835375781661354719128667828860233586416953977190644006896604022494655398295674227944872858213051595447565156112646032890737200590095517623075051828676500990477704073251304424133"
183-
string(3) "683"
184-
string(31) "1105092118036828878542238774672"
185-
string(301) "2700084798786584694260166508009114488318099110808331607090845844712329387915039325877090587052399841255219556028410036280510827424748532204766771994624650610348058361519239518625728955462297681525123214377383395734875500143425080808436274385326255154393544373636015993206705180032889399161843788895374"
186-
string(4) "7268"
187-
string(5) "-3518"
188-
string(5) "-8432"
137+
string(3) "800"
138+
string(30) "136797365759249926716355081555"
139+
string(300) "983682312243221532860194306859606025979259367996304596374614332718375645173854152266611727577102182844028492473112400528817154210713755887896949560718745264129216953815968005630126359941634684721501777057142617647654380585317016323758806063124938232519551123440573348326061244006512869165793958775168"
140+
string(4) "1029"
141+
string(4) "7093"
142+
string(5) "-9074"
189143
NULL
190-
string(386) "13477111096113160882601567427091178332669645276785709413953468738199940626922635042144840457533224221336117027441609364710893482124071124759231943384805378201041406842697962243732316555316214869988749798708139879922380266366387589101775891621221881149417841139463207495993669582399783202126977651864760442797681787747348653884279195479310922110107643437514016795836672871442926389274400"
191-
string(20) "15370156633245019617"
192-
string(192) "294354325919119835375781661354719128667828860233586416953977190644006896604022494655398295674227944872858213051595447565156112646032890737200590095517623075051828676500990477704073251304424133"
193-
string(3) "683"
194-
string(31) "1105092118036828878542238774672"
195-
string(301) "2700084798786584694260166508009114488318099110808331607090845844712329387915039325877090587052399841255219556028410036280510827424748532204766771994624650610348058361519239518625728955462297681525123214377383395734875500143425080808436274385326255154393544373636015993206705180032889399161843788895374"
196-
string(4) "7268"
197-
string(5) "-3518"
198-
string(5) "-8432"
144+
string(3) "800"
145+
string(30) "136797365759249926716355081555"
146+
string(300) "983682312243221532860194306859606025979259367996304596374614332718375645173854152266611727577102182844028492473112400528817154210713755887896949560718745264129216953815968005630126359941634684721501777057142617647654380585317016323758806063124938232519551123440573348326061244006512869165793958775168"
147+
string(4) "1029"
148+
string(4) "7093"
149+
string(5) "-9074"
199150
NULL
200-
string(386) "13477111096113160882601567427091178332669645276785709413953468738199940626922635042144840457533224221336117027441609364710893482124071124759231943384805378201041406842697962243732316555316214869988749798708139879922380266366387589101775891621221881149417841139463207495993669582399783202126977651864760442797681787747348653884279195479310922110107643437514016795836672871442926389274400"
201-
string(20) "15370156633245019617"
202-
string(192) "294354325919119835375781661354719128667828860233586416953977190644006896604022494655398295674227944872858213051595447565156112646032890737200590095517623075051828676500990477704073251304424133"
203-
string(3) "683"
204-
string(31) "1105092118036828878542238774672"
205-
string(301) "2700084798786584694260166508009114488318099110808331607090845844712329387915039325877090587052399841255219556028410036280510827424748532204766771994624650610348058361519239518625728955462297681525123214377383395734875500143425080808436274385326255154393544373636015993206705180032889399161843788895374"
206-
string(4) "7268"
207-
string(5) "-3518"
208-
string(5) "-8432"
151+
string(3) "800"
152+
string(30) "136797365759249926716355081555"
153+
string(300) "983682312243221532860194306859606025979259367996304596374614332718375645173854152266611727577102182844028492473112400528817154210713755887896949560718745264129216953815968005630126359941634684721501777057142617647654380585317016323758806063124938232519551123440573348326061244006512869165793958775168"
154+
string(4) "1029"
155+
string(4) "7093"
156+
string(5) "-9074"
209157
NULL
210-
string(386) "17517289823903393220742578279919954815229524740463730368402128237511862318453381595675765692750750649609755422480004471234960388086555321894591036872550129477305413674775698107868844953599169316550102271816620108199930104365341610775602960735862041722613145476720452800951958891882288668416542937408952006310656170195090436314902430700708511047189929836145291647101130135292078875631354"
211-
string(19) "1662391866670215057"
212-
string(193) "1951928859951518261564127834731454911658112769477733872890285741065126442731035642243573666695893929882207432512593006044657806021743917753379619843420559355572830613932424235592411658293328273"
213-
string(3) "888"
214-
string(30) "136524289584478309125073026188"
215-
string(301) "4487372666528061674404740793683112894444118579769413902123304803304884162086348577960502430419080687314731489440882833272125181594897832730214825704339272207090970657364333461383490282984012738008555512699878911293400686609929745464733074891420787002129849587668122219953473716759349853748437799165176"
216-
string(4) "8559"
217-
string(4) "9426"
218-
string(5) "-2932"
158+
string(3) "762"
159+
string(30) "822340340897453415684831711085"
160+
string(301) "7240560133683902061389868703829443708354917824328579773726122219756981024103097560162756171513655189995985599958252688592185764428631571614485572869738344560301294144844739876478557439580966605216861285841689262517286639329902832431755450003123084728943981078635297917573398492558065003906539489023830"
161+
string(4) "9636"
162+
string(5) "-9848"
163+
string(5) "-9648"
219164
NULL
220-
string(386) "17517289823903393220742578279919954815229524740463730368402128237511862318453381595675765692750750649609755422480004471234960388086555321894591036872550129477305413674775698107868844953599169316550102271816620108199930104365341610775602960735862041722613145476720452800951958891882288668416542937408952006310656170195090436314902430700708511047189929836145291647101130135292078875631354"
221-
string(19) "1662391866670215057"
222-
string(193) "1951928859951518261564127834731454911658112769477733872890285741065126442731035642243573666695893929882207432512593006044657806021743917753379619843420559355572830613932424235592411658293328273"
223-
string(3) "888"
224-
string(30) "136524289584478309125073026188"
225-
string(301) "4487372666528061674404740793683112894444118579769413902123304803304884162086348577960502430419080687314731489440882833272125181594897832730214825704339272207090970657364333461383490282984012738008555512699878911293400686609929745464733074891420787002129849587668122219953473716759349853748437799165176"
226-
string(4) "8559"
227-
string(4) "9426"
228-
string(5) "-2932"
165+
string(3) "762"
166+
string(30) "822340340897453415684831711085"
167+
string(301) "7240560133683902061389868703829443708354917824328579773726122219756981024103097560162756171513655189995985599958252688592185764428631571614485572869738344560301294144844739876478557439580966605216861285841689262517286639329902832431755450003123084728943981078635297917573398492558065003906539489023830"
168+
string(4) "9636"
169+
string(5) "-9848"
170+
string(5) "-9648"
229171

230172
Warning: gmp_random_seed(): Unable to convert variable to GMP - string is not an integer in %s on line %d
231173
bool(false)

0 commit comments

Comments
 (0)