aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRoger Braun <roger@rogerbraun.net>2018-01-30 12:21:05 +0100
committerRoger Braun <roger@rogerbraun.net>2018-01-30 12:21:05 +0100
commit5e37adedfb718264fbc3eb3353ccee5244e82a89 (patch)
treed509572f7428c641ef148867a3ea6ebfe12bdd33 /lib
parentad0ab3a57bc5591806cae0201d8077ffb10b6634 (diff)
parent2f23ae5b684a363b6090a45c4b1b9685c9ed614a (diff)
downloadpleroma-5e37adedfb718264fbc3eb3353ccee5244e82a89.tar.gz
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/http/http.ex14
-rw-r--r--lib/pleroma/web/media_proxy/controller.ex4
2 files changed, 17 insertions, 1 deletions
diff --git a/lib/pleroma/http/http.ex b/lib/pleroma/http/http.ex
new file mode 100644
index 000000000..8b8a82353
--- /dev/null
+++ b/lib/pleroma/http/http.ex
@@ -0,0 +1,14 @@
+
+defmodule Pleroma.HTTP do
+ use HTTPoison.Base
+
+ def process_request_options(options) do
+ config = Application.get_env(:pleroma, :http, [])
+ proxy = Keyword.get(config, :proxy_url, nil)
+ case proxy do
+ nil -> options
+ _ -> options ++ [proxy: proxy]
+ end
+ end
+
+end
diff --git a/lib/pleroma/web/media_proxy/controller.ex b/lib/pleroma/web/media_proxy/controller.ex
index 560a65353..9327e7253 100644
--- a/lib/pleroma/web/media_proxy/controller.ex
+++ b/lib/pleroma/web/media_proxy/controller.ex
@@ -2,6 +2,8 @@ defmodule Pleroma.Web.MediaProxy.MediaProxyController do
use Pleroma.Web, :controller
require Logger
+ @httpoison Application.get_env(:pleroma, :httpoison)
+
@max_body_length 25 * 1048576
@cache_control %{
@@ -29,7 +31,7 @@ defmodule Pleroma.Web.MediaProxy.MediaProxyController do
defp proxy_request(link) do
headers = [{"user-agent", "Pleroma/MediaProxy; #{Pleroma.Web.base_url()} <#{Application.get_env(:pleroma, :instance)[:email]}>"}]
- options = [:insecure, {:follow_redirect, true}]
+ options = @httpoison.process_request_options([:insecure, {:follow_redirect, true}])
with \
{:ok, 200, headers, client} <- :hackney.request(:get, link, headers, "", options),
headers = Enum.into(headers, Map.new),