mirror of
https://github.com/friendica/friendica
synced 2024-12-22 22:40:16 +00:00
cleanup to ensure protocol version is passed properly. We will need it if/when any incompatible protocol changes are introduced.
This commit is contained in:
parent
3c440f70c6
commit
033935c194
6 changed files with 44 additions and 22 deletions
|
@ -517,10 +517,10 @@ function dfrn_deliver($contact,$atom,$debugging = false) {
|
|||
if($contact['duplex'] && $contact['issued-id'])
|
||||
$idtosend = '1:' . $orig_id;
|
||||
|
||||
$url = $contact['notify'] . '?dfrn_id=' . $idtosend;
|
||||
$url = $contact['notify'] . '?dfrn_id=' . $idtosend . '&dfrn_version=' . DFRN_PROTOCOL_VERSION ;
|
||||
|
||||
if($debugging)
|
||||
echo "URL: $url";
|
||||
echo "URL: $url\n";
|
||||
|
||||
$xml = fetch_url($url);
|
||||
|
||||
|
@ -560,8 +560,8 @@ function dfrn_deliver($contact,$atom,$debugging = false) {
|
|||
return 3;
|
||||
}
|
||||
|
||||
$postvars['dfrn_id'] = $idtosend;
|
||||
|
||||
$postvars['dfrn_id'] = $idtosend;
|
||||
$postvars['dfrn_version'] = DFRN_PROTOCOL_VERSION;
|
||||
|
||||
if(($contact['rel']) && ($contact['rel'] != REL_FAN) && (! $contact['blocked']) && (! $contact['readonly'])) {
|
||||
$postvars['data'] = $atom;
|
||||
|
|
|
@ -94,12 +94,15 @@
|
|||
if(intval($contact['duplex']) && $contact['issued-id'])
|
||||
$idtosend = '1:' . $orig_id;
|
||||
|
||||
$url = $contact['poll'] . '?dfrn_id=' . $idtosend . '&type=data&last_update=' . $last_update ;
|
||||
$url = $contact['poll'] . '?dfrn_id=' . $idtosend
|
||||
. '&dfrn_version=' . DFRN_PROTOCOL_VERSION
|
||||
. '&type=data&last_update=' . $last_update ;
|
||||
|
||||
$xml = fetch_url($url);
|
||||
|
||||
if($debugging) {
|
||||
echo "URL: " . $url . "\r\n";
|
||||
echo "XML: " . $xml . "\r\n";
|
||||
echo "URL: " . $url . "\n";
|
||||
echo "XML: " . $xml . "\n";
|
||||
}
|
||||
|
||||
if(! $xml) {
|
||||
|
@ -154,7 +157,7 @@
|
|||
}
|
||||
|
||||
$postvars['dfrn_id'] = $idtosend;
|
||||
|
||||
$postvars['dfrn_version'] = DFRN_PROTOCOL_VERSION;
|
||||
|
||||
$xml = post_url($contact['poll'],$postvars);
|
||||
|
||||
|
|
|
@ -109,7 +109,7 @@ function dfrn_confirm_post(&$a) {
|
|||
$params['public_key'] = bin2hex(openssl_encrypt($public_key,'AES-256-CBC',$src_aes_key));
|
||||
}
|
||||
|
||||
$params['dfrn_version'] = '2.0';
|
||||
$params['dfrn_version'] = DFRN_PROTOCOL_VERSION ;
|
||||
if($duplex == 1)
|
||||
$params['duplex'] = 1;
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@ require_once('include/items.php');
|
|||
function dfrn_notify_post(&$a) {
|
||||
|
||||
$dfrn_id = notags(trim($_POST['dfrn_id']));
|
||||
$dfrn_version = (float) $_POST['dfrn_version'];
|
||||
$challenge = notags(trim($_POST['challenge']));
|
||||
$data = $_POST['data'];
|
||||
|
||||
|
@ -374,6 +375,8 @@ function dfrn_notify_content(&$a) {
|
|||
// If this is a duplex communication, ours will be the opposite.
|
||||
|
||||
$dfrn_id = notags(trim($_GET['dfrn_id']));
|
||||
$dfrn_version = (float) $_GET['dfrn_version'];
|
||||
|
||||
|
||||
$direction = (-1);
|
||||
if(strpos($dfrn_id,':') == 1) {
|
||||
|
@ -435,7 +438,16 @@ function dfrn_notify_content(&$a) {
|
|||
$challenge = bin2hex($challenge);
|
||||
$encrypted_id = bin2hex($encrypted_id);
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8"?><dfrn_notify><status>' . $status . '</status><dfrn_version>2.0</dfrn_version><dfrn_id>' . $encrypted_id . '</dfrn_id><challenge>' . $challenge . '</challenge></dfrn_notify>' . "\r\n" ;
|
||||
header("Content-type: text/xml");
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8"?>' . "\r\n"
|
||||
. '<dfrn_notify>' . "\r\n"
|
||||
. "\t" . '<status>' . $status . '</status>' . "\r\n"
|
||||
. "\t" . '<dfrn_version>' . DFRN_PROTOCOL_VERSION . '</dfrn_version>' . "\r\n"
|
||||
. "\t" . '<dfrn_id>' . $encrypted_id . '</dfrn_id>' . "\r\n"
|
||||
. "\t" . '<challenge>' . $challenge . '</challenge>' . "\r\n"
|
||||
. '</dfrn_notify>' . "\r\n" ;
|
||||
|
||||
killme();
|
||||
}
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ function dfrn_poll_init(&$a) {
|
|||
$type = $_GET['type'];
|
||||
if(x($_GET,'last_update'))
|
||||
$last_update = $_GET['last_update'];
|
||||
$dfrn_version = ((x($_GET,'dfrn_version')) ? $_GET['dfrn_version'] : '1.0');
|
||||
$dfrn_version = (float) $_GET['dfrn_version'] ;
|
||||
$destination_url = ((x($_GET,'destination_url')) ? $_GET['destination_url'] : '');
|
||||
|
||||
|
||||
|
@ -115,11 +115,12 @@ function dfrn_poll_init(&$a) {
|
|||
|
||||
function dfrn_poll_post(&$a) {
|
||||
|
||||
$dfrn_id = $_POST['dfrn_id'];
|
||||
$challenge = $_POST['challenge'];
|
||||
$url = $_POST['url'];
|
||||
$dfrn_id = $_POST['dfrn_id'];
|
||||
$challenge = $_POST['challenge'];
|
||||
$url = $_POST['url'];
|
||||
$dfrn_version = (float) $_POST['dfrn_version'];
|
||||
|
||||
$direction = (-1);
|
||||
$direction = (-1);
|
||||
if(strpos($dfrn_id,':') == 1) {
|
||||
$direction = intval(substr($dfrn_id,0,1));
|
||||
$dfrn_id = substr($dfrn_id,2);
|
||||
|
@ -199,7 +200,7 @@ function dfrn_poll_post(&$a) {
|
|||
</reputation>
|
||||
";
|
||||
killme();
|
||||
return; // NOTREACHED
|
||||
// NOTREACHED
|
||||
}
|
||||
else {
|
||||
$o = get_feed_for($a,$dfrn_id, $a->argv[1], $last_update, $direction);
|
||||
|
@ -222,6 +223,8 @@ function dfrn_poll_content(&$a) {
|
|||
if(x($_GET,'last_update'))
|
||||
$last_update = $_GET['last_update'];
|
||||
|
||||
$dfrn_version = (float) $_GET['dfrn_version'];
|
||||
|
||||
$direction = (-1);
|
||||
if(strpos($dfrn_id,':') == 1) {
|
||||
$direction = intval(substr($dfrn_id,0,1));
|
||||
|
@ -293,11 +296,15 @@ function dfrn_poll_content(&$a) {
|
|||
else {
|
||||
$status = 1;
|
||||
}
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8"?><dfrn_poll><status>' .$status . '</status><dfrn_version>2.0</dfrn_version><dfrn_id>' . $encrypted_id . '</dfrn_id>'
|
||||
. '<challenge>' . $challenge . '</challenge></dfrn_poll>' . "\r\n" ;
|
||||
session_write_close();
|
||||
exit;
|
||||
header("Content-type: text/xml");
|
||||
echo '<?xml version="1.0" encoding="UTF-8"?>' . "\r\n"
|
||||
. '<dfrn_poll>' . "\r\n"
|
||||
. "\t" . '<status>' .$status . '</status>' . "\r\n"
|
||||
. "\t" . '<dfrn_version>' . DFRN_PROTOCOL_VERSION . '</dfrn_version>' . "\r\n"
|
||||
. "\t" . '<dfrn_id>' . $encrypted_id . '</dfrn_id>' . "\r\n"
|
||||
. "\t" . '<challenge>' . $challenge . '</challenge>' . "\r\n"
|
||||
. '</dfrn_poll>' . "\r\n" ;
|
||||
killme();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -197,7 +197,7 @@ function dfrn_request_post(&$a) {
|
|||
}
|
||||
|
||||
|
||||
if($network == 'dfrn') {
|
||||
if($network === 'dfrn') {
|
||||
$ret = q("SELECT * FROM `contact` WHERE `uid` = %d AND `url` = '%s' LIMIT 1",
|
||||
intval($uid),
|
||||
dbesc($url)
|
||||
|
|
Loading…
Reference in a new issue