diff options
author | Anders Svensson <[email protected]> | 2015-05-16 17:39:28 +0200 |
---|---|---|
committer | Anders Svensson <[email protected]> | 2015-05-18 14:10:43 +0200 |
commit | 0c2807d5f4ed72051c633c3ae9d3e88d8839a672 (patch) | |
tree | bf1d95c0626e8b2eb88ce231915c570b03c8184f /lib/diameter/src | |
parent | 3e7ec99afb2469cff4e776de5b6d16909315ff88 (diff) | |
download | otp-0c2807d5f4ed72051c633c3ae9d3e88d8839a672.tar.gz otp-0c2807d5f4ed72051c633c3ae9d3e88d8839a672.tar.bz2 otp-0c2807d5f4ed72051c633c3ae9d3e88d8839a672.zip |
Include R-bit in unknown message counter keys
To differentiate between requests and answers, in analogy with relay
counters. This isn't backwards compatible, but these counters aren't yet
documented.
Diffstat (limited to 'lib/diameter/src')
-rw-r--r-- | lib/diameter/src/base/diameter_traffic.erl | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/diameter/src/base/diameter_traffic.erl b/lib/diameter/src/base/diameter_traffic.erl index e8afa089ef..517daf6678 100644 --- a/lib/diameter/src/base/diameter_traffic.erl +++ b/lib/diameter/src/base/diameter_traffic.erl @@ -1114,11 +1114,14 @@ msg_id(Hdr, Dict) -> ?APP_ID_RELAY -> {relay, R}; A -> - choose(A /= Aid orelse '' == Dict:msg_name(Code, 0 == R), - unknown, - Id) + unknown(A /= Aid orelse '' == Dict:msg_name(Code, 0 == R), Id) end. +unknown(true, {_, _, R}) -> + {unknown, R}; +unknown(false, Id) -> + Id. + %% No E-bit: can't be 3xxx. is_result(RC, false, _Dict0) -> RC < 3000 orelse 4000 =< RC; |