aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssl/src/ssl_config.erl
diff options
context:
space:
mode:
authorIngela Anderton Andin <[email protected]>2018-04-30 07:45:25 +0200
committerIngela Anderton Andin <[email protected]>2018-04-30 07:45:25 +0200
commit6e729eb3d4edf2a2f5f0d7b0a0d36f7e3d031a40 (patch)
treefc3166e618d7844a004704e64d49e82bc2f9c8c2 /lib/ssl/src/ssl_config.erl
parent52c11d5afd18405eaa293bb881eddf23f408850f (diff)
parent973293516a0d3e5148aa567fe1da65821efe532a (diff)
downloadotp-6e729eb3d4edf2a2f5f0d7b0a0d36f7e3d031a40.tar.gz
otp-6e729eb3d4edf2a2f5f0d7b0a0d36f7e3d031a40.tar.bz2
otp-6e729eb3d4edf2a2f5f0d7b0a0d36f7e3d031a40.zip
Merge branch 'ingela/ssl/do-not-hardcode-cipher-suites'
* ingela/ssl/do-not-hardcode-cipher-suites: ssl: Fix ECDSA key decode clause ssl: Avoid hardcoding of cipher suites and fix ECDH suite handling ssl: Run all test case combinations ssl: Update tests to reflect sslv3 is not supported by default
Diffstat (limited to 'lib/ssl/src/ssl_config.erl')
-rw-r--r--lib/ssl/src/ssl_config.erl8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/ssl/src/ssl_config.erl b/lib/ssl/src/ssl_config.erl
index 022fb7eac0..452a98e683 100644
--- a/lib/ssl/src/ssl_config.erl
+++ b/lib/ssl/src/ssl_config.erl
@@ -132,7 +132,13 @@ private_key(#'PrivateKeyInfo'{privateKeyAlgorithm =
#'PrivateKeyInfo_privateKeyAlgorithm'{algorithm = ?'id-dsa'},
privateKey = Key}) ->
public_key:der_decode('DSAPrivateKey', iolist_to_binary(Key));
-
+private_key(#'PrivateKeyInfo'{privateKeyAlgorithm =
+ #'PrivateKeyInfo_privateKeyAlgorithm'{algorithm = ?'id-ecPublicKey',
+ parameters = {asn1_OPENTYPE, Parameters}},
+ privateKey = Key}) ->
+ ECKey = public_key:der_decode('ECPrivateKey', iolist_to_binary(Key)),
+ ECParameters = public_key:der_decode('EcpkParameters', Parameters),
+ ECKey#'ECPrivateKey'{parameters = ECParameters};
private_key(Key) ->
Key.