strict privacy mode (Friendika-Z) - refuse to talk to networks with privacy issues
This commit is contained in:
parent
ccf4e3eee5
commit
c0094aa4f8
5 changed files with 35 additions and 9 deletions
14
boot.php
14
boot.php
|
@ -527,8 +527,20 @@ function check_config(&$a) {
|
||||||
$plugins = get_config('system','addon');
|
$plugins = get_config('system','addon');
|
||||||
$plugins_arr = array();
|
$plugins_arr = array();
|
||||||
|
|
||||||
if($plugins)
|
if($plugins) {
|
||||||
$plugins_arr = explode(',',str_replace(' ', '',$plugins));
|
$plugins_arr = explode(',',str_replace(' ', '',$plugins));
|
||||||
|
if(get_config('system','strict_privacy')) {
|
||||||
|
unset($a->config['system']['huburl']);
|
||||||
|
for($x = 0; $x < count($plugins_arr); $x ++) {
|
||||||
|
if( $plugins_arr[$x] === 'facebook'
|
||||||
|
|| $plugins_arr[$x] === 'twitter'
|
||||||
|
|| $plugins_arr[$x] === 'statusnet') {
|
||||||
|
unset($plugins_arr[$x]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
$a->plugins = $plugins_arr;
|
$a->plugins = $plugins_arr;
|
||||||
|
|
||||||
|
|
|
@ -27,6 +27,8 @@ function notifier_run($argv, $argc){
|
||||||
|
|
||||||
$a->set_baseurl(get_config('system','url'));
|
$a->set_baseurl(get_config('system','url'));
|
||||||
|
|
||||||
|
$prv = get_config('system','strict_privacy');
|
||||||
|
|
||||||
logger('notifier: invoked: ' . print_r($argv,true));
|
logger('notifier: invoked: ' . print_r($argv,true));
|
||||||
|
|
||||||
$cmd = $argv[1];
|
$cmd = $argv[1];
|
||||||
|
@ -329,6 +331,10 @@ function notifier_run($argv, $argc){
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'stat':
|
case 'stat':
|
||||||
|
|
||||||
|
if($prv)
|
||||||
|
break;
|
||||||
|
|
||||||
if($followup && $contact['notify']) {
|
if($followup && $contact['notify']) {
|
||||||
logger('notifier: slapdelivery: ' . $contact['name']);
|
logger('notifier: slapdelivery: ' . $contact['name']);
|
||||||
$deliver_status = slapper($owner,$contact['notify'],$slap);
|
$deliver_status = slapper($owner,$contact['notify'],$slap);
|
||||||
|
@ -373,7 +379,7 @@ function notifier_run($argv, $argc){
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'mail':
|
case 'mail':
|
||||||
|
|
||||||
// WARNING: does not currently convert to RFC2047 header encodings, etc.
|
// WARNING: does not currently convert to RFC2047 header encodings, etc.
|
||||||
|
|
||||||
$addr = $contact['addr'];
|
$addr = $contact['addr'];
|
||||||
|
@ -459,7 +465,7 @@ function notifier_run($argv, $argc){
|
||||||
|
|
||||||
if($slap && count($url_recipients) && $followup && $notify_hub && (! $expire)) {
|
if($slap && count($url_recipients) && $followup && $notify_hub && (! $expire)) {
|
||||||
foreach($url_recipients as $url) {
|
foreach($url_recipients as $url) {
|
||||||
if($url) {
|
if($url && (! $prv)) {
|
||||||
logger('notifier: urldelivery: ' . $url);
|
logger('notifier: urldelivery: ' . $url);
|
||||||
$deliver_status = slapper($owner,$url,$slap);
|
$deliver_status = slapper($owner,$url,$slap);
|
||||||
// TODO: redeliver/queue these items on failure, though there is no contact record
|
// TODO: redeliver/queue these items on failure, though there is no contact record
|
||||||
|
|
|
@ -626,19 +626,21 @@ function dfrn_request_content(&$a) {
|
||||||
else
|
else
|
||||||
$tpl = get_markup_template('auto_request.tpl');
|
$tpl = get_markup_template('auto_request.tpl');
|
||||||
|
|
||||||
|
$prv = get_config('system','strict_privacy');
|
||||||
|
|
||||||
$o .= replace_macros($tpl,array(
|
$o .= replace_macros($tpl,array(
|
||||||
'$header' => t('Friend/Connection Request'),
|
'$header' => t('Friend/Connection Request'),
|
||||||
'$desc' => t('Examples: jojo@demo.friendika.com, http://demo.friendika.com/profile/jojo, testuser@identi.ca'),
|
'$desc' => t('Examples: jojo@demo.friendika.com, http://demo.friendika.com/profile/jojo') . (($prv) ? ', testuser@identi.ca' : ''),
|
||||||
'$pls_answer' => t('Please answer the following:'),
|
'$pls_answer' => t('Please answer the following:'),
|
||||||
'$does_know' => t('Does $name know you?'),
|
'$does_know' => sprintf( t('Does %s know you?'),$a->profile['name']),
|
||||||
'$yes' => t('Yes'),
|
'$yes' => t('Yes'),
|
||||||
'$no' => t('No'),
|
'$no' => t('No'),
|
||||||
'$add_note' => t('Add a personal note:'),
|
'$add_note' => t('Add a personal note:'),
|
||||||
'$page_desc' => t("Please enter your 'Identity Address' from one of the following supported social networks:"),
|
'$page_desc' => t("Please enter your 'Identity Address' from one of the following supported social networks:"),
|
||||||
'$friendika' => t('Friendika'),
|
'$friendika' => t('Friendika'),
|
||||||
'$statusnet' => t('StatusNet/Federated Social Web'),
|
'$statusnet' => (($prv) ? t('StatusNet/Federated Social Web') : ''),
|
||||||
'$private_net' => t("Private \x28secure\x29 network"),
|
'$private_net' => t("Private \x28secure\x29 network"),
|
||||||
'$public_net' => t("Public \x28insecure\x29 network"),
|
'$public_net' => (($prv) ? t("Public \x28insecure\x29 network") : ''),
|
||||||
'$your_address' => t('Your Identity Address:'),
|
'$your_address' => t('Your Identity Address:'),
|
||||||
'$submit' => t('Submit Request'),
|
'$submit' => t('Submit Request'),
|
||||||
'$cancel' => t('Cancel'),
|
'$cancel' => t('Cancel'),
|
||||||
|
|
|
@ -22,10 +22,8 @@ function follow_post(&$a) {
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
$ret = probe_url($url);
|
$ret = probe_url($url);
|
||||||
|
|
||||||
|
|
||||||
if($ret['network'] === NETWORK_DFRN) {
|
if($ret['network'] === NETWORK_DFRN) {
|
||||||
if(strlen($a->path))
|
if(strlen($a->path))
|
||||||
$myaddr = bin2hex($a->get_baseurl() . '/profile/' . $a->user['nickname']);
|
$myaddr = bin2hex($a->get_baseurl() . '/profile/' . $a->user['nickname']);
|
||||||
|
@ -36,6 +34,9 @@ function follow_post(&$a) {
|
||||||
|
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
elseif(get_config('system','strict_privacy')) {
|
||||||
|
unset($ret['notify']);
|
||||||
|
}
|
||||||
|
|
||||||
// do we have enough information?
|
// do we have enough information?
|
||||||
|
|
||||||
|
|
|
@ -192,6 +192,11 @@ function salmon_post(&$a) {
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check if we're allowed to talk to insecure networks
|
||||||
|
|
||||||
|
if(get_config('system','strict_privacy'))
|
||||||
|
salmon_return(400);
|
||||||
|
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
|
|
||||||
// Placeholder for hub discovery. We shouldn't find any hubs
|
// Placeholder for hub discovery. We shouldn't find any hubs
|
||||||
|
|
Loading…
Reference in a new issue