diff options
-rw-r--r-- | mod/dfrn_request.php | 8 | ||||
-rw-r--r-- | mod/follow.php | 6 |
2 files changed, 9 insertions, 5 deletions
diff --git a/mod/dfrn_request.php b/mod/dfrn_request.php index 6850f4be4..742d25142 100644 --- a/mod/dfrn_request.php +++ b/mod/dfrn_request.php @@ -590,8 +590,12 @@ function dfrn_request_content(&$a) { $myaddr = $a->user['nickname'] . '@' . substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3 ); } } - else { - $myaddr = ((x($_GET,'address')) ? urldecode($_GET['address']) : ''); + elseif($x($_GET,'addr')) { + $myaddr = hex2bin($_GET['addr']); + } + else { + /* $_GET variables are already urldecoded */ + $myaddr = ((x($_GET,'address')) ? $_GET['address'] : ''); } /** diff --git a/mod/follow.php b/mod/follow.php index 3c9d77657..14bdb9fc6 100644 --- a/mod/follow.php +++ b/mod/follow.php @@ -38,11 +38,11 @@ function follow_post(&$a) { $ret = scrape_dfrn($dfrn); if(is_array($ret) && x($ret,'dfrn-request')) { if(strlen($a->path)) - $myaddr = urlencode($a->get_baseurl() . '/profile/' . $a->user['nickname']); + $myaddr = bin2hex($a->get_baseurl() . '/profile/' . $a->user['nickname']); else - $myaddr = urlencode($a->user['nickname'] . '@' . $a->get_hostname()); + $myaddr = bin2hex($a->user['nickname'] . '@' . $a->get_hostname()); - goaway($ret['dfrn-request'] . "&address=$myaddr"); + goaway($ret['dfrn-request'] . "&addr=$myaddr"); // NOTREACHED } |