diff --git a/src/invidious/helpers/backend_info.cr b/src/invidious/helpers/backend_info.cr index 35d700f4..2520173f 100644 --- a/src/invidious/helpers/backend_info.cr +++ b/src/invidious/helpers/backend_info.cr @@ -37,7 +37,7 @@ module BackendInfo updated_status[index] = Status::Working.to_i updated_ends.push(index) end - generate_csp([companion.public_url.to_s, companion.i2p_public_url.to_s], index) + generate_csp([companion.public_url, companion.i2p_public_url], index) else @@check_mutex.synchronize do updated_status[index] = Status::Dead.to_i @@ -60,11 +60,12 @@ module BackendInfo @@status = updated_status end - private def generate_csp(companion_url : Array(String), index : Int32? = nil) + private def generate_csp(companion_url : Array(URI), index : Int32? = nil) @@csp_mutex.synchronize do @@csp[index] = "" companion_url.each do |url| - @@csp[index] += " #{url}" + fixed_url = "#{url.scheme}://#{url.host}#{url.port ? ":#{url.port}" : ""}" + @@csp[index] += " #{fixed_url}" end end end diff --git a/src/invidious/routes/embed.cr b/src/invidious/routes/embed.cr index e3726a1d..2251da34 100644 --- a/src/invidious/routes/embed.cr +++ b/src/invidious/routes/embed.cr @@ -210,18 +210,6 @@ module Invidious::Routes::Embed if CONFIG.invidious_companion.present? current_companion = env.get("current_companion").as(Int32) invidious_companion = CONFIG.invidious_companion[current_companion] - - invidious_companion_urls = CONFIG.invidious_companion.reject(&.builtin_proxy).map do |companion| - uri = - "#{companion.public_url.scheme}://#{companion.public_url.host}#{companion.public_url.port ? ":#{companion.public_url.port}" : ""}" - end.join(" ") - - if !invidious_companion_urls.empty? - env.response.headers["Content-Security-Policy"] = - env.response.headers["Content-Security-Policy"] - .gsub("media-src", "media-src #{invidious_companion_urls}") - .gsub("connect-src", "connect-src #{invidious_companion_urls}") - end end rendered "embed" diff --git a/src/invidious/routes/watch.cr b/src/invidious/routes/watch.cr index 37075194..933b34dd 100644 --- a/src/invidious/routes/watch.cr +++ b/src/invidious/routes/watch.cr @@ -279,18 +279,6 @@ module Invidious::Routes::Watch if CONFIG.invidious_companion.present? current_companion = env.get("current_companion").as(Int32) invidious_companion = CONFIG.invidious_companion[current_companion] - - invidious_companion_urls = CONFIG.invidious_companion.reject(&.builtin_proxy).map do |companion| - uri = - "#{companion.public_url.scheme}://#{companion.public_url.host}#{companion.public_url.port ? ":#{companion.public_url.port}" : ""}" - end.join(" ") - - if !invidious_companion_urls.empty? - env.response.headers["Content-Security-Policy"] = - env.response.headers["Content-Security-Policy"] - .gsub("media-src", "media-src #{invidious_companion_urls}") - .gsub("connect-src", "connect-src #{invidious_companion_urls}") - end end templated "watch"