aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZot <mike@macgirvin.com>2020-01-30 20:06:15 +0100
committerMario <mario@mariovavti.com>2020-01-30 20:06:15 +0100
commit2c42daf6090ba8d0e3a50b8350ea5a3750891b68 (patch)
tree112a577d708088aecabd8af957c5c40b8e24e313
parent8e2446a2fc706a6750c925b4c2672314be6bb91f (diff)
downloadvolse-hubzilla-2c42daf6090ba8d0e3a50b8350ea5a3750891b68.tar.gz
volse-hubzilla-2c42daf6090ba8d0e3a50b8350ea5a3750891b68.tar.bz2
volse-hubzilla-2c42daf6090ba8d0e3a50b8350ea5a3750891b68.zip
z6 compat work
-rw-r--r--Zotlabs/Lib/Libsync.php4
-rw-r--r--Zotlabs/Lib/Libzot.php7
-rw-r--r--include/channel.php11
-rw-r--r--include/text.php15
-rw-r--r--include/zid.php1
5 files changed, 34 insertions, 4 deletions
diff --git a/Zotlabs/Lib/Libsync.php b/Zotlabs/Lib/Libsync.php
index d93270bc5..b9e9bb38a 100644
--- a/Zotlabs/Lib/Libsync.php
+++ b/Zotlabs/Lib/Libsync.php
@@ -83,7 +83,7 @@ class Libsync {
$info = (($packet) ? $packet : array());
$info['type'] = 'sync';
- $info['encoding'] = 'red'; // note: not zot, this packet is very platform specific
+ $info['encoding'] = 'hz'; // note: not zot, this packet is very platform specific
$info['relocate'] = ['channel_address' => $channel['channel_address'], 'url' => z_root() ];
if(array_key_exists($uid,\App::$config) && array_key_exists('transient',\App::$config[$uid])) {
@@ -144,7 +144,7 @@ class Libsync {
foreach($synchubs as $hub) {
$hash = random_string();
- $n = Libzot::build_packet($channel,'sync',$env_recips,json_encode($info),'red',$hub['hubloc_sitekey'],$hub['site_crypto']);
+ $n = Libzot::build_packet($channel,'sync',$env_recips,json_encode($info),'hz',$hub['hubloc_sitekey'],$hub['site_crypto']);
Queue::insert(array(
'hash' => $hash,
'account_id' => $channel['channel_account_id'],
diff --git a/Zotlabs/Lib/Libzot.php b/Zotlabs/Lib/Libzot.php
index ad00aa97a..bb70dfbf2 100644
--- a/Zotlabs/Lib/Libzot.php
+++ b/Zotlabs/Lib/Libzot.php
@@ -1277,7 +1277,12 @@ class Libzot {
logger('Channel sync received: ' . print_r($arr,true), LOGGER_DATA, LOG_DEBUG);
logger('Channel sync recipients: ' . print_r($deliveries,true), LOGGER_DATA, LOG_DEBUG);
- $result = Libsync::process_channel_sync_delivery($env['sender'],$arr,$deliveries);
+ if ($env['encoding'] === 'hz') {
+ $result = Libsync::process_channel_sync_delivery($env['sender'],$arr,$deliveries);
+ }
+ else {
+ logger('sync packet type not supported.');
+ }
}
}
if ($result) {
diff --git a/include/channel.php b/include/channel.php
index e7d119b1e..66ab56715 100644
--- a/include/channel.php
+++ b/include/channel.php
@@ -922,8 +922,17 @@ function identity_basic_export($channel_id, $sections = null, $zap_compat = fals
$r = q("select * from pconfig where uid = %d",
intval($channel_id)
);
- if($r)
+
+ if($r) {
+ if ($zap_compat) {
+ for($x = 0; $x < count($r); $x ++) {
+ if (preg_match('|^a:[0-9]+:{.*}$|s', $r[$x]['v'])) {
+ $r[$x]['v'] = serialise(unserialize($r[$x]['v']));
+ }
+ }
+ }
$ret['config'] = $r;
+ }
// All other term types will be included in items, if requested.
diff --git a/include/text.php b/include/text.php
index 87ed9f658..1f0af08e3 100644
--- a/include/text.php
+++ b/include/text.php
@@ -3694,3 +3694,18 @@ function svg2bb($s) {
}
return EMPTY_STR;
}
+
+
+
+function serialise($x) {
+ return ((is_array($x)) ? 'json:' . json_encode($x) : $x);
+}
+
+function unserialise($x) {
+ if (is_array($x)) {
+ return $x;
+ }
+ $y = ((substr($x,0,5) === 'json:') ? json_decode(substr($x,5),true) : '');
+ return ((is_array($y)) ? $y : $x);
+}
+
diff --git a/include/zid.php b/include/zid.php
index 3b3dd8554..325af5580 100644
--- a/include/zid.php
+++ b/include/zid.php
@@ -1,6 +1,7 @@
<?php
use Zotlabs\Lib\Verify;
+use Zotlabs\Zot\Finger;
function is_matrix_url($url) {