diff options
author | Micael Karlberg <[email protected]> | 2019-05-23 15:14:29 +0200 |
---|---|---|
committer | Micael Karlberg <[email protected]> | 2019-05-29 13:47:40 +0200 |
commit | 0eb29c0eebd4e58f294005dbe355e270208756d9 (patch) | |
tree | 8b07c5deb0c4afa8fd7cbd8d3019de4d50098639 /erts/emulator/test/socket_test_ttest_tcp_server.erl | |
parent | 56cad32ecdfa36ea7a4cddac1579eb1e414ec0fe (diff) | |
download | otp-0eb29c0eebd4e58f294005dbe355e270208756d9.tar.gz otp-0eb29c0eebd4e58f294005dbe355e270208756d9.tar.bz2 otp-0eb29c0eebd4e58f294005dbe355e270208756d9.zip |
[esock|ttest] Make it possible use local for ttest
Make Unix Domain (stream) socket work with the ttest
command line tool (for esock server and client).
OTP-15822
Diffstat (limited to 'erts/emulator/test/socket_test_ttest_tcp_server.erl')
-rw-r--r-- | erts/emulator/test/socket_test_ttest_tcp_server.erl | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/erts/emulator/test/socket_test_ttest_tcp_server.erl b/erts/emulator/test/socket_test_ttest_tcp_server.erl index cceaf0d0fc..e916fcb93e 100644 --- a/erts/emulator/test/socket_test_ttest_tcp_server.erl +++ b/erts/emulator/test/socket_test_ttest_tcp_server.erl @@ -206,22 +206,15 @@ server_accept(#{mod := Mod, {error, CPReason} -> (catch Mod:close(Sock)), (catch Mod:close(LSock)), - maybe_unlink(maps:get(port_or_path, State)), exit({controlling_process, CPReason}) end; {error, timeout} -> State; {error, AReason} -> (catch Mod:close(LSock)), - maybe_unlink(maps:get(port_or_path, State)), exit({accept, AReason}) end. -maybe_unlink(Path) when is_list(Path) -> - os:cmd("unlink " ++ Path); -maybe_unlink(_) -> - ok. - format_peername({Addr, Port}) -> case inet:gethostbyaddr(Addr) of {ok, #hostent{h_name = N}} -> @@ -241,7 +234,10 @@ maybe_start_stats_timer(_, _) -> start_stats_timer(Time, ProcStr, Pid) -> erlang:start_timer(Time, self(), {stats, Time, ProcStr, Pid}). -server_handle_message(#{parent := Parent, handlers := H} = State) -> +server_handle_message(#{mod := Mod, + lsock := LSock, + parent := Parent, + handlers := H} = State) -> receive {timeout, _TRef, {stats, Interval, ProcStr, Pid}} -> case server_handle_stats(ProcStr, Pid) of @@ -255,8 +251,7 @@ server_handle_message(#{parent := Parent, handlers := H} = State) -> {?MODULE, Ref, Parent, stop} -> reply(Parent, Ref, ok), lists:foreach(fun(P) -> handler_stop(P) end, H), - (catch socket:close(maps:get(lsock, State))), - maybe_unlink(maps:get(port_or_path, State)), + (catch Mod:close(LSock)), exit(normal); {'DOWN', _MRef, process, Pid, Reason} -> |