diff options
author | Ingela Anderton Andin <[email protected]> | 2014-01-28 11:07:32 +0100 |
---|---|---|
committer | Ingela Anderton Andin <[email protected]> | 2014-01-28 11:07:32 +0100 |
commit | 9b0637d83248699eca1673d9b11a542cb2e63720 (patch) | |
tree | b72fa3cb493a163178f1a3e113c8c6089b4d86e2 /lib/ssl/src/ssl.erl | |
parent | bb5b33bd3a7c8cbb97695c00f4b9b0d89121f861 (diff) | |
parent | cb16d84c66b6040ca668b2e23ad4e740a3f3d0af (diff) | |
download | otp-9b0637d83248699eca1673d9b11a542cb2e63720.tar.gz otp-9b0637d83248699eca1673d9b11a542cb2e63720.tar.bz2 otp-9b0637d83248699eca1673d9b11a542cb2e63720.zip |
Merge branch 'ia/Vagabond/adt-honor-cipher-order/OTP-11621'
* ia/Vagabond/adt-honor-cipher-order/OTP-11621:
Implement 'honor_cipher_order' SSL server-side option
Diffstat (limited to 'lib/ssl/src/ssl.erl')
-rw-r--r-- | lib/ssl/src/ssl.erl | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/ssl/src/ssl.erl b/lib/ssl/src/ssl.erl index a7fd9f5f81..4646468cb6 100644 --- a/lib/ssl/src/ssl.erl +++ b/lib/ssl/src/ssl.erl @@ -640,7 +640,8 @@ handle_options(Opts0, _Role) -> make_next_protocol_selector( handle_option(client_preferred_next_protocols, Opts, undefined)), log_alert = handle_option(log_alert, Opts, true), - server_name_indication = handle_option(server_name_indication, Opts, undefined) + server_name_indication = handle_option(server_name_indication, Opts, undefined), + honor_cipher_order = handle_option(honor_cipher_order, Opts, false) }, CbInfo = proplists:get_value(cb_info, Opts, {gen_tcp, tcp, tcp_closed, tcp_error}), @@ -652,7 +653,8 @@ handle_options(Opts0, _Role) -> reuse_session, reuse_sessions, ssl_imp, cb_info, renegotiate_at, secure_renegotiate, hibernate_after, erl_dist, next_protocols_advertised, - client_preferred_next_protocols, log_alert, server_name_indication], + client_preferred_next_protocols, log_alert, + server_name_indication, honor_cipher_order], SockOpts = lists:foldl(fun(Key, PropList) -> proplists:delete(Key, PropList) @@ -840,6 +842,8 @@ validate_option(server_name_indication, disable) -> disable; validate_option(server_name_indication, undefined) -> undefined; +validate_option(honor_cipher_order, Value) when is_boolean(Value) -> + Value; validate_option(Opt, Value) -> throw({error, {options, {Opt, Value}}}). |