diff options
author | Ingela Anderton Andin <[email protected]> | 2017-01-26 11:59:11 +0100 |
---|---|---|
committer | Ingela Anderton Andin <[email protected]> | 2017-03-06 10:34:15 +0100 |
commit | 658aa05997d56c742be1a1126fc921b69d5d06a5 (patch) | |
tree | ba4418d544c1e85d04810c003560f9679f3b6ebe /lib/ssl/src/dtls_v1.erl | |
parent | b089b27a486e7175c1145db61d464922a46cad65 (diff) | |
download | otp-658aa05997d56c742be1a1126fc921b69d5d06a5.tar.gz otp-658aa05997d56c742be1a1126fc921b69d5d06a5.tar.bz2 otp-658aa05997d56c742be1a1126fc921b69d5d06a5.zip |
dtls: DTLS specific handling of socket and ciphers
DTLS does not support stream ciphers and needs diffrent
handling of the "#ssl_socket{}" handle .
Diffstat (limited to 'lib/ssl/src/dtls_v1.erl')
-rw-r--r-- | lib/ssl/src/dtls_v1.erl | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/ssl/src/dtls_v1.erl b/lib/ssl/src/dtls_v1.erl index ffd3e4b833..dd0d35d404 100644 --- a/lib/ssl/src/dtls_v1.erl +++ b/lib/ssl/src/dtls_v1.erl @@ -21,12 +21,21 @@ -include("ssl_cipher.hrl"). --export([suites/1, mac_hash/7, ecc_curves/1, corresponding_tls_version/1, corresponding_dtls_version/1]). +-export([suites/1, all_suites/1, mac_hash/7, ecc_curves/1, + corresponding_tls_version/1, corresponding_dtls_version/1]). -spec suites(Minor:: 253|255) -> [ssl_cipher:cipher_suite()]. suites(Minor) -> - tls_v1:suites(corresponding_minor_tls_version(Minor)). + lists:filter(fun(Cipher) -> + is_acceptable_cipher(ssl_cipher:suite_definition(Cipher)) + end, + tls_v1:suites(corresponding_minor_tls_version(Minor))). +all_suites(Version) -> + lists:filter(fun(Cipher) -> + is_acceptable_cipher(ssl_cipher:suite_definition(Cipher)) + end, + ssl_cipher:all_suites(corresponding_tls_version(Version))). mac_hash(Version, MacAlg, MacSecret, SeqNo, Type, Length, Fragment) -> tls_v1:mac_hash(MacAlg, MacSecret, SeqNo, Type, Version, @@ -50,3 +59,5 @@ corresponding_minor_dtls_version(2) -> 255; corresponding_minor_dtls_version(3) -> 253. +is_acceptable_cipher(Suite) -> + not ssl_cipher:is_stream_ciphersuite(Suite). |