aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssl/src/ssl.erl
diff options
context:
space:
mode:
authorIngela Anderton Andin <[email protected]>2015-03-05 09:15:24 +0100
committerIngela Anderton Andin <[email protected]>2015-03-05 09:15:24 +0100
commit549785976441514377e1da14c5c1e7fb289456e0 (patch)
tree70e09cf100cd86020a77f32b4d5d99fe680927a6 /lib/ssl/src/ssl.erl
parent71b52f31772210a7160317966ca46e36140b935a (diff)
parented540bd0e457fd43a5b3eaf41f9886cb63a2755a (diff)
downloadotp-549785976441514377e1da14c5c1e7fb289456e0.tar.gz
otp-549785976441514377e1da14c5c1e7fb289456e0.tar.bz2
otp-549785976441514377e1da14c5c1e7fb289456e0.zip
Merge branch 'ia/ssl/TLS_FALLBACK_SCSV/OTP-12458' into maint
* ia/ssl/TLS_FALLBACK_SCSV/OTP-12458: ssl: Implement support for TLS_FALLBACK_SCSV
Diffstat (limited to 'lib/ssl/src/ssl.erl')
-rw-r--r--lib/ssl/src/ssl.erl8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/ssl/src/ssl.erl b/lib/ssl/src/ssl.erl
index 4b7f49547b..5f4ad7f013 100644
--- a/lib/ssl/src/ssl.erl
+++ b/lib/ssl/src/ssl.erl
@@ -657,7 +657,8 @@ handle_options(Opts0) ->
server_name_indication = handle_option(server_name_indication, Opts, undefined),
honor_cipher_order = handle_option(honor_cipher_order, Opts, false),
protocol = proplists:get_value(protocol, Opts, tls),
- padding_check = proplists:get_value(padding_check, Opts, true)
+ padding_check = proplists:get_value(padding_check, Opts, true),
+ fallback = proplists:get_value(fallback, Opts, false)
},
CbInfo = proplists:get_value(cb_info, Opts, {gen_tcp, tcp, tcp_closed, tcp_error}),
@@ -670,7 +671,8 @@ handle_options(Opts0) ->
cb_info, renegotiate_at, secure_renegotiate, hibernate_after,
erl_dist, next_protocols_advertised,
client_preferred_next_protocols, log_alert,
- server_name_indication, honor_cipher_order, padding_check],
+ server_name_indication, honor_cipher_order, padding_check,
+ fallback],
SockOpts = lists:foldl(fun(Key, PropList) ->
proplists:delete(Key, PropList)
@@ -850,6 +852,8 @@ validate_option(honor_cipher_order, Value) when is_boolean(Value) ->
Value;
validate_option(padding_check, Value) when is_boolean(Value) ->
Value;
+validate_option(fallback, Value) when is_boolean(Value) ->
+ Value;
validate_option(Opt, Value) ->
throw({error, {options, {Opt, Value}}}).