aboutsummaryrefslogtreecommitdiffstats
path: root/src/cowboy_acceptors_sup.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/cowboy_acceptors_sup.erl')
-rw-r--r--src/cowboy_acceptors_sup.erl19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/cowboy_acceptors_sup.erl b/src/cowboy_acceptors_sup.erl
index c12aeb5..3d57610 100644
--- a/src/cowboy_acceptors_sup.erl
+++ b/src/cowboy_acceptors_sup.erl
@@ -16,25 +16,28 @@
-module(cowboy_acceptors_sup).
-behaviour(supervisor).
--export([start_link/6]). %% API.
+-export([start_link/7]). %% API.
-export([init/1]). %% supervisor.
%% API.
--spec start_link(non_neg_integer(), module(), any(), module(), any(), pid())
- -> {ok, pid()}.
-start_link(NbAcceptors, Transport, TransOpts, Protocol, ProtoOpts, ReqsPid) ->
- supervisor:start_link(?MODULE, [NbAcceptors,
- Transport, TransOpts, Protocol, ProtoOpts, ReqsPid]).
+-spec start_link(non_neg_integer(), module(), any(),
+ module(), any(), pid(), pid()) -> {ok, pid()}.
+start_link(NbAcceptors, Transport, TransOpts,
+ Protocol, ProtoOpts, ListenerPid, ReqsPid) ->
+ supervisor:start_link(?MODULE, [NbAcceptors, Transport, TransOpts,
+ Protocol, ProtoOpts, ListenerPid, ReqsPid]).
%% supervisor.
-spec init(list()) -> {ok, {{one_for_one, 10, 10}, list()}}.
-init([NbAcceptors, Transport, TransOpts, Protocol, ProtoOpts, ReqsPid]) ->
+init([NbAcceptors, Transport, TransOpts,
+ Protocol, ProtoOpts, ListenerPid, ReqsPid]) ->
{ok, LSocket} = Transport:listen(TransOpts),
MaxConns = proplists:get_value(max_connections, TransOpts, 1024),
Procs = [{{acceptor, self(), N}, {cowboy_acceptor, start_link, [
- LSocket, Transport, Protocol, ProtoOpts, MaxConns, ReqsPid
+ LSocket, Transport, Protocol, ProtoOpts,
+ MaxConns, ListenerPid, ReqsPid
]}, permanent, brutal_kill, worker, dynamic}
|| N <- lists:seq(1, NbAcceptors)],
{ok, {{one_for_one, 10, 10}, Procs}}.