aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssl/src/ssl_handshake.hrl
diff options
context:
space:
mode:
authorAndreas Schultz <[email protected]>2012-09-20 14:07:50 +0200
committerIngela Anderton Andin <[email protected]>2013-01-17 14:52:26 +0100
commit938a5246a52d30897b4f47439352da4425ea6fc5 (patch)
treefb981e2448019910d1c3b322dadfd865046880e2 /lib/ssl/src/ssl_handshake.hrl
parente825090fd18face13a2d89f2676d810f96b2c69c (diff)
downloadotp-938a5246a52d30897b4f47439352da4425ea6fc5.tar.gz
otp-938a5246a52d30897b4f47439352da4425ea6fc5.tar.bz2
otp-938a5246a52d30897b4f47439352da4425ea6fc5.zip
SSL: simplify server key encoding, decoding and signature handling
server key encoding depends to the negotiated key exchange. Before the encoding was limited to diffie-hellman keys. This changes allows to select the key structure to decode and verify. It also consolidates the transport encoding of the parameters into one place.
Diffstat (limited to 'lib/ssl/src/ssl_handshake.hrl')
-rw-r--r--lib/ssl/src/ssl_handshake.hrl9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/ssl/src/ssl_handshake.hrl b/lib/ssl/src/ssl_handshake.hrl
index 9af6511d68..2414d5b666 100644
--- a/lib/ssl/src/ssl_handshake.hrl
+++ b/lib/ssl/src/ssl_handshake.hrl
@@ -141,9 +141,14 @@
}).
-record(server_key_exchange, {
+ exchange_keys
+ }).
+
+-record(server_key_params, {
params, %% #server_rsa_params{} | #server_dh_params{}
- signed_params, %% #signature{}
- hashsign %% term(atom(), atom())
+ params_bin,
+ hashsign, %% term(atom(), atom())
+ signature %% #signature{}
}).
%% enum { anonymous, rsa, dsa } SignatureAlgorithm;