diff options
author | Ingela Anderton Andin <[email protected]> | 2016-05-27 10:45:08 +0200 |
---|---|---|
committer | Ingela Anderton Andin <[email protected]> | 2016-05-27 10:45:08 +0200 |
commit | 48085e18c31bd303f07d9d75cff282361e38ca8b (patch) | |
tree | f2215cb4831350ea20ffaae5b603a6142a892614 /lib/ssl/src/ssl.erl | |
parent | f0510a55fdc2591ea71107f77e36d6fc7b001874 (diff) | |
parent | df0c5663dd944a3dd06936105d0696a704c20e4e (diff) | |
download | otp-48085e18c31bd303f07d9d75cff282361e38ca8b.tar.gz otp-48085e18c31bd303f07d9d75cff282361e38ca8b.tar.bz2 otp-48085e18c31bd303f07d9d75cff282361e38ca8b.zip |
Merge branch 'kennethlakin/beast-mitigation-options/PR-1041/OTP-13629'
* kennethlakin/beast-mitigation-options/PR-1041/OTP-13629:
ssl: Add BEAST mitigation selection option
Diffstat (limited to 'lib/ssl/src/ssl.erl')
-rw-r--r-- | lib/ssl/src/ssl.erl | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/ssl/src/ssl.erl b/lib/ssl/src/ssl.erl index 51732b4a59..5dc2e583a5 100644 --- a/lib/ssl/src/ssl.erl +++ b/lib/ssl/src/ssl.erl @@ -725,6 +725,7 @@ handle_options(Opts0, Role) -> server, Role), protocol = proplists:get_value(protocol, Opts, tls), padding_check = proplists:get_value(padding_check, Opts, true), + beast_mitigation = handle_option(beast_mitigation, Opts, one_n_minus_one), fallback = handle_option(fallback, Opts, proplists:get_value(fallback, Opts, default_option_role(client, @@ -746,7 +747,7 @@ handle_options(Opts0, Role) -> alpn_preferred_protocols, next_protocols_advertised, client_preferred_next_protocols, log_alert, server_name_indication, honor_cipher_order, padding_check, crl_check, crl_cache, - fallback, signature_algs], + fallback, signature_algs, beast_mitigation], SockOpts = lists:foldl(fun(Key, PropList) -> proplists:delete(Key, PropList) @@ -986,6 +987,10 @@ validate_option(crl_check, Value) when (Value == best_effort) or (Value == peer) Value; validate_option(crl_cache, {Cb, {_Handle, Options}} = Value) when is_atom(Cb) and is_list(Options) -> Value; +validate_option(beast_mitigation, Value) when Value == one_n_minus_one orelse + Value == zero_n orelse + Value == disabled -> + Value; validate_option(Opt, Value) -> throw({error, {options, {Opt, Value}}}). |