diff options
-rw-r--r-- | lib/diameter/doc/src/notes.xml | 27 | ||||
-rw-r--r-- | lib/diameter/src/base/diameter.appup.src | 54 | ||||
-rw-r--r-- | lib/diameter/src/base/diameter_service.erl | 3 | ||||
-rw-r--r-- | lib/diameter/test/diameter_compiler_SUITE.erl | 12 | ||||
-rw-r--r-- | lib/diameter/test/diameter_traffic_SUITE.erl | 21 | ||||
-rw-r--r-- | lib/diameter/test/diameter_util.erl | 18 | ||||
-rw-r--r-- | lib/diameter/vsn.mk | 2 |
7 files changed, 84 insertions, 53 deletions
diff --git a/lib/diameter/doc/src/notes.xml b/lib/diameter/doc/src/notes.xml index aad86b966b..b89d84a4f6 100644 --- a/lib/diameter/doc/src/notes.xml +++ b/lib/diameter/doc/src/notes.xml @@ -142,6 +142,33 @@ first.</p> </section> +<section><title>Diameter 1.1</title> + + <section><title>Fixed Bugs and Malfunctions</title> + <list> + <item> + <p> + Fix fault in sending of 'closed' events.</p> + <p> + The fault made it possible for the 'closed' event not to + be sent following a failed capabilities exchange.</p> + <p> + Own Id: OTP-9824</p> + </item> + <item> + <p> + Fix faulty diameterc -name/-prefix.</p> + <p> + A minor blunder when introducing the new dictionary + parser in diameter-1.0 broke these options.</p> + <p> + Own Id: OTP-9826</p> + </item> + </list> + </section> + +</section> + <section><title>Diameter 1.0</title> <section><title>Fixed Bugs and Malfunctions</title> diff --git a/lib/diameter/src/base/diameter.appup.src b/lib/diameter/src/base/diameter.appup.src index 9b2a7d18ab..5655f98c1b 100644 --- a/lib/diameter/src/base/diameter.appup.src +++ b/lib/diameter/src/base/diameter.appup.src @@ -20,30 +20,38 @@ {"%VSN%", [ - {"0.9", [{restart_application, diameter}]}, - {"0.10", [{restart_application, diameter}]}, - {"1.0", [{restart_application, diameter}]}, - {"1.1", [%% new code - {add_module, diameter_transport}, - %% modified code - {load, diameter_sctp}, - {load, diameter_stats}, - {load, diameter_service}, - {load, diameter_config}, - {load, diameter_codec}, - {load, diameter_watchdog}, - {load, diameter_peer}, - {load, diameter_peer_fsm}, - {load, diameter}, - %% unmodified but including modified diameter.hrl - {load, diameter_callback}, - {load, diameter_capx}, - {load, diameter_types}]} + {"0.9", [{restart_application, diameter}]}, + {"0.10", [{restart_application, diameter}]}, + {"1.0", [{restart_application, diameter}]}, + {"1.1", [{restart_application, diameter}]}, + {"1.2", [{load, diameter}, + {load, diameter_capx}, + {load, diameter_codec}, + {load, diameter_peer}, + {load, diameter_reg}, + %% order significant from here + {load, diameter_session}, + {load, diameter_peer_fsm}, + {load, diameter_service}, + {load, diameter_watchdog}, + {load, diameter_config}]}, + {"1.2.1", [{load, diameter}, + {load, diameter_capx}, + {load, diameter_peer}, + {load, diameter_reg}, + %% order significant from here + {load, diameter_session}, + {load, diameter_peer_fsm}, + {load, diameter_service}, + {load, diameter_watchdog}, + {load, diameter_config}]} ], [ - {"0.9", [{restart_application, diameter}]}, - {"0.10", [{restart_application, diameter}]}, - {"1.0", [{restart_application, diameter}]}, - {"1.1", [{restart_application, diameter}]} + {"0.9", [{restart_application, diameter}]}, + {"0.10", [{restart_application, diameter}]}, + {"1.0", [{restart_application, diameter}]}, + {"1.1", [{restart_application, diameter}]}, + {"1.2", [{restart_application, diameter}]}, + {"1.2.1", [{restart_application, diameter}]} ] }. diff --git a/lib/diameter/src/base/diameter_service.erl b/lib/diameter/src/base/diameter_service.erl index 29046e6462..a4a0b80348 100644 --- a/lib/diameter/src/base/diameter_service.erl +++ b/lib/diameter/src/base/diameter_service.erl @@ -3231,9 +3231,6 @@ peer_acc(ConnT, Acc, #peer{pid = Pid, | info_conn(ConnT, TPid, WS /= ?WD_DOWN)], Acc). -info_conn(ConnT, [TPid], B) -> - info_conn(ConnT, TPid, B); - info_conn(ConnT, TPid, true) when is_pid(TPid) -> try ets:lookup(ConnT, TPid) of diff --git a/lib/diameter/test/diameter_compiler_SUITE.erl b/lib/diameter/test/diameter_compiler_SUITE.erl index 4b792b5426..79bf9d32db 100644 --- a/lib/diameter/test/diameter_compiler_SUITE.erl +++ b/lib/diameter/test/diameter_compiler_SUITE.erl @@ -31,8 +31,8 @@ %% testcases -export([format/1, format/2, replace/1, replace/2, - generate/1, generate/4, generate/0, - examples/1, examples/0]). + generate/1, generate/4, + examples/1]). -export([dict/0]). %% fake dictionary module @@ -339,7 +339,7 @@ %% =========================================================================== suite() -> - [{timetrap, {minutes, 2}}]. + [{timetrap, {minutes, 10}}]. all() -> [format, @@ -407,9 +407,6 @@ re({RE, Repl}, Bin) -> %% %% Ensure success when generating code and compiling. -generate() -> - [{timetrap, {seconds, 2*length(?REPLACE)}}]. - generate(Config) -> Bin = proplists:get_value(base, Config), Rs = lists:zip(?REPLACE, lists:seq(1, length(?REPLACE))), @@ -436,9 +433,6 @@ generate(Mods, Bin, N, Mode) -> %% %% Compile dictionaries extracted from various standards. -examples() -> - [{timetrap, {seconds, 3*length(?EXAMPLES)}}]. - examples(_Config) -> Dir = filename:join([code:lib_dir(diameter, examples), "dict"]), [D || D <- ?EXAMPLES, _ <- [examples(?S(D), Dir)]]. diff --git a/lib/diameter/test/diameter_traffic_SUITE.erl b/lib/diameter/test/diameter_traffic_SUITE.erl index fa9333a226..c157b0e304 100644 --- a/lib/diameter/test/diameter_traffic_SUITE.erl +++ b/lib/diameter/test/diameter_traffic_SUITE.erl @@ -183,14 +183,14 @@ suite() -> all() -> [start, start_services, add_transports, result_codes] - ++ [{group, name([E,C]), P} || E <- ?ENCODINGS, - C <- ?CONNECTIONS, - P <- [[], [parallel]]] + ++ [{group, ?util:name([E,C]), P} || E <- ?ENCODINGS, + C <- ?CONNECTIONS, + P <- [[], [parallel]]] ++ [remove_transports, stop_services, stop]. groups() -> Ts = tc(), - [{name([E,C]), [], Ts} || E <- ?ENCODINGS, C <- ?CONNECTIONS]. + [{?util:name([E,C]), [], Ts} || E <- ?ENCODINGS, C <- ?CONNECTIONS]. init_per_group(Name, Config) -> [{group, Name} | Config]. @@ -559,7 +559,7 @@ call(Config, Req) -> call(Config, Req, Opts) -> Name = proplists:get_value(testcase, Config), - [Encoding, Client] = name(proplists:get_value(group, Config)), + [Encoding, Client] = ?util:name(proplists:get_value(group, Config)), diameter:call(?CLIENT, dict(Req), req(Req, Encoding), @@ -599,17 +599,6 @@ set(Dict, E, FV, Rec) set(_, _, _, Rec) -> Rec. -%% Contruct and deconstruct names to work around group names being -%% restricted to atoms. - -name(Names) - when is_list(Names) -> - ?A(string:join([?L(A) || A <- Names], ",")); - -name(A) - when is_atom(A) -> - [?A(S) || S <- string:tokens(?L(A), ",")]. - %% =========================================================================== %% diameter callbacks diff --git a/lib/diameter/test/diameter_util.erl b/lib/diameter/test/diameter_util.erl index 890d24f6f8..5af4ad9ba5 100644 --- a/lib/diameter/test/diameter_util.erl +++ b/lib/diameter/test/diameter_util.erl @@ -24,7 +24,8 @@ %% %% generic --export([consult/2, +-export([name/1, + consult/2, run/1, fold/3, foldl/3, @@ -45,6 +46,21 @@ -define(L, atom_to_list). + +%% --------------------------------------------------------------------------- +%% name/2 +%% +%% Contruct and deconstruct lists of atoms as atoms to work around +%% group names in common_test being restricted to atoms. + +name(Names) + when is_list(Names) -> + list_to_atom(string:join([atom_to_list(A) || A <- Names], ",")); + +name(A) + when is_atom(A) -> + [list_to_atom(S) || S <- string:tokens(atom_to_list(A), ",")]. + %% --------------------------------------------------------------------------- %% consult/2 %% diff --git a/lib/diameter/vsn.mk b/lib/diameter/vsn.mk index 48e6596e72..c9f74ffcec 100644 --- a/lib/diameter/vsn.mk +++ b/lib/diameter/vsn.mk @@ -18,7 +18,7 @@ # %CopyrightEnd% APPLICATION = diameter -DIAMETER_VSN = 1.2 +DIAMETER_VSN = 1.3 PRE_VSN = APP_VSN = "$(APPLICATION)-$(DIAMETER_VSN)$(PRE_VSN)" |