- defp add_original(opts, %URI{host: host, port: port}) do
- formatted_host = format_host(host)
-
- Keyword.put(opts, :original, "#{formatted_host}:#{port}")
- end
-
- defp add_scheme_opts(opts, %URI{scheme: "http"}), do: opts
-
- defp add_scheme_opts(opts, %URI{scheme: "https", host: host, port: port}) do
- adapter_opts = [
- certificates_verification: true,
- tls_opts: [
- verify: :verify_peer,
- cacertfile: CAStore.file_path(),
- depth: 20,
- reuse_sessions: false,
- verify_fun: {&:ssl_verify_hostname.verify_fun/3, [check_hostname: format_host(host)]},
- log_level: :warning
- ]
- ]
-
- adapter_opts =
- if port != 443 do
- Keyword.put(adapter_opts, :transport, :tls)
- else
- adapter_opts
- end