diff options
author | Loïc Hoguin <[email protected]> | 2020-11-12 15:27:07 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2020-11-12 15:27:07 +0100 |
commit | 492c955819eec864e3f3ea2760d3ee7800851356 (patch) | |
tree | 67046c8bd94cc875b9d0887d721cc3e55ba0950c /src/gun.erl | |
parent | 093dcd5fdefb6df0d316624665c584f37040cdd8 (diff) | |
download | gun-492c955819eec864e3f3ea2760d3ee7800851356.tar.gz gun-492c955819eec864e3f3ea2760d3ee7800851356.tar.bz2 gun-492c955819eec864e3f3ea2760d3ee7800851356.zip |
Return 'undefined' for raw|socks origin_scheme where applicable
Diffstat (limited to 'src/gun.erl')
-rw-r--r-- | src/gun.erl | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/gun.erl b/src/gun.erl index ddb5007..6251dc7 100644 --- a/src/gun.erl +++ b/src/gun.erl @@ -466,6 +466,7 @@ info(ServerPid) -> end, origin_scheme => case Protocol of gun_raw -> undefined; + gun_socks -> undefined; _ -> OriginScheme end, origin_host => OriginHost, @@ -943,7 +944,8 @@ start_link(Owner, Host, Port, Opts) -> init({Owner, Host, Port, Opts}) -> Retry = maps:get(retry, Opts, 5), OriginTransport = maps:get(transport, Opts, default_transport(Port)), - %% @todo The OriginScheme is not http when we connect to socks/raw. + %% The OriginScheme is not really http when we connect to socks/raw. + %% This is corrected in the gun:info/1 and gun:stream_info/2 functions where applicable. {OriginScheme, Transport} = case OriginTransport of tcp -> {<<"http">>, gun_tcp}; tls -> {<<"https">>, gun_tls} @@ -1542,7 +1544,10 @@ tunnel_info_from_state(#state{origin_scheme=OriginScheme, <<"https">> -> tls end, protocol => Proto:name(), - origin_scheme => OriginScheme, + origin_scheme => case Proto of + gun_raw -> undefined; + _ -> OriginScheme + end, origin_host => OriginHost, origin_port => OriginPort }. |