diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2013-03-11 15:34:28 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2013-03-18 14:36:43 +0000 |
commit | 173e72e64c6a07ae97660c322396b66215009f33 (patch) | |
tree | ebabc3004e4f306bc89b43376dd13f5f58da9e61 /ssl/t1_clnt.c | |
parent | 80ccc66d7eedb2d06050130c77c482ae1584199a (diff) |
DTLS revision.
Revise DTLS code. There was a *lot* of code duplication in the
DTLS code that generates records. This makes it harder to maintain and
sometimes a TLS update is omitted by accident from the DTLS code.
Specifically almost all of the record generation functions have code like
this:
some_pointer = buffer + HANDSHAKE_HEADER_LENGTH;
... Record creation stuff ...
set_handshake_header(ssl, SSL_MT_SOMETHING, message_len);
...
write_handshake_message(ssl);
Where the "Record creation stuff" is identical between SSL/TLS and DTLS or
in some cases has very minor differences.
By adding a few fields to SSL3_ENC to include the header length, some flags
and function pointers for handshake header setting and handshake writing the
code can cope with both cases.
Note: although this passes "make test" and some simple DTLS tests there may
be some minor differences in the DTLS code that have to be accounted for.
Diffstat (limited to 'ssl/t1_clnt.c')
0 files changed, 0 insertions, 0 deletions