From 62df06b3d6b2e56d271b69bebf8427caa715dd16 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Wed, 20 May 2015 20:20:35 -0700 Subject: cloning abook entries was broken in several ways if the target xchan wasn't available on the clone site. This should make it less broken. --- include/zot.php | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) (limited to 'include/zot.php') diff --git a/include/zot.php b/include/zot.php index 3c7413b5c..d719f3177 100644 --- a/include/zot.php +++ b/include/zot.php @@ -2926,25 +2926,14 @@ function process_channel_sync_delivery($sender, $arr, $deliveries) { // Perform discovery if the referenced xchan hasn't ever been seen on this hub. // This relies on the undocumented behaviour that red sites send xchan info with the abook + // and import_author_xchan will look them up on all federated networks - if($abook['abook_xchan'] && $abook['xchan_address']) { + if($abook['abook_xchan'] && $abook['xchan_addr']) { $h = zot_get_hublocs($abook['abook_xchan']); if(! $h) { - $f = zot_finger($abook['xchan_address'],$channel); - if(! $f['success']) { - logger('process_channel_sync_delivery: abook not probe-able' . $abook['xchan_address']); - continue; - } - $j = json_decode($f['body'],true); - if(! ($j['success'] && $j['guid'])) { - logger('process_channel_sync_delivery: probe failed.'); - continue; - } - - $x = import_xchan($j); - - if(! $x['success']) { - logger('process_channel_sync_delivery: import failed.'); + $xhash = import_author_xchan(encode_item_xchan($abook)); + if(! $xhash) { + logger('process_channel_sync_delivery: import of ' . $abook['xchan_addr'] . ' failed.'); continue; } } -- cgit v1.2.3