]> git.mxchange.org Git - friendica.git/commitdiff
double url encode diaspora communications
authorFriendika <info@friendika.com>
Fri, 19 Aug 2011 09:24:30 +0000 (02:24 -0700)
committerFriendika <info@friendika.com>
Fri, 19 Aug 2011 09:24:30 +0000 (02:24 -0700)
include/diaspora.php
include/notifier.php
mod/receive.php

index 44772d431634d11eee8940021010c271bfec1994..9b3969b73af652a411c3f372b1039d3ca2741845 100644 (file)
@@ -792,7 +792,7 @@ function diaspora_share($me,$contact) {
                '$recipient' => $theiraddr
        ));
 
-       $slap = 'xml=' . urlencode(diaspora_msg_build($msg,$me,$contact,$me['prvkey'],$contact['pubkey']));
+       $slap = 'xml=' . urlencode(urlencode(diaspora_msg_build($msg,$me,$contact,$me['prvkey'],$contact['pubkey'])));
 
        post_url($contact['notify'],$slap);
        $return_code = $a->get_curl_code();
@@ -823,7 +823,7 @@ function diaspora_send_status($item,$owner,$contact) {
 
        logger('diaspora_send_status: base message: ' . $msg, LOGGER_DATA);
 
-       $slap = 'xml=' . urlencode(diaspora_msg_build($msg,$owner,$contact,$owner['uprvkey'],$contact['pubkey']));
+       $slap = 'xml=' . urlencode(urlencode(diaspora_msg_build($msg,$owner,$contact,$owner['uprvkey'],$contact['pubkey'])));
 
        post_url($contact['notify'],$slap);
        $return_code = $a->get_curl_code();
@@ -835,7 +835,7 @@ function diaspora_send_status($item,$owner,$contact) {
 function diaspora_send_followup($item,$owner,$contact) {
 
        $a = get_app();
-       $myaddr = $me['nickname'] . '@' .  substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3);
+       $myaddr = $owner['nickname'] . '@' .  substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3);
        $theiraddr = $contact['addr'];
 
        $p = q("select guid from item where parent = %d limit 1",
@@ -864,7 +864,7 @@ function diaspora_send_followup($item,$owner,$contact) {
        if($like)
                $signed_text = $item['guid'] . ';' . $target_type . ';' . $positive . ';' . $myaddr;
        else
-               $signed_text = $item['guid'] . ';' . $parent_guid . ';' . $text . $myaddr;
+               $signed_text = $item['guid'] . ';' . $parent_guid . ';' . $text . ';' . $myaddr;
 
        $authorsig = base64_encode(rsa_sign($signed_text,$owner['uprvkey']));
 
@@ -873,14 +873,14 @@ function diaspora_send_followup($item,$owner,$contact) {
                '$parent_guid' => xmlify($parent_guid),
                '$target_type' =>xmlify($target_type),
                '$authorsig' => xmlify($authorsig),
-               '$text' => xmlify($text),
+               '$body' => xmlify($text),
                '$positive' => xmlify($positive),
-               '$diaspora_handle' => xmlify($myaddr)
+               '$handle' => xmlify($myaddr)
        ));
 
        logger('diaspora_followup: base message: ' . $msg, LOGGER_DATA);
 
-       $slap = 'xml=' . urlencode(diaspora_msg_build($msg,$owner,$contact,$owner['uprvkey'],$contact['pubkey']));
+       $slap = 'xml=' . urlencode(urlencode(diaspora_msg_build($msg,$owner,$contact,$owner['uprvkey'],$contact['pubkey'])));
 
        post_url($contact['notify'],$slap);
        $return_code = $a->get_curl_code();
@@ -893,6 +893,11 @@ function diaspora_send_followup($item,$owner,$contact) {
 function diaspora_send_relay($item,$owner,$contact) {
 
 
+       $a = get_app();
+       $myaddr = $owner['nickname'] . '@' .  substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3);
+       $theiraddr = $contact['addr'];
+
+
        $p = q("select guid from item where parent = %d limit 1",
                $item['parent']
        );
@@ -951,7 +956,7 @@ function diaspora_send_relay($item,$owner,$contact) {
 
        logger('diaspora_relay_comment: base message: ' . $msg, LOGGER_DATA);
 
-       $slap = 'xml=' . urlencode(diaspora_msg_build($msg,$owner,$contact,$owner['uprvkey'],$contact['pubkey']));
+       $slap = 'xml=' . urlencode(urlencode(diaspora_msg_build($msg,$owner,$contact,$owner['uprvkey'],$contact['pubkey'])));
 
        post_url($contact['notify'],$slap);
        $return_code = $a->get_curl_code();
index 8572b53dde1647747f2a0b4f6cf3629aff3a903f..cf8871fb9db6db03546101dc9a29539bffaaf350 100644 (file)
@@ -502,7 +502,8 @@ function notifier_run($argv, $argc){
                                        }
                                        break;
                                case NETWORK_DIASPORA:
-                                       if(get_config('system','dfrn_only') || (! get_config('diaspora_enabled')) || (! $normal_mode))
+                                       require_once('include/diaspora.php');
+                                       if(get_config('system','dfrn_only') || (! get_config('system','diaspora_enabled')) || (! $normal_mode))
                                                break;
                                        
                                        if($target_item['verb'] === ACTIVITY_DISLIKE) {
index 19c16396718decd69aca67d02611a67996dad145..c3738c1431c20e28221e24ad79bdc31cf96648e3 100644 (file)
@@ -15,6 +15,8 @@ function receive_post(&$a) {
        if($a->argc != 3 || $a->argv[1] !== 'users')
                http_status_exit(500);
 
+       logger('receive: raw input: ' . file_get_contents('php://input'), LOGGER_DATA);
+
        $guid = $a->argv[2];
 
        $r = q("SELECT * FROM `user` WHERE `guid` = '%s' LIMIT 1",