diff options
author | Ingela Anderton Andin <[email protected]> | 2014-03-04 10:52:44 +0100 |
---|---|---|
committer | Ingela Anderton Andin <[email protected]> | 2014-03-04 10:52:44 +0100 |
commit | 477824259524f918ad94d36fb0d3b746e4b12111 (patch) | |
tree | f3332642219137d663f7d713996a4ddf4322688a /lib/ssl/src | |
parent | cbf9cc25d05d8d3c87678fd8c6f437abbc9eb6b2 (diff) | |
parent | 9358afed5afdf9da8a19e325e32c1be4b723c705 (diff) | |
download | otp-477824259524f918ad94d36fb0d3b746e4b12111.tar.gz otp-477824259524f918ad94d36fb0d3b746e4b12111.tar.bz2 otp-477824259524f918ad94d36fb0d3b746e4b12111.zip |
Merge branch 'ia/ssl/proplist-input-check/OTP-11760'
* ia/ssl/proplist-input-check/OTP-11760:
ssl: Add input sanity check
Diffstat (limited to 'lib/ssl/src')
-rw-r--r-- | lib/ssl/src/ssl.erl | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/ssl/src/ssl.erl b/lib/ssl/src/ssl.erl index c3bdeb1a54..d46c05c5f3 100644 --- a/lib/ssl/src/ssl.erl +++ b/lib/ssl/src/ssl.erl @@ -557,6 +557,7 @@ do_connect(Address, Port, handle_options(Opts0, _Role) -> Opts = proplists:expand([{binary, [{mode, binary}]}, {list, [{mode, list}]}], Opts0), + assert_proplist(Opts), ReuseSessionFun = fun(_, _, _, _) -> true end, DefaultVerifyNoneFun = @@ -1042,3 +1043,10 @@ connection_sup(dtls_connection) -> binary_filename(FileName) -> Enc = file:native_name_encoding(), unicode:characters_to_binary(FileName, unicode, Enc). + +assert_proplist([]) -> + true; +assert_proplist([{Key,_} | Rest]) when is_atom(Key) -> + assert_proplist(Rest); +assert_proplist([Value | _]) -> + throw({option_not_a_key_value_tuple, Value}). |