aboutsummaryrefslogtreecommitdiffstats
path: root/addons/urejectFX/bg.js
diff options
context:
space:
mode:
authorletssync <letssync@noreply.codeberg.org>2020-07-31 01:17:43 +0200
committerletssync <letssync@noreply.codeberg.org>2020-07-31 01:17:43 +0200
commit495fdbe73efc1fb59efc76079566d60befd6918f (patch)
tree266b48ae9fd61eaa16b1fd9a860f848b8144befd /addons/urejectFX/bg.js
parentf892548d62b6b7fc758efd195bcafd95b7b7ebc9 (diff)
downloadcloudflare-tor-495fdbe73efc1fb59efc76079566d60befd6918f.tar.lz
cloudflare-tor-495fdbe73efc1fb59efc76079566d60befd6918f.tar.xz
cloudflare-tor-495fdbe73efc1fb59efc76079566d60befd6918f.zip
Upload files to 'addons/urejectFX'
Diffstat (limited to 'addons/urejectFX/bg.js')
-rw-r--r--addons/urejectFX/bg.js34
1 files changed, 34 insertions, 0 deletions
diff --git a/addons/urejectFX/bg.js b/addons/urejectFX/bg.js
new file mode 100644
index 00000000..910ac7ec
--- /dev/null
+++ b/addons/urejectFX/bg.js
@@ -0,0 +1,34 @@
+let history = {};
+browser.webRequest.onResponseStarted.addListener(i => {
+ if ([403, 406, 410, 429, 451, 462].includes(i.statusCode)) {
+ let iFQDN = (new URL(i.url)).hostname;
+ if (['searxes.eu.org', 'ansero.eu.org', 'ss.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion', 'searxes.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion', 'ansero.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion'].includes(iFQDN)) {
+ return;
+ }
+ let iServer = '?';
+ i.responseHeaders.forEach(x => {
+ if (x.name == 'Server' || x.name == 'server') {
+ iServer = x.value;
+ }
+ });
+ history[iFQDN] = [i.url, iServer, i.statusCode, (new Date()).toUTCString()];
+ }
+ return;
+}, {
+ urls: ['http://*/*', 'https://*/*'],
+ types: ['main_frame']
+}, ['responseHeaders']);
+browser.runtime.onMessage.addListener((request, sender, sendResponse) => {
+ if (request && sender) {
+ if (request == 'get') {
+ sendResponse(history);
+ }
+ if (request == 'clear') {
+ history = {};
+ sendResponse(true);
+ }
+ }
+});
+browser.browserAction.onClicked.addListener(() => {
+ browser.runtime.openOptionsPage();
+}); \ No newline at end of file