aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngela Anderton Andin <[email protected]>2018-09-18 18:57:35 +0200
committerIngela Anderton Andin <[email protected]>2018-09-20 10:54:59 +0200
commit81cf7b6c922f56b2de4656b91a6d1af0d9a9c432 (patch)
tree14432dbb718c0ae8378b3a949ffec0374cbca379
parent51dcd166c58bf371da4c85250c8d76c27b4148da (diff)
downloadotp-81cf7b6c922f56b2de4656b91a6d1af0d9a9c432.tar.gz
otp-81cf7b6c922f56b2de4656b91a6d1af0d9a9c432.tar.bz2
otp-81cf7b6c922f56b2de4656b91a6d1af0d9a9c432.zip
ssl: Move link to correct process
The link should be between the connection process and the tls_sender process. But the start of the tls_sender process needs to be done by the process that also starts the connection process in order to correctly create the opaque #ssl_socket{}.
-rw-r--r--lib/ssl/src/tls_connection.erl1
-rw-r--r--lib/ssl/src/tls_sender.erl4
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/ssl/src/tls_connection.erl b/lib/ssl/src/tls_connection.erl
index 6c7511d2b3..2fde17a0fd 100644
--- a/lib/ssl/src/tls_connection.erl
+++ b/lib/ssl/src/tls_connection.erl
@@ -118,6 +118,7 @@ start_link(Role, Sender, Host, Port, Socket, Options, User, CbInfo) ->
init([Role, Sender, Host, Port, Socket, {SslOpts, _, _} = Options, User, CbInfo]) ->
process_flag(trap_exit, true),
+ link(Sender),
case SslOpts#ssl_options.erl_dist of
true ->
process_flag(priority, max);
diff --git a/lib/ssl/src/tls_sender.erl b/lib/ssl/src/tls_sender.erl
index 007fd345dd..db67d7ddff 100644
--- a/lib/ssl/src/tls_sender.erl
+++ b/lib/ssl/src/tls_sender.erl
@@ -67,9 +67,9 @@
%% same process is sending and receiving
%%--------------------------------------------------------------------
start() ->
- gen_statem:start_link(?MODULE, [], []).
+ gen_statem:start(?MODULE, [], []).
start(SpawnOpts) ->
- gen_statem:start_link(?MODULE, [], SpawnOpts).
+ gen_statem:start(?MODULE, [], SpawnOpts).
%%--------------------------------------------------------------------
-spec initialize(pid(), map()) -> ok.