diff options
author | Loïc Hoguin <[email protected]> | 2018-07-04 10:57:05 +0200 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2018-07-04 10:57:05 +0200 |
commit | b400e34386ec0dc3f290da6c4671d7d0621d2fe6 (patch) | |
tree | 2a59bcbe0ffbdb15ed7c22465b1473dbe1ba0502 /src/ranch_conns_sup.erl | |
parent | f4a4843b1b242a3ee0de3f6dd76703f7c6492213 (diff) | |
download | ranch-b400e34386ec0dc3f290da6c4671d7d0621d2fe6.tar.gz ranch-b400e34386ec0dc3f290da6c4671d7d0621d2fe6.tar.bz2 ranch-b400e34386ec0dc3f290da6c4671d7d0621d2fe6.zip |
Better distinguish between Ranch and socket options
A map should now be used when specifying transport options
that contain more than just socket options. It is still
possible to pass a list of socket options directly as a
convenience.
The ack_timeout is renamed to handshake_timeout when
specified as a map. This corresponds to the new function
ranch:handshake/1,2 that will be favored in Ranch 2.0.
Specifying Ranch-specific options via the proplist will
no longer be possible starting from Ranch 2.0.
Diffstat (limited to 'src/ranch_conns_sup.erl')
-rw-r--r-- | src/ranch_conns_sup.erl | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/ranch_conns_sup.erl b/src/ranch_conns_sup.erl index 72de2d7..ddf9a20 100644 --- a/src/ranch_conns_sup.erl +++ b/src/ranch_conns_sup.erl @@ -39,7 +39,7 @@ transport = undefined :: module(), protocol = undefined :: module(), opts :: any(), - ack_timeout :: timeout(), + handshake_timeout :: timeout(), max_conns = undefined :: ranch:max_conns() }). @@ -99,14 +99,14 @@ init(Parent, Ref, Transport, Protocol) -> ok = ranch_server:set_connections_sup(Ref, self()), MaxConns = ranch_server:get_max_connections(Ref), TransOpts = ranch_server:get_transport_options(Ref), - ConnType = proplists:get_value(connection_type, TransOpts, worker), - Shutdown = proplists:get_value(shutdown, TransOpts, 5000), - AckTimeout = proplists:get_value(ack_timeout, TransOpts, 5000), + ConnType = maps:get(connection_type, TransOpts, worker), + Shutdown = maps:get(shutdown, TransOpts, 5000), + HandshakeTimeout = maps:get(handshake_timeout, TransOpts, 5000), ProtoOpts = ranch_server:get_protocol_options(Ref), ok = proc_lib:init_ack(Parent, {ok, self()}), loop(#state{parent=Parent, ref=Ref, conn_type=ConnType, shutdown=Shutdown, transport=Transport, protocol=Protocol, - opts=ProtoOpts, ack_timeout=AckTimeout, max_conns=MaxConns}, 0, 0, []). + opts=ProtoOpts, handshake_timeout=HandshakeTimeout, max_conns=MaxConns}, 0, 0, []). loop(State=#state{parent=Parent, ref=Ref, conn_type=ConnType, transport=Transport, protocol=Protocol, opts=Opts, @@ -219,11 +219,11 @@ loop(State=#state{parent=Parent, ref=Ref, conn_type=ConnType, loop(State, CurConns, NbChildren, Sleepers) end. -handshake(State=#state{ref=Ref, transport=Transport, ack_timeout=AckTimeout, max_conns=MaxConns}, - CurConns, NbChildren, Sleepers, To, Socket, SupPid, ProtocolPid) -> +handshake(State=#state{ref=Ref, transport=Transport, handshake_timeout=HandshakeTimeout, + max_conns=MaxConns}, CurConns, NbChildren, Sleepers, To, Socket, SupPid, ProtocolPid) -> case Transport:controlling_process(Socket, ProtocolPid) of ok -> - ProtocolPid ! {handshake, Ref, Transport, Socket, AckTimeout}, + ProtocolPid ! {handshake, Ref, Transport, Socket, HandshakeTimeout}, put(SupPid, active), CurConns2 = CurConns + 1, if CurConns2 < MaxConns -> |