fixeria has submitted this change. ( https://gerrit.osmocom.org/c/erlang/osmo_dia2gsup/+/40125?usp=email )
Change subject: osmo_dia2gsup: move env parsing and logging to listen/1 ......................................................................
osmo_dia2gsup: move env parsing and logging to listen/1
In preparation for follow-up patches, make the listen/1 function self-contained by letting it consume the environment on its own.
Change-Id: I8ca4cc0b830d281ada5ba56bc98a9511937b8b81 --- M src/osmo_dia2gsup.erl 1 file changed, 13 insertions(+), 12 deletions(-)
Approvals: pespin: Looks good to me, approved Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve
diff --git a/src/osmo_dia2gsup.erl b/src/osmo_dia2gsup.erl index b60d049..e38f5e3 100644 --- a/src/osmo_dia2gsup.erl +++ b/src/osmo_dia2gsup.erl @@ -101,13 +101,7 @@ % DIAMETER side ProdName = atom_to_list(?MODULE), ok = diameter:start_service(?SVC_NAME, ?SERVICE(ProdName)), - - Ip = get_env(diameter_ip, "127.0.0.8"), - Port = get_env(diameter_port, 3868), - Proto = get_env(diameter_proto, sctp), - ConnectTimer = get_env(diameter_connect_timer, 30000), - listen(?SVC_NAME, {address, Proto, parse_addr(Ip), Port}, {timer, ConnectTimer}), - lager:info("Diameter HSS Application started on IP ~s, ~p port ~p~n", [Ip, Proto, Port]), + listen(?SVC_NAME), {ok, State}.
%% @callback gen_server @@ -147,12 +141,19 @@ %% Internal Function Definitions %% ------------------------------------------------------------------
-listen(Name, {address, Protocol, IPAddr, Port}, {timer, ConnectTimer}) -> - TransOpts = [{transport_module, tmod(Protocol)}, - {transport_config, [{reuseaddr, true}, - {ip, IPAddr}, {port, Port}]}, +listen(Name) -> + LAddr = get_env(diameter_ip, "127.0.0.8"), + LPort = get_env(diameter_port, 3868), + Proto = get_env(diameter_proto, sctp), + ConnectTimer = get_env(diameter_connect_timer, 30000), + TransOpts = [{transport_module, tmod(Proto)}, + {transport_config, [{ip, parse_addr(LAddr)}, + {port, LPort}, + {reuseaddr, true}]}, {connect_timer, ConnectTimer}], - {ok, _} = diameter:add_transport(Name, {listen, TransOpts}). + {ok, _} = diameter:add_transport(Name, {listen, TransOpts}), + lager:info("Diameter HSS Application started on IP ~s, ~p port ~p~n", + [LAddr, Proto, LPort]).
tmod(tcp) -> diameter_tcp; tmod(sctp) -> diameter_sctp.