aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diameter/src/base/diameter_codec.erl
diff options
context:
space:
mode:
authorAnders Svensson <[email protected]>2015-03-24 11:02:56 +0100
committerAnders Svensson <[email protected]>2015-03-24 11:02:56 +0100
commit1ea921c277e69b6b0ffd49335b85e7bf36936d2d (patch)
tree31c582bcb62cdfa0a1fbf51b47741af4eb94b521 /lib/diameter/src/base/diameter_codec.erl
parentb7d8668ea5a4215da900bfcd2a1dbd51384cb0c7 (diff)
parentb8a7df45c9e57a832f7db9b9b875b31d0ab7d29c (diff)
downloadotp-1ea921c277e69b6b0ffd49335b85e7bf36936d2d.tar.gz
otp-1ea921c277e69b6b0ffd49335b85e7bf36936d2d.tar.bz2
otp-1ea921c277e69b6b0ffd49335b85e7bf36936d2d.zip
Merge branch 'anders/diameter/DiameterURI/OTP-12589' into maint
* anders/diameter/DiameterURI/OTP-12589: Adapt to changed DiameterURI defaults in RFC 6733 Reject transport=udp;protocol=diameter at DiameterURI encode
Diffstat (limited to 'lib/diameter/src/base/diameter_codec.erl')
-rw-r--r--lib/diameter/src/base/diameter_codec.erl9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/diameter/src/base/diameter_codec.erl b/lib/diameter/src/base/diameter_codec.erl
index cc0953f5d3..15a4c5e86f 100644
--- a/lib/diameter/src/base/diameter_codec.erl
+++ b/lib/diameter/src/base/diameter_codec.erl
@@ -81,6 +81,13 @@ setopts(Opts)
setopt({string_decode = K, false = B}) ->
setopt(K, B);
+%% Regard anything but the generated RFC 3588 dictionary as modern.
+%% This affects the interpretation of defaults during the decode
+%% of values of type DiameterURI, this having changed from RFC 3588.
+%% (So much for backwards compatibility.)
+setopt({common_dictionary, diameter_gen_base_rfc3588}) ->
+ setopt(rfc, 3588);
+
setopt(_) ->
ok.
@@ -91,6 +98,8 @@ getopt(Key) ->
case get({diameter, Key}) of
undefined when Key == string_decode ->
true;
+ undefined when Key == rfc ->
+ 6733;
V ->
V
end.