projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'media-proxy-follow-redirect' into 'develop'
[akkoma]
/
lib
/
pleroma
/
reverse_proxy.ex
diff --git
a/lib/pleroma/reverse_proxy.ex
b/lib/pleroma/reverse_proxy.ex
index 4f9f0b169de2864bc1ab7e63b979ecb43b34d2df..4ca84152aa6abd786cb28d13d14a14fec8a15fc1 100644
(file)
--- a/
lib/pleroma/reverse_proxy.ex
+++ b/
lib/pleroma/reverse_proxy.ex
@@
-5,7
+5,7
@@
defmodule Pleroma.ReverseProxy do
~w(content-type content-disposition content-encoding content-range accept-ranges vary)
@default_cache_control_header "public, max-age=1209600"
@valid_resp_codes [200, 206, 304]
~w(content-type content-disposition content-encoding content-range accept-ranges vary)
@default_cache_control_header "public, max-age=1209600"
@valid_resp_codes [200, 206, 304]
- @max_read_duration :timer.
minutes(2
)
+ @max_read_duration :timer.
seconds(30
)
@max_body_length :infinity
@methods ~w(GET HEAD)
@max_body_length :infinity
@methods ~w(GET HEAD)
@@
-56,7
+56,7
@@
defmodule Pleroma.ReverseProxy do
@hackney Application.get_env(:pleroma, :hackney, :hackney)
@httpoison Application.get_env(:pleroma, :httpoison, HTTPoison)
@hackney Application.get_env(:pleroma, :hackney, :hackney)
@httpoison Application.get_env(:pleroma, :httpoison, HTTPoison)
- @default_hackney_options [
{:follow_redirect, true}
]
+ @default_hackney_options []
@inline_content_types [
"image/gif",
@inline_content_types [
"image/gif",
@@
-101,7
+101,7
@@
defmodule Pleroma.ReverseProxy do
end
with {:ok, code, headers, client} <- request(method, url, req_headers, hackney_opts),
end
with {:ok, code, headers, client} <- request(method, url, req_headers, hackney_opts),
- :ok <- header_leng
ht
_constraint(headers, Keyword.get(opts, :max_body_length)) do
+ :ok <- header_leng
th
_constraint(headers, Keyword.get(opts, :max_body_length)) do
response(conn, client, url, code, headers, opts)
else
{:ok, code, headers} ->
response(conn, client, url, code, headers, opts)
else
{:ok, code, headers} ->
@@
-298,7
+298,7
@@
defmodule Pleroma.ReverseProxy do
end
end
end
end
- defp header_leng
ht
_constraint(headers, limit) when is_integer(limit) and limit > 0 do
+ defp header_leng
th
_constraint(headers, limit) when is_integer(limit) and limit > 0 do
with {_, size} <- List.keyfind(headers, "content-length", 0),
{size, _} <- Integer.parse(size),
true <- size <= limit do
with {_, size} <- List.keyfind(headers, "content-length", 0),
{size, _} <- Integer.parse(size),
true <- size <= limit do
@@
-312,7
+312,7
@@
defmodule Pleroma.ReverseProxy do
end
end
end
end
- defp header_leng
ht
_constraint(_, _), do: :ok
+ defp header_leng
th
_constraint(_, _), do: :ok
defp body_size_constraint(size, limit) when is_integer(limit) and limit > 0 and size >= limit do
{:error, :body_too_large}
defp body_size_constraint(size, limit) when is_integer(limit) and limit > 0 and size >= limit do
{:error, :body_too_large}