diff --git a/mod/_well_known.php b/mod/_well_known.php index e7bc8c92bf..25289171f6 100644 --- a/mod/_well_known.php +++ b/mod/_well_known.php @@ -2,7 +2,7 @@ use Friendica\App; use Friendica\Core\Config; -use Friendica\Util\Network; +use Friendica\Core\System; require_once 'mod/hostxrd.php'; require_once 'mod/nodeinfo.php'; @@ -26,7 +26,7 @@ function _well_known_init(App $a) break; } } - Network::httpStatusExit(404); + System::httpExit(404); killme(); } diff --git a/mod/dfrn_confirm.php b/mod/dfrn_confirm.php index 85e896dcf5..3066a871fc 100644 --- a/mod/dfrn_confirm.php +++ b/mod/dfrn_confirm.php @@ -494,7 +494,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) $user = dba::selectFirst('user', [], ['nickname' => $node]); if (!DBM::is_result($user)) { $message = L10n::t('No user record found for \'%s\' ', $node); - Network::xmlExit(3, $message); // failure + System::xmlExit(3, $message); // failure // NOTREACHED } @@ -504,7 +504,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) if (!strstr($my_prvkey, 'PRIVATE KEY')) { $message = L10n::t('Our site encryption key is apparently messed up.'); - Network::xmlExit(3, $message); + System::xmlExit(3, $message); } // verify everything @@ -515,7 +515,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) if (!strlen($decrypted_source_url)) { $message = L10n::t('Empty site URL was provided or URL could not be decrypted by us.'); - Network::xmlExit(3, $message); + System::xmlExit(3, $message); // NOTREACHED } @@ -531,7 +531,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) if (!DBM::is_result($contact)) { // this is either a bogus confirmation (?) or we deleted the original introduction. $message = L10n::t('Contact record was not found for you on our site.'); - Network::xmlExit(3, $message); + System::xmlExit(3, $message); return; // NOTREACHED } } @@ -545,7 +545,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) if (!$foreign_pubkey) { $message = L10n::t('Site public key not available in contact record for URL %s.', $decrypted_source_url); - Network::xmlExit(3, $message); + System::xmlExit(3, $message); } $decrypted_dfrn_id = ""; @@ -561,7 +561,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) if (dba::exists('contact', ['dfrn-id' => $decrypted_dfrn_id])) { $message = L10n::t('The ID provided by your system is a duplicate on our system. It should work if you try again.'); - Network::xmlExit(1, $message); // Birthday paradox - duplicate dfrn-id + System::xmlExit(1, $message); // Birthday paradox - duplicate dfrn-id // NOTREACHED } @@ -572,7 +572,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) ); if (!DBM::is_result($r)) { $message = L10n::t('Unable to set your contact credentials on our system.'); - Network::xmlExit(3, $message); + System::xmlExit(3, $message); } // It's possible that the other person also requested friendship. @@ -627,7 +627,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) ); if (!DBM::is_result($r)) { // indicates schema is messed up or total db failure $message = L10n::t('Unable to update your contact profile details on our system'); - Network::xmlExit(3, $message); + System::xmlExit(3, $message); } // Otherwise everything seems to have worked and we are almost done. Yay! @@ -708,7 +708,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) } } } - Network::xmlExit(0); // Success + System::xmlExit(0); // Success return; // NOTREACHED ////////////////////// End of this scenario /////////////////////////////////////////////// } diff --git a/mod/dfrn_notify.php b/mod/dfrn_notify.php index 8efb9328d5..2f4edafc5d 100644 --- a/mod/dfrn_notify.php +++ b/mod/dfrn_notify.php @@ -8,10 +8,10 @@ use Friendica\App; use Friendica\Core\Config; +use Friendica\Core\System; use Friendica\Database\DBM; use Friendica\Model\Contact; use Friendica\Protocol\DFRN; -use Friendica\Util\Network; require_once 'include/items.php'; require_once 'include/event.php'; @@ -49,7 +49,7 @@ function dfrn_notify_post(App $a) { ); if (! DBM::is_result($r)) { logger('dfrn_notify: could not match challenge to dfrn_id ' . $dfrn_id . ' challenge=' . $challenge); - Network::xmlExit(3, 'Could not match challenge'); + System::xmlExit(3, 'Could not match challenge'); } $r = q("DELETE FROM `challenge` WHERE `dfrn-id` = '%s' AND `challenge` = '%s'", @@ -71,7 +71,7 @@ function dfrn_notify_post(App $a) { $sql_extra = sprintf(" AND `dfrn-id` = '%s' AND `duplex` = 1 ", dbesc($dfrn_id)); break; default: - Network::xmlExit(3, 'Invalid direction'); + System::xmlExit(3, 'Invalid direction'); break; // NOTREACHED } @@ -97,7 +97,7 @@ function dfrn_notify_post(App $a) { if (! DBM::is_result($r)) { logger('dfrn_notify: contact not found for dfrn_id ' . $dfrn_id); - Network::xmlExit(3, 'Contact not found'); + System::xmlExit(3, 'Contact not found'); //NOTREACHED } @@ -132,7 +132,7 @@ function dfrn_notify_post(App $a) { // Relationship is dissolved permanently Contact::remove($importer['id']); logger('relationship dissolved : ' . $importer['name'] . ' dissolved ' . $importer['username']); - Network::xmlExit(0, 'relationship dissolved'); + System::xmlExit(0, 'relationship dissolved'); } $rino = Config::get('system', 'rino_encrypt'); @@ -146,7 +146,7 @@ function dfrn_notify_post(App $a) { // but only for $remote_rino > 1, because old code did't send rino version if ($rino_remote > 1 && $rino < $rino_remote) { logger("rino version '$rino_remote' is lower than supported '$rino'"); - Network::xmlExit(0, "rino version '$rino_remote' is lower than supported '$rino'"); + System::xmlExit(0, "rino version '$rino_remote' is lower than supported '$rino'"); } $rawkey = hex2bin(trim($key)); @@ -176,14 +176,14 @@ function dfrn_notify_post(App $a) { break; default: logger("rino: invalid sent version '$rino_remote'"); - Network::xmlExit(0, "Invalid sent version '$rino_remote'"); + System::xmlExit(0, "Invalid sent version '$rino_remote'"); } logger('rino: decrypted data: ' . $data, LOGGER_DATA); } $ret = DFRN::import($data, $importer); - Network::xmlExit($ret, 'Processed'); + System::xmlExit($ret, 'Processed'); // NOTREACHED } diff --git a/mod/dfrn_poll.php b/mod/dfrn_poll.php index 3e5aa5b1c7..7d5418c364 100644 --- a/mod/dfrn_poll.php +++ b/mod/dfrn_poll.php @@ -49,7 +49,7 @@ function dfrn_poll_init(App $a) if (($dfrn_id === '') && (!x($_POST, 'dfrn_id'))) { if (Config::get('system', 'block_public') && !local_user() && !remote_user()) { - Network::httpStatusExit(403); + System::httpExit(403); } $user = ''; @@ -58,7 +58,7 @@ function dfrn_poll_init(App $a) dbesc($a->argv[1]) ); if (!$r) { - Network::httpStatusExit(404); + System::httpExit(404); } $hidewall = ($r[0]['hidewall'] && !local_user()); @@ -145,7 +145,7 @@ function dfrn_poll_init(App $a) dbesc($sec) ); if (!DBM::is_result($r)) { - Network::xmlExit(3, 'No ticket'); + System::xmlExit(3, 'No ticket'); // NOTREACHED } @@ -158,7 +158,7 @@ function dfrn_poll_init(App $a) intval($r[0]['cid']) ); if (!DBM::is_result($c)) { - Network::xmlExit(3, 'No profile'); + System::xmlExit(3, 'No profile'); } $contact = $c[0]; @@ -185,7 +185,7 @@ function dfrn_poll_init(App $a) if ($final_dfrn_id != $orig_id) { logger('profile_check: ' . $final_dfrn_id . ' != ' . $orig_id, LOGGER_DEBUG); // did not decode properly - cannot trust this site - Network::xmlExit(3, 'Bad decryption'); + System::xmlExit(3, 'Bad decryption'); } header("Content-type: text/xml"); @@ -209,10 +209,10 @@ function dfrn_poll_init(App $a) $r = q("SELECT * FROM `profile_check` WHERE `dfrn_id` = '%s' ORDER BY `expire` DESC", dbesc($dfrn_id)); if (DBM::is_result($r)) { - Network::xmlExit(1); + System::xmlExit(1); return; // NOTREACHED } - Network::xmlExit(0); + System::xmlExit(0); return; // NOTREACHED } } @@ -237,7 +237,7 @@ function dfrn_poll_post(App $a) dbesc($sec) ); if (!DBM::is_result($r)) { - Network::xmlExit(3, 'No ticket'); + System::xmlExit(3, 'No ticket'); // NOTREACHED } @@ -250,7 +250,7 @@ function dfrn_poll_post(App $a) intval($r[0]['cid']) ); if (!DBM::is_result($c)) { - Network::xmlExit(3, 'No profile'); + System::xmlExit(3, 'No profile'); } $contact = $c[0]; @@ -277,7 +277,7 @@ function dfrn_poll_post(App $a) if ($final_dfrn_id != $orig_id) { logger('profile_check: ' . $final_dfrn_id . ' != ' . $orig_id, LOGGER_DEBUG); // did not decode properly - cannot trust this site - Network::xmlExit(3, 'Bad decryption'); + System::xmlExit(3, 'Bad decryption'); } header("Content-type: text/xml"); diff --git a/mod/display.php b/mod/display.php index 54a54be167..8d991d4768 100644 --- a/mod/display.php +++ b/mod/display.php @@ -11,7 +11,6 @@ use Friendica\Model\Contact; use Friendica\Model\Group; use Friendica\Model\Profile; use Friendica\Protocol\DFRN; -use Friendica\Util\Network; function display_init(App $a) { @@ -424,7 +423,7 @@ function display_content(App $a, $update = false, $update_uid = 0) { function displayShowFeed($item_id, $conversation) { $xml = DFRN::itemFeed($item_id, $conversation); if ($xml == '') { - Network::httpStatusExit(500); + System::httpExit(500); } header("Content-type: application/atom+xml"); echo $xml; diff --git a/mod/hovercard.php b/mod/hovercard.php index 0bd1d26178..01d9feb1e4 100644 --- a/mod/hovercard.php +++ b/mod/hovercard.php @@ -9,10 +9,10 @@ */ use Friendica\App; use Friendica\Core\Config; +use Friendica\Core\System; use Friendica\Model\Contact; use Friendica\Model\GContact; use Friendica\Model\Profile; -use Friendica\Util\Network; function hovercard_init(App $a) { @@ -27,7 +27,7 @@ function hovercard_content() // Get out if the system doesn't have public access allowed if (intval(Config::get('system', 'block_public'))) { - Network::httpStatusExit(401); + System::httpExit(401); } // Return the raw content of the template. We use this to make templates usable for js functions. @@ -91,7 +91,7 @@ function hovercard_content() return $o; } else { - Network::jsonExit($profile); + System::jsonExit($profile); } } diff --git a/mod/nodeinfo.php b/mod/nodeinfo.php index 026d3f03d9..5cadc41c49 100644 --- a/mod/nodeinfo.php +++ b/mod/nodeinfo.php @@ -22,12 +22,12 @@ function nodeinfo_wellknown(App $a) { function nodeinfo_init(App $a) { if (!Config::get('system', 'nodeinfo')) { - Network::httpStatusExit(404); + System::httpExit(404); killme(); } if (($a->argc != 2) || ($a->argv[1] != '1.0')) { - Network::httpStatusExit(404); + System::httpExit(404); killme(); } diff --git a/mod/notifications.php b/mod/notifications.php index 067e954228..46519075b4 100644 --- a/mod/notifications.php +++ b/mod/notifications.php @@ -10,7 +10,6 @@ use Friendica\Core\L10n; use Friendica\Core\NotificationsManager; use Friendica\Core\System; use Friendica\Database\DBM; -use Friendica\Util\Network; function notifications_post(App $a) { @@ -139,7 +138,7 @@ function notifications_content(App $a) { // Json output if (intval($json) === 1) { - Network::jsonExit($notifs); + System::jsonExit($notifs); } $notif_tpl = get_markup_template('notifications.tpl'); diff --git a/mod/poco.php b/mod/poco.php index 348f76d1ce..c27cd7c49c 100644 --- a/mod/poco.php +++ b/mod/poco.php @@ -6,15 +6,15 @@ use Friendica\App; use Friendica\Core\Cache; use Friendica\Core\Config; +use Friendica\Core\System; use Friendica\Database\DBM; use Friendica\Protocol\PortableContact; -use Friendica\Util\Network; function poco_init(App $a) { $system_mode = false; if (intval(Config::get('system', 'block_public')) || (Config::get('system', 'block_local_dir'))) { - Network::httpStatusExit(401); + System::httpExit(401); } if ($a->argc > 1) { @@ -23,7 +23,7 @@ function poco_init(App $a) { if (! x($user)) { $c = q("SELECT * FROM `pconfig` WHERE `cat` = 'system' AND `k` = 'suggestme' AND `v` = 1"); if (! DBM::is_result($c)) { - Network::httpStatusExit(401); + System::httpExit(401); } $system_mode = true; } @@ -64,7 +64,7 @@ function poco_init(App $a) { dbesc($user) ); if (! DBM::is_result($users) || $users[0]['hidewall'] || $users[0]['hide-friends']) { - Network::httpStatusExit(404); + System::httpExit(404); } $user = $users[0]; @@ -358,7 +358,7 @@ function poco_init(App $a) { $ret['entry'][] = []; } } else { - Network::httpStatusExit(500); + System::httpExit(500); } logger("End of poco", LOGGER_DEBUG); @@ -372,6 +372,6 @@ function poco_init(App $a) { echo json_encode($ret); killme(); } else { - Network::httpStatusExit(500); + System::httpExit(500); } } diff --git a/mod/probe.php b/mod/probe.php index a7746d55bc..b4f6ff3a4d 100644 --- a/mod/probe.php +++ b/mod/probe.php @@ -4,13 +4,13 @@ */ use Friendica\App; use Friendica\Core\L10n; +use Friendica\Core\System; use Friendica\Network\Probe; -use Friendica\Util\Network; function probe_content(App $a) { if (!local_user()) { - Network::httpStatusExit(403, ["title" => L10n::t("Public access denied."), + System::httpExit(403, ["title" => L10n::t("Public access denied."), "description" => L10n::t("Only logged in users are permitted to perform a probing.")]); killme(); } diff --git a/mod/pubsubhubbub.php b/mod/pubsubhubbub.php index 210bc6efbc..ac85657ddf 100644 --- a/mod/pubsubhubbub.php +++ b/mod/pubsubhubbub.php @@ -2,6 +2,7 @@ use Friendica\App; use Friendica\Core\Config; +use Friendica\Core\System; use Friendica\Database\DBM; use Friendica\Util\Network; @@ -13,7 +14,7 @@ function pubsubhubbub_init(App $a) { // PuSH subscription must be considered "public" so just block it // if public access isn't enabled. if (Config::get('system', 'block_public')) { - Network::httpStatusExit(403); + System::httpExit(403); } // Subscription request from subscriber @@ -41,7 +42,7 @@ function pubsubhubbub_init(App $a) { $subscribe = 0; } else { logger("pubsubhubbub: invalid hub_mode=$hub_mode, ignoring."); - Network::httpStatusExit(404); + System::httpExit(404); } logger("pubsubhubbub: $hub_mode request from " . @@ -57,7 +58,7 @@ function pubsubhubbub_init(App $a) { if (!$nick) { logger('pubsubhubbub: bad hub_topic=$hub_topic, ignoring.'); - Network::httpStatusExit(404); + System::httpExit(404); } // fetch user from database given the nickname @@ -67,7 +68,7 @@ function pubsubhubbub_init(App $a) { if (!DBM::is_result($r)) { logger('pubsubhubbub: local account not found: ' . $nick); - Network::httpStatusExit(404); + System::httpExit(404); } $owner = $r[0]; @@ -76,7 +77,7 @@ function pubsubhubbub_init(App $a) { if ($r[0]['hidewall']) { logger('pubsubhubbub: local user ' . $nick . 'has chosen to hide wall, ignoring.'); - Network::httpStatusExit(403); + System::httpExit(403); } // get corresponding row from contact table @@ -85,7 +86,7 @@ function pubsubhubbub_init(App $a) { intval($owner['uid'])); if (!DBM::is_result($r)) { logger('pubsubhubbub: contact not found.'); - Network::httpStatusExit(404); + System::httpExit(404); } $contact = $r[0]; @@ -94,7 +95,7 @@ function pubsubhubbub_init(App $a) { if (!link_compare($hub_topic, $contact['poll'])) { logger('pubsubhubbub: hub topic ' . $hub_topic . ' != ' . $contact['poll']); - Network::httpStatusExit(404); + System::httpExit(404); } // do subscriber verification according to the PuSH protocol @@ -117,7 +118,7 @@ function pubsubhubbub_init(App $a) { if ($ret < 200 || $ret > 299) { logger("pubsubhubbub: subscriber verification at $hub_callback ". "returned $ret, ignoring."); - Network::httpStatusExit(404); + System::httpExit(404); } // check that the correct hub_challenge code was echoed back @@ -125,7 +126,7 @@ function pubsubhubbub_init(App $a) { logger("pubsubhubbub: subscriber did not echo back ". "hub.challenge, ignoring."); logger("\"$hub_challenge\" != \"".trim($body)."\""); - Network::httpStatusExit(404); + System::httpExit(404); } // fetch the old subscription if it exists @@ -163,7 +164,7 @@ function pubsubhubbub_init(App $a) { logger("pubsubhubbub: successfully unsubscribed [$hub_callback]."); // we do nothing here, since the row was already deleted } - Network::httpStatusExit(202); + System::httpExit(202); } killme(); diff --git a/mod/receive.php b/mod/receive.php index 60b8ed7961..41f2225cb4 100644 --- a/mod/receive.php +++ b/mod/receive.php @@ -6,9 +6,9 @@ use Friendica\App; use Friendica\Core\Config; +use Friendica\Core\System; use Friendica\Database\DBM; use Friendica\Protocol\Diaspora; -use Friendica\Util\Network; /** * @param object $a App @@ -19,7 +19,7 @@ function receive_post(App $a) $enabled = intval(Config::get('system', 'diaspora_enabled')); if (!$enabled) { logger('mod-diaspora: disabled'); - Network::httpStatusExit(500); + System::httpExit(500); } if (($a->argc == 2) && ($a->argv[1] === 'public')) { @@ -29,13 +29,13 @@ function receive_post(App $a) $public = false; if ($a->argc != 3 || $a->argv[1] !== 'users') { - Network::httpStatusExit(500); + System::httpExit(500); } $guid = $a->argv[2]; $importer = dba::selectFirst('user', [], ['guid' => $guid, 'account_expired' => false, 'account_removed' => false]); if (!DBM::is_result($importer)) { - Network::httpStatusExit(500); + System::httpExit(500); } } @@ -48,7 +48,7 @@ function receive_post(App $a) if (!$xml) { $postdata = file_get_contents("php://input"); if ($postdata == '') { - Network::httpStatusExit(500); + System::httpExit(500); } logger('mod-diaspora: message is in the new format', LOGGER_DEBUG); @@ -68,7 +68,7 @@ function receive_post(App $a) logger('mod-diaspora: decoded msg: ' . print_r($msg, true), LOGGER_DATA); if (!is_array($msg)) { - Network::httpStatusExit(500); + System::httpExit(500); } logger('mod-diaspora: dispatching', LOGGER_DEBUG); @@ -80,6 +80,6 @@ function receive_post(App $a) $ret = Diaspora::dispatch($importer, $msg); } - Network::httpStatusExit(($ret) ? 200 : 500); + System::httpExit(($ret) ? 200 : 500); // NOTREACHED } diff --git a/mod/salmon.php b/mod/salmon.php index 20806df559..af8f5fa55b 100644 --- a/mod/salmon.php +++ b/mod/salmon.php @@ -4,12 +4,12 @@ */ use Friendica\App; use Friendica\Core\PConfig; +use Friendica\Core\System; use Friendica\Database\DBM; use Friendica\Model\Contact; use Friendica\Protocol\OStatus; use Friendica\Protocol\Salmon; use Friendica\Util\Crypto; -use Friendica\Util\Network; require_once 'include/items.php'; @@ -39,7 +39,7 @@ function salmon_post(App $a) { dbesc($nick) ); if (! DBM::is_result($r)) { - Network::httpStatusExit(500); + System::httpExit(500); } $importer = $r[0]; @@ -59,7 +59,7 @@ function salmon_post(App $a) { if(! $base) { logger('mod-salmon: unable to locate salmon data in xml '); - Network::httpStatusExit(400); + System::httpExit(400); } // Stash the signature away for now. We have to find their key or it won't be good for anything. @@ -97,7 +97,7 @@ function salmon_post(App $a) { if(! $author_link) { logger('mod-salmon: Could not retrieve author URI.'); - Network::httpStatusExit(400); + System::httpExit(400); } // Once we have the author URI, go to the web and try to find their public key @@ -108,7 +108,7 @@ function salmon_post(App $a) { if(! $key) { logger('mod-salmon: Could not retrieve author key.'); - Network::httpStatusExit(400); + System::httpExit(400); } $key_info = explode('.',$key); @@ -140,7 +140,7 @@ function salmon_post(App $a) { if (! $verify) { logger('mod-salmon: Message did not verify. Discarding.'); - Network::httpStatusExit(400); + System::httpExit(400); } logger('mod-salmon: Message verified with mode '.$mode); @@ -184,7 +184,7 @@ function salmon_post(App $a) { //if((DBM::is_result($r)) && (($r[0]['readonly']) || ($r[0]['rel'] == CONTACT_IS_FOLLOWER) || ($r[0]['blocked']))) { if (DBM::is_result($r) && $r[0]['blocked']) { logger('mod-salmon: Ignoring this author.'); - Network::httpStatusExit(202); + System::httpExit(202); // NOTREACHED } @@ -195,5 +195,5 @@ function salmon_post(App $a) { OStatus::import($data, $importer, $contact_rec, $hub); - Network::httpStatusExit(200); + System::httpExit(200); } diff --git a/mod/search.php b/mod/search.php index 681dbc9a52..c1990bf870 100644 --- a/mod/search.php +++ b/mod/search.php @@ -8,8 +8,8 @@ use Friendica\Content\Nav; use Friendica\Core\Cache; use Friendica\Core\Config; use Friendica\Core\L10n; +use Friendica\Core\System; use Friendica\Database\DBM; -use Friendica\Util\Network; require_once "include/bbcode.php"; require_once 'include/security.php'; @@ -100,7 +100,7 @@ function search_content(App $a) { } if (Config::get('system','local_search') && !local_user() && !remote_user()) { - Network::httpStatusExit(403, + System::httpExit(403, ["title" => L10n::t("Public access denied."), "description" => L10n::t("Only logged in users are permitted to perform a search.")]); killme(); @@ -125,7 +125,7 @@ function search_content(App $a) { if (!is_null($result)) { $resultdata = json_decode($result); if (($resultdata->time > (time() - $crawl_permit_period)) && ($resultdata->accesses > $free_crawls)) { - Network::httpStatusExit(429, + System::httpExit(429, ["title" => L10n::t("Too Many Requests"), "description" => L10n::t("Only one search per minute is permitted for not logged in users.")]); killme(); diff --git a/mod/smilies.php b/mod/smilies.php index 19f0152ef8..a33cbf6ad5 100644 --- a/mod/smilies.php +++ b/mod/smilies.php @@ -4,7 +4,7 @@ */ use Friendica\App; use Friendica\Content\Smilies; -use Friendica\Util\Network; +use Friendica\Core\System; /** * @param object $a App @@ -18,7 +18,7 @@ function smilies_content(App $a) for ($i = 0; $i < count($tmp['texts']); $i++) { $results[] = ['text' => $tmp['texts'][$i], 'icon' => $tmp['icons'][$i]]; } - Network::jsonExit($results); + System::jsonExit($results); } else { return Smilies::replace('', true); } diff --git a/mod/statistics_json.php b/mod/statistics_json.php index 75e89ba75e..c035c1c05a 100644 --- a/mod/statistics_json.php +++ b/mod/statistics_json.php @@ -7,12 +7,12 @@ use Friendica\App; use Friendica\Core\Addon; use Friendica\Core\Config; -use Friendica\Util\Network; +use Friendica\Core\System; function statistics_json_init(App $a) { if (!Config::get("system", "nodeinfo")) { - Network::httpStatusExit(404); + System::httpExit(404); killme(); } diff --git a/mod/webfinger.php b/mod/webfinger.php index f834e4ff36..c886793527 100644 --- a/mod/webfinger.php +++ b/mod/webfinger.php @@ -4,13 +4,13 @@ */ use Friendica\App; use Friendica\Core\L10n; +use Friendica\Core\System; use Friendica\Network\Probe; -use Friendica\Util\Network; function webfinger_content(App $a) { if (!local_user()) { - Network::httpStatusExit( + System::httpExit( 403, [ "title" => L10n::t("Public access denied."), diff --git a/src/Core/System.php b/src/Core/System.php index 469016770c..d0eb651e93 100644 --- a/src/Core/System.php +++ b/src/Core/System.php @@ -5,6 +5,7 @@ namespace Friendica\Core; use Friendica\BaseObject; +use Friendica\Util\XML; /** * @file include/Core/System.php @@ -97,6 +98,86 @@ EOT; killme(); } + /** + * Generic XML return + * Outputs a basic dfrn XML status structure to STDOUT, with a variable + * of $st and an optional text of $message and terminates the current process. + */ + public static function xmlExit($st, $message = '') + { + $result = ['status' => $st]; + + if ($message != '') { + $result['message'] = $message; + } + + if ($st) { + logger('xml_status returning non_zero: ' . $st . " message=" . $message); + } + + header("Content-type: text/xml"); + + $xmldata = ["result" => $result]; + + echo XML::fromArray($xmldata, $xml); + + killme(); + } + + /** + * @brief Send HTTP status header and exit. + * + * @param integer $val HTTP status result value + * @param array $description optional message + * 'title' => header title + * 'description' => optional message + */ + public static function httpExit($val, $description = []) + { + $err = ''; + if ($val >= 400) { + $err = 'Error'; + if (!isset($description["title"])) { + $description["title"] = $err." ".$val; + } + } + + if ($val >= 200 && $val < 300) { + $err = 'OK'; + } + + logger('http_status_exit ' . $val); + header($_SERVER["SERVER_PROTOCOL"] . ' ' . $val . ' ' . $err); + + if (isset($description["title"])) { + $tpl = get_markup_template('http_status.tpl'); + echo replace_macros( + $tpl, + [ + '$title' => $description["title"], + '$description' => $description["description"]] + ); + } + + killme(); + } + + /** + * @brief Encodes content to json + * + * This function encodes an array to json format + * and adds an application/json HTTP header to the output. + * After finishing the process is getting killed. + * + * @param array $x The input content + */ + public static function jsonExit($x) + { + header("content-type: application/json"); + echo json_encode($x); + killme(); + } + /// @todo Move the following functions from boot.php /* function get_guid($size = 16, $prefix = "") diff --git a/src/Module/Feed.php b/src/Module/Feed.php index efc5a097e8..485d070e30 100644 --- a/src/Module/Feed.php +++ b/src/Module/Feed.php @@ -3,8 +3,8 @@ namespace Friendica\Module; use Friendica\BaseModule; +use Friendica\Core\System; use Friendica\Protocol\OStatus; -use Friendica\Util\Network; /** * Provides public Atom feeds @@ -32,7 +32,7 @@ class Feed extends BaseModule $nocache = x($_GET, 'nocache') && local_user(); if ($a->argc < 2) { - Network::httpStatusExit(400); + System::httpExit(400); } $type = null; diff --git a/src/Protocol/Diaspora.php b/src/Protocol/Diaspora.php index a6c74537d2..86fdb2374c 100644 --- a/src/Protocol/Diaspora.php +++ b/src/Protocol/Diaspora.php @@ -285,7 +285,7 @@ class Diaspora if (!is_object($j_outer_key_bundle)) { logger('Outer Salmon did not verify. Discarding.'); - Network::httpStatusExit(400); + System::httpExit(400); } $outer_iv = base64_decode($j_outer_key_bundle->iv); @@ -300,7 +300,7 @@ class Diaspora if (!is_object($basedom)) { logger('Received data does not seem to be an XML. Discarding. '.$xml); - Network::httpStatusExit(400); + System::httpExit(400); } $base = $basedom->children(NAMESPACE_SALMON_ME); @@ -325,7 +325,7 @@ class Diaspora $verify = Crypto::rsaVerify($signed_data, $signature, $key); if (!$verify) { logger('Message did not verify. Discarding.'); - Network::httpStatusExit(400); + System::httpExit(400); } return ['message' => (string)base64url_decode($base->data), @@ -403,7 +403,7 @@ class Diaspora if (!$base) { logger('unable to locate salmon data in xml'); - Network::httpStatusExit(400); + System::httpExit(400); } @@ -441,7 +441,7 @@ class Diaspora if (!$author_link) { logger('Could not retrieve author URI.'); - Network::httpStatusExit(400); + System::httpExit(400); } // Once we have the author URI, go to the web and try to find their public key // (first this will look it up locally if it is in the fcontact cache) @@ -452,14 +452,14 @@ class Diaspora if (!$key) { logger('Could not retrieve author key.'); - Network::httpStatusExit(400); + System::httpExit(400); } $verify = Crypto::rsaVerify($signed_data, $signature, $key); if (!$verify) { logger('Message did not verify. Discarding.'); - Network::httpStatusExit(400); + System::httpExit(400); } logger('Message verified.'); diff --git a/src/Util/Network.php b/src/Util/Network.php index b013f65a3d..ab1d44625c 100644 --- a/src/Util/Network.php +++ b/src/Util/Network.php @@ -399,70 +399,6 @@ class Network return $body; } - /** - * Generic XML return - * Outputs a basic dfrn XML status structure to STDOUT, with a variable - * of $st and an optional text of $message and terminates the current process. - */ - public static function xmlExit($st, $message = '') - { - $result = ['status' => $st]; - - if ($message != '') { - $result['message'] = $message; - } - - if ($st) { - logger('xml_status returning non_zero: ' . $st . " message=" . $message); - } - - header("Content-type: text/xml"); - - $xmldata = ["result" => $result]; - - echo XML::fromArray($xmldata, $xml); - - killme(); - } - - /** - * @brief Send HTTP status header and exit. - * - * @param integer $val HTTP status result value - * @param array $description optional message - * 'title' => header title - * 'description' => optional message - */ - public static function httpStatusExit($val, $description = []) - { - $err = ''; - if ($val >= 400) { - $err = 'Error'; - if (!isset($description["title"])) { - $description["title"] = $err." ".$val; - } - } - - if ($val >= 200 && $val < 300) { - $err = 'OK'; - } - - logger('http_status_exit ' . $val); - header($_SERVER["SERVER_PROTOCOL"] . ' ' . $val . ' ' . $err); - - if (isset($description["title"])) { - $tpl = get_markup_template('http_status.tpl'); - echo replace_macros( - $tpl, - [ - '$title' => $description["title"], - '$description' => $description["description"]] - ); - } - - killme(); - } - /** * @brief Check URL to see if it's real * @@ -858,22 +794,6 @@ class Network return $slinky->short(); } - /** - * @brief Encodes content to json - * - * This function encodes an array to json format - * and adds an application/json HTTP header to the output. - * After finishing the process is getting killed. - * - * @param array $x The input content - */ - public static function jsonExit($x) - { - header("content-type: application/json"); - echo json_encode($x); - killme(); - } - /** * @brief Find the matching part between two url *