make the old personal xrd interface (old webfinger) work again

This commit is contained in:
friendica 2014-08-21 17:42:19 -07:00
parent 831714f0f0
commit 921799b045
4 changed files with 37 additions and 7 deletions

View File

@ -1,5 +1,8 @@
<?php /** @file */ <?php /** @file */
require_once('library/ASNValue.class.php');
require_once('library/asn1.php');
function rsa_sign($data,$key,$alg = 'sha256') { function rsa_sign($data,$key,$alg = 'sha256') {
if(! $key) if(! $key)
return 'no key'; return 'no key';
@ -241,7 +244,6 @@ function metopem($m,$e) {
function pubrsatome($key,&$m,&$e) { function pubrsatome($key,&$m,&$e) {
require_once('library/asn1.php'); require_once('library/asn1.php');
require_once('include/salmon.php');
$lines = explode("\n",$key); $lines = explode("\n",$key);
unset($lines[0]); unset($lines[0]);
@ -266,7 +268,6 @@ function pemtorsa($key) {
} }
function pemtome($key,&$m,&$e) { function pemtome($key,&$m,&$e) {
require_once('include/salmon.php');
$lines = explode("\n",$key); $lines = explode("\n",$key);
unset($lines[0]); unset($lines[0]);
unset($lines[count($lines)]); unset($lines[count($lines)]);

View File

@ -22,7 +22,20 @@ function xrd_init(&$a) {
if(! $r) if(! $r)
killme(); killme();
// $salmon_key = salmon_key($r[0]['pubkey']); if(get_config('system','diaspora_enabled')) {
$tpl = get_markup_template('xrd_diaspora.tpl');
$dspr = replace_macros($tpl,array(
'$baseurl' => $a->get_baseurl(),
'$dspr_guid' => $r[0]['channel_guid'],
'$dspr_key' => base64_encode(pemtorsa($r[0]['channel_pubkey']))
));
}
else
$dspr = '';
$salmon_key = salmon_key($r[0]['channel_pubkey']);
header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Origin: *');
header("Content-type: text/xml"); header("Content-type: text/xml");
@ -34,15 +47,15 @@ function xrd_init(&$a) {
'$nick' => $r[0]['channel_address'], '$nick' => $r[0]['channel_address'],
'$accturi' => $uri, '$accturi' => $uri,
'$profile_url' => $a->get_baseurl() . '/channel/' . $r[0]['channel_address'], '$profile_url' => $a->get_baseurl() . '/channel/' . $r[0]['channel_address'],
// '$hcard_url' => $a->get_baseurl() . '/hcard/' . $r[0]['channel_address'], '$hcard_url' => $a->get_baseurl() . '/hcard/' . $r[0]['channel_address'],
'$atom' => $a->get_baseurl() . '/feed/' . $r[0]['channel_address'], '$atom' => $a->get_baseurl() . '/feed/' . $r[0]['channel_address'],
'$zot_post' => $a->get_baseurl() . '/post/' . $r[0]['channel_address'], '$zot_post' => $a->get_baseurl() . '/post/' . $r[0]['channel_address'],
'$poco_url' => $a->get_baseurl() . '/poco/' . $r[0]['channel_address'], '$poco_url' => $a->get_baseurl() . '/poco/' . $r[0]['channel_address'],
'$photo' => $a->get_baseurl() . '/photo/profile/l/' . $r[0]['channel_id'], '$photo' => $a->get_baseurl() . '/photo/profile/l/' . $r[0]['channel_id'],
// '$dspr' => $dspr, '$dspr' => $dspr,
// '$salmon' => $a->get_baseurl() . '/salmon/' . $r[0]['channel_address'], // '$salmon' => $a->get_baseurl() . '/salmon/' . $r[0]['channel_address'],
// '$salmen' => $a->get_baseurl() . '/salmon/' . $r[0]['channel_address'] . '/mention', // '$salmen' => $a->get_baseurl() . '/salmon/' . $r[0]['channel_address'] . '/mention',
// '$modexp' => 'data:application/magic-public-key,' . $salmon_key, '$modexp' => 'data:application/magic-public-key,' . $salmon_key,
// '$bigkey' => salmon_key($r[0]['pubkey']) // '$bigkey' => salmon_key($r[0]['pubkey'])
)); ));

View File

@ -0,0 +1,8 @@
{{*
* AUTOMATICALLY GENERATED TEMPLATE
* DO NOT EDIT THIS FILE, CHANGES WILL BE OVERWRITTEN
*
*}}
<Link rel="http://joindiaspora.com/seed_location" type="text/html" href="{{$baseurl}}/" />
<Link rel="http://joindiaspora.com/guid" type="text/html" href="{{$dspr_guid}}" />
<Link rel="diaspora-public-key" type="RSA" href="{{$dspr_key}}" />

View File

@ -14,5 +14,13 @@
<Link rel="http://webfinger.net/rel/avatar" <Link rel="http://webfinger.net/rel/avatar"
type="image/jpeg" type="image/jpeg"
href="{{$photo}}" /> href="{{$photo}}" />
<Link rel="http://microformats.org/profile/hcard"
type="text/html"
href="{{$hcard_url}}" />
<Link rel="magic-public-key"
href="{{$modexp}}" />
{{$dspr}}
</XRD> </XRD>