upload connection graphics & update doxygen headers to insert link to the spec
This commit is contained in:
parent
a7fbc994e0
commit
ac39928e5d
7 changed files with 405 additions and 16 deletions
|
@ -1,17 +1,21 @@
|
|||
<?php
|
||||
|
||||
/*
|
||||
* Module: dfrn_confirm
|
||||
/**
|
||||
* @file mod/dfrn_confirm.php
|
||||
* @brief Module: dfrn_confirm
|
||||
* Purpose: Friendship acceptance for DFRN contacts
|
||||
*
|
||||
*.
|
||||
* There are two possible entry points and three scenarios.
|
||||
*
|
||||
*.
|
||||
* 1. A form was submitted by our user approving a friendship that originated elsewhere.
|
||||
* This may also be called from dfrn_request to automatically approve a friendship.
|
||||
*
|
||||
* 2. We may be the target or other side of the conversation to scenario 1, and will
|
||||
* interact with that process on our own user's behalf.
|
||||
*
|
||||
*.
|
||||
* @see PDF with dfrn specs: https://github.com/friendica/friendica/blob/master/spec/dfrn2.pdf
|
||||
* You also find a graphic which describes the confirmation process at
|
||||
* https://github.com/friendica/friendica/blob/master/spec/dfrn2_contact_confirmation.png
|
||||
*/
|
||||
|
||||
require_once('include/enotify.php');
|
||||
|
@ -22,7 +26,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
|||
|
||||
if(is_array($handsfree)) {
|
||||
|
||||
/**
|
||||
/*
|
||||
* We were called directly from dfrn_request due to automatic friend acceptance.
|
||||
* Any $_POST parameters we may require are supplied in the $handsfree array.
|
||||
*
|
||||
|
@ -37,7 +41,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
|||
$node = $a->argv[1];
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
*
|
||||
* Main entry point. Scenario 1. Our user received a friend request notification (perhaps
|
||||
* from another site) and clicked 'Approve'.
|
||||
|
@ -87,7 +91,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
|||
$activity = ((x($_POST,'activity')) ? intval($_POST['activity']) : 0 );
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
*
|
||||
* Ensure that dfrn_id has precedence when we go to find the contact record.
|
||||
* We only want to search based on contact id if there is no dfrn_id,
|
||||
|
@ -103,7 +107,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
|||
logger('Confirming follower with contact_id: ' . $cid);
|
||||
|
||||
|
||||
/**
|
||||
/*
|
||||
*
|
||||
* The other person will have been issued an ID when they first requested friendship.
|
||||
* Locate their record. At this time, their record will have both pending and blocked set to 1.
|
||||
|
@ -139,7 +143,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
|||
|
||||
if($network === NETWORK_DFRN) {
|
||||
|
||||
/**
|
||||
/*
|
||||
*
|
||||
* Generate a key pair for all further communications with this person.
|
||||
* We have a keypair for every contact, and a site key for unknown people.
|
||||
|
@ -166,7 +170,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
|||
|
||||
$params = array();
|
||||
|
||||
/**
|
||||
/*
|
||||
*
|
||||
* Per the DFRN protocol, we will verify both ends by encrypting the dfrn_id with our
|
||||
* site private key (person on the other end can decrypt it with our site public key).
|
||||
|
@ -212,7 +216,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
|||
|
||||
logger('Confirm: posting data to ' . $dfrn_confirm . ': ' . print_r($params,true), LOGGER_DATA);
|
||||
|
||||
/**
|
||||
/*
|
||||
*
|
||||
* POST all this stuff to the other site.
|
||||
* Temporarily raise the network timeout to 120 seconds because the default 60
|
||||
|
@ -506,7 +510,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
|||
//NOTREACHED
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
*
|
||||
*
|
||||
* End of Scenario 1. [Local confirmation of remote friend request].
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* @file mod/dfrn_notify.php
|
||||
* @brief The dfrn notify endpoint
|
||||
* @see PDF with dfrn specs: https://github.com/friendica/friendica/blob/master/spec/dfrn2.pdf
|
||||
*/
|
||||
require_once('include/items.php');
|
||||
require_once('include/dfrn.php');
|
||||
require_once('include/event.php');
|
||||
|
@ -7,7 +12,7 @@ require_once('include/event.php');
|
|||
require_once('library/defuse/php-encryption-1.2.1/Crypto.php');
|
||||
|
||||
function dfrn_notify_post(&$a) {
|
||||
logger(__function__, LOGGER_TRACE);
|
||||
logger(__function__, LOGGER_TRACE);
|
||||
$dfrn_id = ((x($_POST,'dfrn_id')) ? notags(trim($_POST['dfrn_id'])) : '');
|
||||
$dfrn_version = ((x($_POST,'dfrn_version')) ? (float) $_POST['dfrn_version'] : 2.0);
|
||||
$challenge = ((x($_POST,'challenge')) ? notags(trim($_POST['challenge'])) : '');
|
||||
|
@ -117,7 +122,7 @@ function dfrn_notify_post(&$a) {
|
|||
|
||||
if($dissolve == 1) {
|
||||
|
||||
/**
|
||||
/*
|
||||
* Relationship is dissolved permanently
|
||||
*/
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue