aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diameter/src/base/diameter_config.erl
diff options
context:
space:
mode:
authorAnders Svensson <[email protected]>2015-03-24 11:03:23 +0100
committerAnders Svensson <[email protected]>2015-03-24 11:03:23 +0100
commit8cad0980fd09b36fe71ee91dd65e56fadb5a22b8 (patch)
treef3e587be5a8c16ee7f133bfd08f546c001d91cdc /lib/diameter/src/base/diameter_config.erl
parent487446e76102b27fa8df02a353c7fdeec2d091f1 (diff)
parent79b86a035adb0068e544401104d4c04db8e2b181 (diff)
downloadotp-8cad0980fd09b36fe71ee91dd65e56fadb5a22b8.tar.gz
otp-8cad0980fd09b36fe71ee91dd65e56fadb5a22b8.tar.bz2
otp-8cad0980fd09b36fe71ee91dd65e56fadb5a22b8.zip
Merge branch 'maint'
Diffstat (limited to 'lib/diameter/src/base/diameter_config.erl')
-rw-r--r--lib/diameter/src/base/diameter_config.erl16
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/diameter/src/base/diameter_config.erl b/lib/diameter/src/base/diameter_config.erl
index aa4d6e5a20..0d0304bf33 100644
--- a/lib/diameter/src/base/diameter_config.erl
+++ b/lib/diameter/src/base/diameter_config.erl
@@ -534,6 +534,7 @@ opt({capabilities, Os}) ->
opt({K, Tmo})
when K == capx_timeout;
+ K == dpr_timeout;
K == dpa_timeout ->
?IS_UINT32(Tmo);
@@ -644,13 +645,23 @@ make_config(SvcName, Opts) ->
{false, monitor},
{?NOMASK, sequence},
{nodes, restrict_connections},
+ {true, string_decode},
{[], spawn_opt}]),
+ D = proplists:get_value(string_decode, SvcOpts, true),
+
#service{name = SvcName,
rec = #diameter_service{applications = Apps,
- capabilities = Caps},
+ capabilities = binary_caps(Caps, D)},
options = SvcOpts}.
+binary_caps(Caps, true) ->
+ Caps;
+binary_caps(Caps, false) ->
+ diameter_capx:binary_caps(Caps).
+
+%% make_opts/2
+
make_opts(Opts, Defs) ->
Known = [{K, get_opt(K, Opts, D)} || {D,K} <- Defs],
Unknown = Opts -- Known,
@@ -669,7 +680,8 @@ opt(K, false = B)
opt(K, true = B)
when K == share_peers;
- K == use_shared_peers ->
+ K == use_shared_peers;
+ K == string_decode ->
B;
opt(restrict_connections, T)