diff options
author | Fabio Comuni <fabrix.xm@gmail.com> | 2011-09-30 14:31:20 +0200 |
---|---|---|
committer | Fabio Comuni <fabrix.xm@gmail.com> | 2011-09-30 14:31:20 +0200 |
commit | 60e0f79b9f9e94b19cc412eac41e5d8f8fec2383 (patch) | |
tree | 6a42698623f3c065851f2266acd9434b4c9776ff /mod/hostxrd.php | |
parent | dfb3ee6e29b6943f86ec75af12db5a1422a7e1dd (diff) | |
parent | 30b7c689292b3a5d06fb9c52a369b53ecb05e57f (diff) | |
download | volse-hubzilla-60e0f79b9f9e94b19cc412eac41e5d8f8fec2383.tar.gz volse-hubzilla-60e0f79b9f9e94b19cc412eac41e5d8f8fec2383.tar.bz2 volse-hubzilla-60e0f79b9f9e94b19cc412eac41e5d8f8fec2383.zip |
Merge remote-tracking branch 'friendika/master'
Diffstat (limited to 'mod/hostxrd.php')
-rw-r--r-- | mod/hostxrd.php | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/mod/hostxrd.php b/mod/hostxrd.php index e057cccad..fe61a874c 100644 --- a/mod/hostxrd.php +++ b/mod/hostxrd.php @@ -5,9 +5,34 @@ require_once('include/crypto.php'); function hostxrd_init(&$a) { header('Access-Control-Allow-Origin: *'); header("Content-type: text/xml"); + $pubkey = get_config('system','site_pubkey'); + + if(! $pubkey) { + + // should only have to ever do this once. + + $res=openssl_pkey_new(array( + 'digest_alg' => 'sha1', + 'private_key_bits' => 4096, + 'encrypt_key' => false )); + + + $prvkey = ''; + + openssl_pkey_export($res, $prvkey); + + // Get public key + + $pkey = openssl_pkey_get_details($res); + $pubkey = $pkey["key"]; + + set_config('system','site_prvkey', $prvkey); + set_config('system','site_pubkey', $pubkey); + } + $tpl = file_get_contents('view/xrd_host.tpl'); echo str_replace(array( - '$zroot','$domain','$zot_post','$bigkey'),array(z_root(),z_path(),z_root() . '/post', salmon_key(get_config('system','site_pubkey'))),$tpl); + '$zhost','$zroot','$domain','$zot_post','$bigkey'),array($a->get_hostname(),z_root(),z_path(),z_root() . '/post', salmon_key(get_config('system','site_pubkey'))),$tpl); session_write_close(); exit(); |