From 96ba95df2e6690c1c6a58cf087c91eab7af728b4 Mon Sep 17 00:00:00 2001
From: Hakaba Hitoyo <hakabahitoyo@example.com>
Date: Thu, 6 Dec 2018 11:38:33 +0900
Subject: [PATCH] remove follow_redirect options

---
 lib/pleroma/http/connection.ex                          | 3 ++-
 lib/pleroma/reverse_proxy.ex                            | 2 +-
 lib/pleroma/web/activity_pub/activity_pub.ex            | 3 +--
 lib/pleroma/web/mastodon_api/mastodon_api_controller.ex | 1 -
 lib/pleroma/web/ostatus/ostatus.ex                      | 5 ++---
 lib/pleroma/web/web_finger/web_finger.ex                | 2 +-
 6 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/lib/pleroma/http/connection.ex b/lib/pleroma/http/connection.ex
index 66e0d0568..db46f9e55 100644
--- a/lib/pleroma/http/connection.ex
+++ b/lib/pleroma/http/connection.ex
@@ -6,7 +6,8 @@ defmodule Pleroma.HTTP.Connection do
   @hackney_options [
     pool: :default,
     timeout: 10000,
-    recv_timeout: 20000
+    recv_timeout: 20000,
+    follow_redirect: true
   ]
   @adapter Application.get_env(:tesla, :adapter)
 
diff --git a/lib/pleroma/reverse_proxy.ex b/lib/pleroma/reverse_proxy.ex
index ad9dc82fe..4ca84152a 100644
--- a/lib/pleroma/reverse_proxy.ex
+++ b/lib/pleroma/reverse_proxy.ex
@@ -56,7 +56,7 @@ defmodule Pleroma.ReverseProxy do
   @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",
diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex
index 03a607f83..922ffb946 100644
--- a/lib/pleroma/web/activity_pub/activity_pub.ex
+++ b/lib/pleroma/web/activity_pub/activity_pub.ex
@@ -765,8 +765,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
          {:ok, %{body: body, status: code}} when code in 200..299 <-
            @httpoison.get(
              id,
-             [Accept: "application/activity+json"],
-             follow_redirect: true
+             Accept: "application/activity+json"
            ),
          {:ok, data} <- Jason.decode(body),
          :ok <- Transmogrifier.contain_origin_from_id(id, data) do
diff --git a/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex b/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex
index 300bdc04a..fc4f3fdc7 100644
--- a/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex
+++ b/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex
@@ -1185,7 +1185,6 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIController do
              @httpoison.get(
                url,
                [],
-               follow_redirect: true,
                adapter: [
                  timeout: timeout,
                  recv_timeout: timeout
diff --git a/lib/pleroma/web/ostatus/ostatus.ex b/lib/pleroma/web/ostatus/ostatus.ex
index bc14b8785..9f33cd5cd 100644
--- a/lib/pleroma/web/ostatus/ostatus.ex
+++ b/lib/pleroma/web/ostatus/ostatus.ex
@@ -349,8 +349,7 @@ defmodule Pleroma.Web.OStatus do
          {:ok, %{body: body, status: code}} when code in 200..299 <-
            @httpoison.get(
              url,
-             [Accept: "application/atom+xml"],
-             follow_redirect: true
+             Accept: "application/atom+xml"
            ) do
       Logger.debug("Got document from #{url}, handling...")
       handle_incoming(body)
@@ -365,7 +364,7 @@ defmodule Pleroma.Web.OStatus do
     Logger.debug("Trying to fetch #{url}")
 
     with true <- String.starts_with?(url, "http"),
-         {:ok, %{body: body}} <- @httpoison.get(url, [], follow_redirect: true),
+         {:ok, %{body: body}} <- @httpoison.get(url, []),
          {:ok, atom_url} <- get_atom_url(body) do
       fetch_activity_from_atom_url(atom_url)
     else
diff --git a/lib/pleroma/web/web_finger/web_finger.ex b/lib/pleroma/web/web_finger/web_finger.ex
index 99c65a6bf..0ff3b8b5f 100644
--- a/lib/pleroma/web/web_finger/web_finger.ex
+++ b/lib/pleroma/web/web_finger/web_finger.ex
@@ -221,7 +221,7 @@ defmodule Pleroma.Web.WebFinger do
 
   def find_lrdd_template(domain) do
     with {:ok, %{status: status, body: body}} when status in 200..299 <-
-           @httpoison.get("http://#{domain}/.well-known/host-meta", [], follow_redirect: true) do
+           @httpoison.get("http://#{domain}/.well-known/host-meta", []) do
       get_template_from_xml(body)
     else
       _ ->