tree 2389cb2a79c98d09b9d8a0442999e0f7943b3bda
parent 605949f84cfc299304c8940240294561299fe294
author Hanno Becker <hanno.becker@arm.com> 1562916829 +0100
committer Hanno Becker <hanno.becker@arm.com> 1565791566 +0100

Move updating the internal rec ptrs to outside of rec hdr parsing

The stack maintains pointers mbedtls_ssl_context::in_xxx pointing to
various parts of the [D]TLS record header. Originally, these fields
were determined and set in ssl_parse_record_header(). By now,
ssl_parse_record_header() has been modularized to setup an instance
of the internal SSL record structure mbedtls_record, and to derive
the old in_xxx fields from that.

This commit takes a further step towards removing the in_xxx fields
by deriving them from the established record structure _outside_ of
ssl_parse_record_header() after the latter has succeeded.

One exception is the handling of possible client reconnects,
which happens in the case then ssl_parse_record_header() returns
MBEDTLS_ERR_SSL_UNEXPECTED_RECORD; since ssl_check_client_reconnect()
so far uses the in_xxx fields, they need to be derived from the
record structure beforehand.
