Open D4no0 opened 4 years ago
When making a TCP request with a bad port, exit signal is chained to the parent process.
OTP 20.3 Elixir 1.9.4 Httpoison 1.6.2 Hackney 1.15.2
HTTPoison.get "http://example.com:6500000"
Output of the caught exit signal:
{:function_clause, [ {:inet_tcp, :do_connect, [ {93, 184, 216, 34}, 6500000, [{:packet, :raw}, {:active, false}, :binary], 7998 ], [file: 'inet_tcp.erl', line: 113]}, {:gen_tcp, :try_connect, 6, [file: 'gen_tcp.erl', line: 167]}, {:gen_tcp, :connect, 4, [file: 'gen_tcp.erl', line: 145]}, {:hackney_connect, :do_connect, 5, [ file: '/home/daniel/test_app/deps/hackney/src/hackney_connect.erl', line: 277 ]}, {:hackney_connect, :connect, 5, [ file: '/home/daniel/test_app/deps/hackney/src/hackney_connect.erl', line: 47 ]}, {:hackney, :request, 5, [file: '/home/daniel/test_app/deps/hackney/src/hackney.erl', line: 333]}, {HTTPoison.Base, :request, 6, [file: 'lib/httpoison/base.ex', line: 796]}, {TestApp, :hello, 0, [file: 'lib/test_app.ex', line: 17]} ]}
Output of error:
** (exit) an exception was raised: ** (FunctionClauseError) no function clause matching in :inet_tcp.do_connect/4 (kernel) inet_tcp.erl:113: :inet_tcp.do_connect({93, 184, 216, 34}, 6500000, [{:packet, :raw}, {:active, false}, :binary], 7999) (kernel) gen_tcp.erl:167: :gen_tcp.try_connect/6 (kernel) gen_tcp.erl:145: :gen_tcp.connect/4 (hackney) /home/daniel/test_app/deps/hackney/src/hackney_connect.erl:277: :hackney_connect.do_connect/5 (hackney) /home/daniel/test_app/deps/hackney/src/hackney_connect.erl:47: :hackney_connect.connect/5 (hackney) /home/daniel/test_app/deps/hackney/src/hackney.erl:333: :hackney.request/5 (httpoison) lib/httpoison/base.ex:796: HTTPoison.Base.request/6 (stdlib) erl_eval.erl:670: :erl_eval.do_apply/6 (kernel) gen_tcp.erl:150: :gen_tcp.connect/4 (hackney) /home/daniel/test_app/deps/hackney/src/hackney_connect.erl:277: :hackney_connect.do_connect/5 (hackney) /home/daniel/test_app/deps/hackney/src/hackney_connect.erl:47: :hackney_connect.connect/5 (hackney) /home/daniel/test_app/deps/hackney/src/hackney.erl:333: :hackney.request/5 (httpoison) lib/httpoison/base.ex:796: HTTPoison.Base.request/6
When making a TCP request with a bad port, exit signal is chained to the parent process.
Environments:
Code:
HTTPoison.get "http://example.com:6500000"
Output:
Output of the caught exit signal:
Output of error: