aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--boot.php8
-rw-r--r--include/text.php8
-rw-r--r--mod/register.php2
3 files changed, 9 insertions, 9 deletions
diff --git a/boot.php b/boot.php
index d5adbd7cf..3bdbe2db2 100644
--- a/boot.php
+++ b/boot.php
@@ -610,12 +610,12 @@ function check_config(&$a) {
}}
-function get_guid() {
- $exists = true;
+function get_guid($size=16) {
+ $exists = true; // assume by default that we don't have a unique guid
do {
- $s = random_string(16);
+ $s = random_string($size);
$r = q("select id from guid where guid = '%s' limit 1", dbesc($s));
- if(! results($r))
+ if(! count($r))
$exists = false;
} while($exists);
q("insert into guid ( guid ) values ( '%s' ) ", dbesc($s));
diff --git a/include/text.php b/include/text.php
index d53a2ceb9..297383602 100644
--- a/include/text.php
+++ b/include/text.php
@@ -19,11 +19,11 @@ function replace_macros($s,$r) {
}}
-// random hash, 64 chars
+// random hex string, 64 chars max
if(! function_exists('random_string')) {
-function random_string() {
- return(hash('sha256',uniqid(rand(),true)));
+function random_string($size = 64) {
+ return(substr(hash('sha256',uniqid(rand(),true)),0,$size));
}}
/**
@@ -878,7 +878,7 @@ function return_bytes ($size_str) {
}
}}
-function generate_guid() {
+function generate_user_guid() {
$found = true;
do {
$guid = substr(random_string(),0,16);
diff --git a/mod/register.php b/mod/register.php
index a8d81f1f6..fbd21a567 100644
--- a/mod/register.php
+++ b/mod/register.php
@@ -201,7 +201,7 @@ function register_post(&$a) {
$r = q("INSERT INTO `user` ( `guid`, `username`, `password`, `email`, `openid`, `nickname`,
`pubkey`, `prvkey`, `spubkey`, `sprvkey`, `register_date`, `verified`, `blocked` )
VALUES ( '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d )",
- dbesc(generate_guid()),
+ dbesc(generate_user_guid()),
dbesc($username),
dbesc($new_password_encoded),
dbesc($email),