X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fdfrn_confirm.php;h=001fa446891b28eaf205b763d8168dff26005a1f;hb=3d1626781d473330b9d11ddea8e68d7fee237708;hp=e30617663019b47503a8d3bf038aebb14b6409c6;hpb=e8e1f9253da63a11c813708f5baaeba2d9f537f3;p=friendica.git diff --git a/mod/dfrn_confirm.php b/mod/dfrn_confirm.php index e306176630..001fa44689 100644 --- a/mod/dfrn_confirm.php +++ b/mod/dfrn_confirm.php @@ -22,7 +22,7 @@ require_once('include/enotify.php'); require_once('include/group.php'); require_once('include/Probe.php'); -function dfrn_confirm_post(&$a,$handsfree = null) { +function dfrn_confirm_post(App $a, $handsfree = null) { if(is_array($handsfree)) { @@ -121,7 +121,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { intval($uid) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('Contact not found in DB.'); notice( t('Contact not found.') . EOL ); notice( t('This may occasionally happen if contact was requested by both persons and it has already been approved.') . EOL ); @@ -185,16 +185,16 @@ function dfrn_confirm_post(&$a,$handsfree = null) { * */ - $src_aes_key = random_string(); + $src_aes_key = openssl_random_pseudo_bytes(64); $result = ''; - openssl_private_encrypt($dfrn_id,$result,$user[0]['prvkey']); + openssl_private_encrypt($dfrn_id, $result, $user[0]['prvkey']); $params['dfrn_id'] = bin2hex($result); $params['public_key'] = $public_key; - $my_url = $a->get_baseurl() . '/profile/' . $user[0]['nickname']; + $my_url = App::get_baseurl() . '/profile/' . $user[0]['nickname']; openssl_public_encrypt($my_url, $params['source_url'], $site_pubkey); $params['source_url'] = bin2hex($params['source_url']); @@ -224,9 +224,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { * */ - $a->config['system']['curl_timeout'] = 120; - - $res = post_url($dfrn_confirm,$params); + $res = post_url($dfrn_confirm, $params, null, $redirects, 120); logger(' Confirm: received data: ' . $res, LOGGER_DATA); @@ -415,23 +413,26 @@ function dfrn_confirm_post(&$a,$handsfree = null) { ); } - if($r === false) - notice( t('Unable to set contact photo.') . EOL); + /// @TODO is dbm::is_result() working here? + if ($r === false) { + notice( t('Unable to set contact photo.') . EOL); + } // reload contact info $r = q("SELECT * FROM `contact` WHERE `id` = %d LIMIT 1", intval($contact_id) ); - if (dbm::is_result($r)) + if (dbm::is_result($r)) { $contact = $r[0]; - else + } else { $contact = null; + } - if((isset($new_relation) && $new_relation == CONTACT_IS_FRIEND)) { + if ((isset($new_relation) && $new_relation == CONTACT_IS_FRIEND)) { - if(($contact) && ($contact['network'] === NETWORK_DIASPORA)) { + if (($contact) && ($contact['network'] === NETWORK_DIASPORA)) { require_once('include/diaspora.php'); $ret = Diaspora::send_share($user[0],$r[0]); logger('share returns: ' . $ret); @@ -503,10 +504,11 @@ function dfrn_confirm_post(&$a,$handsfree = null) { // Let's send our user to the contact editor in case they want to // do anything special with this new friend. - if($handsfree === null) - goaway($a->get_baseurl() . '/contacts/' . intval($contact_id)); - else + if ($handsfree === null) { + goaway(App::get_baseurl() . '/contacts/' . intval($contact_id)); + } else { return; + } //NOTREACHED } @@ -522,7 +524,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { * */ - if(x($_POST,'source_url')) { + if (x($_POST,'source_url')) { // We are processing an external confirmation to an introduction created by our user. @@ -543,7 +545,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { // If $aes_key is set, both of these items require unpacking from the hex transport encoding. - if(x($aes_key)) { + if (x($aes_key)) { $aes_key = hex2bin($aes_key); $public_key = hex2bin($public_key); } @@ -553,7 +555,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { $r = q("SELECT * FROM `user` WHERE `nickname` = '%s' LIMIT 1", dbesc($node)); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $message = sprintf(t('No user record found for \'%s\' '), $node); xml_status(3,$message); // failure // NOTREACHED @@ -584,17 +586,18 @@ function dfrn_confirm_post(&$a,$handsfree = null) { dbesc($decrypted_source_url), intval($local_uid) ); - if(! count($ret)) { - if(strstr($decrypted_source_url,'http:')) + if (!dbm::is_result($ret)) { + if (strstr($decrypted_source_url,'http:')) { $newurl = str_replace('http:','https:',$decrypted_source_url); - else + } else { $newurl = str_replace('https:','http:',$decrypted_source_url); + } $ret = q("SELECT * FROM `contact` WHERE `url` = '%s' AND `uid` = %d LIMIT 1", dbesc($newurl), intval($local_uid) ); - if(! count($ret)) { + if (!dbm::is_result($ret)) { // this is either a bogus confirmation (?) or we deleted the original introduction. $message = t('Contact record was not found for you on our site.'); xml_status(3,$message); @@ -609,7 +612,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { $foreign_pubkey = $ret[0]['site-pubkey']; $dfrn_record = $ret[0]['id']; - if(! $foreign_pubkey) { + if (! $foreign_pubkey) { $message = sprintf( t('Site public key not available in contact record for URL %s.'), $newurl); xml_status(3,$message); } @@ -617,7 +620,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { $decrypted_dfrn_id = ""; openssl_public_decrypt($dfrn_id,$decrypted_dfrn_id,$foreign_pubkey); - if(strlen($aes_key)) { + if (strlen($aes_key)) { $decrypted_aes_key = ""; openssl_private_decrypt($aes_key,$decrypted_aes_key,$my_prvkey); $dfrn_pubkey = openssl_decrypt($public_key,'AES-256-CBC',$decrypted_aes_key); @@ -640,7 +643,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { dbesc($dfrn_pubkey), intval($dfrn_record) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $message = t('Unable to set your contact credentials on our system.'); xml_status(3,$message); } @@ -661,10 +664,11 @@ function dfrn_confirm_post(&$a,$handsfree = null) { $r = q("SELECT `photo` FROM `contact` WHERE `id` = %d LIMIT 1", intval($dfrn_record)); - if (dbm::is_result($r)) + if (dbm::is_result($r)) { $photo = $r[0]['photo']; - else - $photo = $a->get_baseurl() . '/images/person-175.jpg'; + } else { + $photo = App::get_baseurl() . '/images/person-175.jpg'; + } require_once("include/Photo.php"); @@ -673,11 +677,13 @@ function dfrn_confirm_post(&$a,$handsfree = null) { logger('dfrn_confirm: request - photos imported'); $new_relation = CONTACT_IS_SHARING; - if(($relation == CONTACT_IS_FOLLOWER) || ($duplex)) + if (($relation == CONTACT_IS_FOLLOWER) || ($duplex)) { $new_relation = CONTACT_IS_FRIEND; + } - if(($relation == CONTACT_IS_FOLLOWER) && ($duplex)) + if (($relation == CONTACT_IS_FOLLOWER) && ($duplex)) { $duplex = 0; + } $r = q("UPDATE `contact` SET `rel` = %d, @@ -699,7 +705,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { dbesc(NETWORK_DFRN), intval($dfrn_record) ); - if($r === false) { // indicates schema is messed up or total db failure + if ($r === false) { // indicates schema is messed up or total db failure $message = t('Unable to update your contact profile details on our system'); xml_status(3,$message); } @@ -726,7 +732,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { 'to_name' => $r[0]['username'], 'to_email' => $r[0]['email'], 'uid' => $r[0]['uid'], - 'link' => $a->get_baseurl() . '/contacts/' . $dfrn_record, + 'link' => App::get_baseurl() . '/contacts/' . $dfrn_record, 'source_name' => ((strlen(stripslashes($r[0]['name']))) ? stripslashes($r[0]['name']) : t('[Name Withheld]')), 'source_link' => $r[0]['url'], 'source_photo' => $r[0]['photo'],