aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-05-19 03:46:38 +0300
committerManeraKai <manerakai@protonmail.com>2022-05-19 03:46:42 +0300
commitd88a4afd6b0b5738a7feea12020c812c147f305a (patch)
tree6b96299b6edcfa672c7850eeae648b18dd479e04
parentCleaned privacy policy. Added warning for 404, etc... instances for latency t... (diff)
downloadlibredirect-d88a4afd6b0b5738a7feea12020c812c147f305a.zip
Added removeXFrameOptions to Piped, Invidious #263
Diffstat (limited to '')
-rw-r--r--src/assets/javascripts/helpers/youtube/youtube.js26
-rw-r--r--src/pages/background/background.js10
2 files changed, 30 insertions, 6 deletions
diff --git a/src/assets/javascripts/helpers/youtube/youtube.js b/src/assets/javascripts/helpers/youtube/youtube.js
index cf6f9074..96f9959b 100644
--- a/src/assets/javascripts/helpers/youtube/youtube.js
+++ b/src/assets/javascripts/helpers/youtube/youtube.js
@@ -433,6 +433,29 @@ async function initInvidiousCookies(from) {
)
}
+function removeXFrameOptions(e) {
+ const url = new URL(e.url);
+ let protocolHost = commonHelper.protocolHost(url);
+ const list = [
+ ...redirects.invidious.normal,
+ ...invidiousNormalCustomRedirects,
+ ...redirects.invidious.tor,
+ ...invidiousTorCustomRedirects,
+
+ ...redirects.piped.normal,
+ ...redirects.piped.tor,
+ ...pipedNormalCustomRedirects,
+ ...pipedTorCustomRedirects
+ ];
+ if (!list.includes(protocolHost) || e.type != 'sub_frame') return;
+ let isChanged = false;
+ for (const i in e.responseHeaders) if (e.responseHeaders[i].name == 'x-frame-options') {
+ e.responseHeaders.splice(i, 1);
+ isChanged = true;
+ }
+ if (isChanged) return { responseHeaders: e.responseHeaders };
+}
+
let
initPipedLocalStorage = piped.initPipedLocalStorage,
initPipedMaterialLocalStorage = pipedMaterial.initPipedMaterialLocalStorage,
@@ -454,6 +477,7 @@ export default {
copyPipedLocalStorage,
initDefaults,
-
init,
+
+ removeXFrameOptions,
};
diff --git a/src/pages/background/background.js b/src/pages/background/background.js
index 3c6efd36..8e56f62d 100644
--- a/src/pages/background/background.js
+++ b/src/pages/background/background.js
@@ -86,10 +86,8 @@ browser.webRequest.onBeforeRequest.addListener(
initiator = new URL(details.originUrl);
else if (details.initiator)
initiator = new URL(details.initiator);
-
- let newUrl;
-
- if (!newUrl) newUrl = youtubeHelper.redirect(url, details, initiator)
+
+ let newUrl = youtubeHelper.redirect(url, details, initiator)
if (youtubeMusicHelper.isYoutubeMusic(url, initiator)) newUrl = youtubeMusicHelper.redirect(url, details.type)
if (!newUrl) newUrl = twitterHelper.redirect(url, initiator);
@@ -149,7 +147,9 @@ browser.tabs.onRemoved.addListener(
browser.webRequest.onHeadersReceived.addListener(
async e => {
await wholeInit();
- return twitterHelper.removeXFrameOptions(e);
+ let response = twitterHelper.removeXFrameOptions(e)
+ if (!response) youtubeHelper.removeXFrameOptions(e)
+ return response;
},
{ urls: ["<all_urls>"], },
["blocking", "responseHeaders"]