Bump versions
[akkoma] / lib / pleroma / reverse_proxy / client / hackney.ex
1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
4
5 defmodule Pleroma.ReverseProxy.Client.Hackney do
6 @behaviour Pleroma.ReverseProxy.Client
7
8 @impl true
9 def request(method, url, headers, body, opts \\ []) do
10 opts = Keyword.put(opts, :ssl_options, versions: [:"tlsv1.2", :"tlsv1.1", :tlsv1])
11 :hackney.request(method, url, headers, body, opts)
12 end
13
14 @impl true
15 def stream_body(ref) do
16 case :hackney.stream_body(ref) do
17 :done -> :done
18 {:ok, data} -> {:ok, data, ref}
19 {:error, error} -> {:error, error}
20 end
21 end
22
23 @impl true
24 def close(ref), do: :hackney.close(ref)
25 end