diff options
author | Maxim Fedorov <maximfca@gmail.com> | 2020-05-09 14:04:17 -0700 |
---|---|---|
committer | Maxim Fedorov <dane@whatsapp.com> | 2020-05-14 07:44:38 -0700 |
commit | 1d06f1337c3d9531ea3e9d5de92658d87853aeac (patch) | |
tree | 8c65eb0743e96d1cd67dcaebea502c606ec9a4ea | |
parent | a7f7e0fb4813521ea0477daa1e31c7276c133794 (diff) | |
download | erlang-1d06f1337c3d9531ea3e9d5de92658d87853aeac.tar.gz |
inet_tcp_dist: honour {backlog, NNN} setting coming from inet_dist_listen_options
Backlog of 128 was hardcoded into inet_tcp_dist, ignoring any setting coming
from inet_dist_listen_options. This change allows to configure backlog as
expected.
-rw-r--r-- | lib/kernel/src/inet_tcp_dist.erl | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/kernel/src/inet_tcp_dist.erl b/lib/kernel/src/inet_tcp_dist.erl index 8a67597928..244140c8fb 100644 --- a/lib/kernel/src/inet_tcp_dist.erl +++ b/lib/kernel/src/inet_tcp_dist.erl @@ -101,7 +101,7 @@ gen_listen(Driver, Name, Host) -> end. gen_listen(ErlEpmd, Name, Host, Driver, Options) -> - ListenOptions = listen_options([{backlog,128}|Options]), + ListenOptions = listen_options(Options), case call_epmd_function(ErlEpmd, listen_port_please, [Name, Host]) of {ok, 0} -> {First,Last} = get_port_range(), @@ -143,7 +143,12 @@ listen_options(Opts0) -> end, case application:get_env(kernel, inet_dist_listen_options) of {ok,ListenOpts} -> - ListenOpts ++ Opts1; + case proplists:is_defined(backlog, ListenOpts) of + true -> + ListenOpts ++ Opts1; + false -> + ListenOpts ++ [{backlog, 128} | Opts1] + end; _ -> Opts1 end. |