diff options
author | Micael Karlberg <bmk@erlang.org> | 2020-09-21 23:04:15 +0200 |
---|---|---|
committer | Micael Karlberg <bmk@erlang.org> | 2020-11-05 15:29:32 +0100 |
commit | fc68b3a3923c419530fc27093df6c80258786587 (patch) | |
tree | b51d64220be0f09363bc11809cc144b7d906117a /lib/snmp/src/agent/snmpa_net_if.erl | |
parent | d957e05f3d3e8c951b6ed5e4e0c42ce925a79620 (diff) | |
download | erlang-fc68b3a3923c419530fc27093df6c80258786587.tar.gz |
[snmp|agent] Transport options processing
Improved/fixed the transport options processing.
Also, improve verbosity printouts from MPD.
OTP-16649
Diffstat (limited to 'lib/snmp/src/agent/snmpa_net_if.erl')
-rw-r--r-- | lib/snmp/src/agent/snmpa_net_if.erl | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/lib/snmp/src/agent/snmpa_net_if.erl b/lib/snmp/src/agent/snmpa_net_if.erl index c47a33aee7..c50ba285af 100644 --- a/lib/snmp/src/agent/snmpa_net_if.erl +++ b/lib/snmp/src/agent/snmpa_net_if.erl @@ -468,16 +468,24 @@ gen_udp_range_open(Min, Max, Opts) -> ?vtrace("gen_udp_range_open -> entry with" "~n Min: ~w" "~n Max: ~w", [Min, Max]), - case gen_udp:open(Min, Opts) of + try gen_udp:open(Min, Opts) of {ok, Socket} -> ?vtrace("gen_udp_range_open(~w,~w) -> created: " "~n ~p", [Min, Max, Socket]), {Socket, Min}; {error, eaddrinuse} -> - ?vtrace("gen_udp_range_open(~w,~w) -> eaddrinuse"), + ?vdebug("gen_udp_range_open(~w,~w) -> eaddrinuse"), gen_udp_range_open(Min+1, Max, Opts); {error, Reason} -> + ?vdebug("gen_udp_range_open(~w,~w) -> ~w", [Reason]), throw({udp_open, {open, Reason}}) + catch + C:E:S -> + ?vinfo("gen_udp_range_open(~w,~w) -> failed open socket: " + "~n C: ~p" + "~n E: ~p" + "~n S: ~p", [Min, Max, C, E, S]), + erlang:raise(C, E, S) end. gen_udp_ranges_open([], _Opts) -> @@ -1945,6 +1953,13 @@ get_counters([Counter|Counters], Acc) -> %% This extracts the socket options from what is specified for %% the transport, or if not, from the "global" socket options. socket_opts(Domain, {IpAddr, PortInfo}, SocketOpts, DefaultOpts) -> + ?vtrace("socket_opts -> entry with" + "~n Domain: ~p" + "~n IpAddr: ~p" + "~n PortInfo: ~p" + "~n SpocketOpts: ~p" + "~n DefaultOpts: ~p", + [Domain, IpAddr, PortInfo, SocketOpts, DefaultOpts]), Opts = [binary | case snmp_conf:tdomain_to_family(Domain) of |