From: Peter Lemenkov <lemenkov@redhat.com>
Date: Fri, 15 Jul 2016 16:01:08 +0200
Subject: [PATCH] Use proto_dist from command line
Use protocol distribution value from command line when provided instead
of always using default value (inet_tcp) when trying to check epmd.
If provided more than one protocol distribution types, then use the
first one.
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/deps/rabbit_common/src/rabbit_nodes_common.erl b/deps/rabbit_common/src/rabbit_nodes_common.erl
index dc00eaa300..e18afc13e0 100644
--- a/deps/rabbit_common/src/rabbit_nodes_common.erl
+++ b/deps/rabbit_common/src/rabbit_nodes_common.erl
@@ -105,10 +105,15 @@ epmd_port() ->
ensure_epmd() ->
Exe = rabbit_runtime:get_erl_path(),
ID = rabbit_misc:random(1000000000),
+ ProtoDist = case init:get_argument(proto_dist) of
+ {ok, [Proto | _Protos]} -> Proto;
+ error -> "inet_tcp"
+ end,
Port = open_port(
{spawn_executable, Exe},
[{args, ["-boot", "no_dot_erlang",
"-sname", rabbit_misc:format("epmd-starter-~b", [ID]),
+ "-proto_dist", rabbit_misc:format("~p", [ProtoDist]),
"-noinput", "-s", "erlang", "halt"]},
exit_status, stderr_to_stdout, use_stdio]),
port_shutdown_loop(Port).