jimjag Tue Feb 6 08:27:09 2001 EDT
Modified files:
/php4/ext/standard array.c crypt.c rand.c
/php4 ChangeLog NEWS
Log:
For those lucky systems with both random() and *rand48(), the random()
family is the prefered choice. So if both exist, we now choose that.
Index: php4/ext/standard/array.c
diff -u php4/ext/standard/array.c:1.90 php4/ext/standard/array.c:1.91
--- php4/ext/standard/array.c:1.90 Mon Jan 22 09:27:02 2001
+++ php4/ext/standard/array.c Tue Feb 6 08:27:08 2001
@@ -20,7 +20,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: array.c,v 1.90 2001/01/22 17:27:02 andrei Exp $ */
+/* $Id: array.c,v 1.91 2001/02/06 16:27:08 jimjag Exp $ */
#include "php.h"
#include "php_ini.h"
@@ -1328,12 +1328,12 @@
static int array_data_shuffle(const void *a, const void*b) {
return (
/* This is just a little messy. */
-#ifdef HAVE_LRAND48
- lrand48()
-#else
#ifdef HAVE_RANDOM
random()
#else
+#ifdef HAVE_LRAND48
+ lrand48()
+#else
rand()
#endif
#endif
@@ -2703,11 +2703,11 @@
zend_hash_internal_pointer_reset(Z_ARRVAL_PP(input));
while (num_req_val && (key_type =
zend_hash_get_current_key(Z_ARRVAL_PP(input), &string_key, &num_key, 0)) !=
HASH_KEY_NON_EXISTANT) {
-#ifdef HAVE_LRAND48
- randval = lrand48();
-#else
#ifdef HAVE_RANDOM
randval = random();
+#else
+#ifdef HAVE_LRAND48
+ randval = lrand48();
#else
randval = rand();
#endif
Index: php4/ext/standard/crypt.c
diff -u php4/ext/standard/crypt.c:1.34 php4/ext/standard/crypt.c:1.35
--- php4/ext/standard/crypt.c:1.34 Mon Jan 8 13:13:24 2001
+++ php4/ext/standard/crypt.c Tue Feb 6 08:27:08 2001
@@ -17,7 +17,7 @@
| Rasmus Lerdorf <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
*/
-/* $Id: crypt.c,v 1.34 2001/01/08 21:13:24 derick Exp $ */
+/* $Id: crypt.c,v 1.35 2001/02/06 16:27:08 jimjag Exp $ */
#include <stdlib.h>
#include "php.h"
@@ -85,10 +85,10 @@
#define PHP_STD_DES_CRYPT 1
#endif
-#if HAVE_LRAND48
-#define PHP_CRYPT_RAND lrand48()
-#elif HAVE_RANDOM
+#if HAVE_RANDOM
#define PHP_CRYPT_RAND random()
+#elif HAVE_LRAND48
+#define PHP_CRYPT_RAND lrand48()
#else
#define PHP_CRYPT_RAND rand()
#endif
@@ -105,10 +105,10 @@
REGISTER_LONG_CONSTANT("CRYPT_MD5", PHP_MD5_CRYPT, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CRYPT_BLOWFISH", PHP_BLOWFISH_CRYPT, CONST_CS |
CONST_PERSISTENT);
-#if HAVE_SRAND48
- srand48((long) time(0) * (long) getpid() * (long) (php_combined_lcg() *
10000.0));
-#elif HAVE_SRANDOM
+#if HAVE_SRANDOM
srandom((unsigned int) time(0) * getpid() * (php_combined_lcg() * 10000.0));
+#elif HAVE_SRAND48
+ srand48((long) time(0) * (long) getpid() * (long) (php_combined_lcg() *
+10000.0));
#else
srand((unsigned int) time(0) * getpid() * (php_combined_lcg() * 10000.0));
#endif
Index: php4/ext/standard/rand.c
diff -u php4/ext/standard/rand.c:1.21 php4/ext/standard/rand.c:1.22
--- php4/ext/standard/rand.c:1.21 Tue Jul 18 04:02:28 2000
+++ php4/ext/standard/rand.c Tue Feb 6 08:27:08 2001
@@ -19,7 +19,7 @@
| Based on code from: Shawn Cokus <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
*/
-/* $Id: rand.c,v 1.21 2000/07/18 11:02:28 ssb Exp $ */
+/* $Id: rand.c,v 1.22 2001/02/06 16:27:08 jimjag Exp $ */
#include <stdlib.h>
@@ -199,12 +199,12 @@
WRONG_PARAM_COUNT;
}
convert_to_long_ex(arg);
-#ifdef HAVE_SRAND48
- srand48((unsigned int) (*arg)->value.lval);
-#else
#ifdef HAVE_SRANDOM
srandom((unsigned int) (*arg)->value.lval);
#else
+#ifdef HAVE_SRAND48
+ srand48((unsigned int) (*arg)->value.lval);
+#else
srand((unsigned int) (*arg)->value.lval);
#endif
#endif
@@ -253,11 +253,11 @@
}
return_value->type = IS_LONG;
-#ifdef HAVE_LRAND48
- return_value->value.lval = lrand48();
-#else
#ifdef HAVE_RANDOM
return_value->value.lval = random();
+#else
+#ifdef HAVE_LRAND48
+ return_value->value.lval = lrand48();
#else
return_value->value.lval = rand();
#endif
Index: php4/ChangeLog
diff -u php4/ChangeLog:1.610 php4/ChangeLog:1.611
--- php4/ChangeLog:1.610 Mon Feb 5 18:09:23 2001
+++ php4/ChangeLog Tue Feb 6 08:27:08 2001
@@ -1,3 +1,10 @@
+2001-02-06 Jim Jagielski <[EMAIL PROTECTED]>
+
+ * ext/standard/array.c:
+ ext/standard/crypt.c:
+ ext/standard/rand.c:
+ Prefer the random() family over the *rand48() one
+
2001-02-05 Zeev Suraski <[EMAIL PROTECTED]>
* ext/com/typedef_VARIANT.c
Index: php4/NEWS
diff -u php4/NEWS:1.583 php4/NEWS:1.584
--- php4/NEWS:1.583 Mon Feb 5 19:54:14 2001
+++ php4/NEWS Tue Feb 6 08:27:08 2001
@@ -2,6 +2,7 @@
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 200?, Version 4.0.5
+- Prefer random() over *rand48() (JimJag)
- Sped up WDDX serialization 2x. (Andrei)
- Added a new parameter to mail() which appends aditional command line
parameters to the mail program. (Derick)
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]