Compare commits
4 Commits
b5c8bf757d
...
6b53dd1526
| Author | SHA1 | Date | |
|---|---|---|---|
| 6b53dd1526 | |||
| c8b9337da8 | |||
| b33aeb8014 | |||
| 0238fbbd2a |
@@ -11,9 +11,9 @@ start_link(Port, CertDir) ->
|
|||||||
supervisor:start_link({local, ?MODULE}, ?MODULE, [Port, CertDir]).
|
supervisor:start_link({local, ?MODULE}, ?MODULE, [Port, CertDir]).
|
||||||
|
|
||||||
init([Port, CertDir]) ->
|
init([Port, CertDir]) ->
|
||||||
SupFlags = #{stragegy => one_for_one,
|
SupFlags = #{strategy => one_for_one,
|
||||||
intensity => 1,
|
intensity => 5,
|
||||||
period => 5},
|
period => 10},
|
||||||
ChildSpecs = [#{id => session_sup,
|
ChildSpecs = [#{id => session_sup,
|
||||||
start => {session_sup, start_link, []},
|
start => {session_sup, start_link, []},
|
||||||
restart => permanent,
|
restart => permanent,
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ start_link(Socket) ->
|
|||||||
gen_server:start_link(?MODULE, Socket, []).
|
gen_server:start_link(?MODULE, Socket, []).
|
||||||
|
|
||||||
init(Socket) ->
|
init(Socket) ->
|
||||||
ssl:setopts(Socket, [{active, true}]),
|
ok = ssl:setopts(Socket, [{active, true}]),
|
||||||
{ok, #{socket => Socket}}.
|
{ok, #{socket => Socket}}.
|
||||||
|
|
||||||
handle_call(_Request, _From, State) ->
|
handle_call(_Request, _From, State) ->
|
||||||
@@ -26,7 +26,7 @@ handle_info({ssl, Socket, Data}, State) ->
|
|||||||
{ok, {foo, _}} ->
|
{ok, {foo, _}} ->
|
||||||
{ok, Encoded}
|
{ok, Encoded}
|
||||||
= 'StudySystemProtocol':encode('Response', {msg, "Foo"}),
|
= 'StudySystemProtocol':encode('Response', {msg, "Foo"}),
|
||||||
ssl:send(Socket, Encoded);
|
ok = ssl:send(Socket, Encoded);
|
||||||
Result ->
|
Result ->
|
||||||
io:format("Invalid message: ~p~n", [Result]),
|
io:format("Invalid message: ~p~n", [Result]),
|
||||||
ok
|
ok
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
-export([init/1, handle_call/3, handle_cast/2, handle_info/2,
|
-export([init/1, handle_call/3, handle_cast/2, handle_info/2,
|
||||||
terminate/2, code_change/3]).
|
terminate/2, code_change/3]).
|
||||||
|
|
||||||
-record(state, {socket, acceptor}).
|
-record(state, {socket}).
|
||||||
|
|
||||||
start_link(Port, CertDir) ->
|
start_link(Port, CertDir) ->
|
||||||
gen_server:start_link({local, ?MODULE}, ?MODULE, [Port, CertDir], []).
|
gen_server:start_link({local, ?MODULE}, ?MODULE, [Port, CertDir], []).
|
||||||
@@ -39,7 +39,7 @@ handle_info(accept, State = #state{socket = Socket}) ->
|
|||||||
end,
|
end,
|
||||||
{noreply, State};
|
{noreply, State};
|
||||||
handle_info({handshake, TlsSocket}, State) ->
|
handle_info({handshake, TlsSocket}, State) ->
|
||||||
case ssl:handshake(TlsSocket) of
|
case ssl:handshake(TlsSocket, 5000) of
|
||||||
{ok, ClientSocket} ->
|
{ok, ClientSocket} ->
|
||||||
{ok, Pid} = session_sup:start_session(ClientSocket),
|
{ok, Pid} = session_sup:start_session(ClientSocket),
|
||||||
ok = ssl:controlling_process(ClientSocket, Pid);
|
ok = ssl:controlling_process(ClientSocket, Pid);
|
||||||
|
|||||||
Reference in New Issue
Block a user