mbedtls/library
Hanno Becker e694c3ef3e Remove ciphersuite_info from ssl_transform
Prior to this commit, the security parameter struct `ssl_transform`
contained a `ciphersuite_info` field pointing to the information
structure for the negotiated ciphersuite. However, the only
information extracted from that structure that was used in the core
encryption and decryption functions `ssl_encrypt_buf`/`ssl_decrypt_buf`
was the authentication tag length in case of an AEAD cipher.

The present commit removes the `ciphersuite_info` field from the
`ssl_transform` structure and adds an explicit `taglen` field
for AEAD authentication tag length.

This is in accordance with the principle that the `ssl_transform`
structure should contain the raw parameters needed for the record
encryption and decryption functions to work, but not the higher-level
information that gave rise to them. For example, the `ssl_transform`
structure implicitly contains the encryption/decryption keys within
their cipher contexts, but it doesn't contain the SSL master or
premaster secrets. Likewise, it contains an explicit `maclen`, while
the status of the 'Truncated HMAC' extension -- which  determines the
value of `maclen` when the `ssl_transform` structure is created in
`ssl_derive_keys` -- is not contained in `ssl_transform`.

The `ciphersuite_info` pointer was used in other places outside
the encryption/decryption functions during the handshake, and for
these functions to work, this commit adds a `ciphersuite_info` pointer
field to the handshake-local `ssl_handshake_params` structure.
2019-04-25 12:58:21 +01:00
..
.gitignore
aes.c
aesni.c
arc4.c
aria.c
asn1parse.c
asn1write.c Add new function mbedtls_asn1_write_named_bitstring() 2019-02-28 09:36:30 +00:00
base64.c
bignum.c Merge remote-tracking branch 'origin/pr/2405' into development 2019-04-05 14:08:49 +01:00
blowfish.c
camellia.c
ccm.c
certs.c
chacha20.c
chachapoly.c
cipher_wrap.c Wrap lines at 80 columns 2019-04-02 10:07:28 -07:00
cipher.c Wrap lines at 80 columns 2019-04-02 10:07:28 -07:00
cmac.c
CMakeLists.txt Update library version to 2.17.0 2019-03-19 16:12:55 +00:00
ctr_drbg.c
debug.c Merge remote-tracking branch 'origin/pr/1818' into development 2019-03-05 16:27:38 +00:00
des.c
dhm.c
ecdh.c Fix ECDH secret export for Mongomery curves 2019-02-26 16:49:52 +00:00
ecdsa.c
ecjpake.c
ecp_curves.c
ecp.c ECP: remove extra whitespaces 2019-02-26 17:02:37 +00:00
entropy_poll.c
entropy.c
error.c
gcm.c
havege.c
hkdf.c
hmac_drbg.c
Makefile
md2.c
md4.c
md5.c
md_wrap.c
md.c
memory_buffer_alloc.c
net_sockets.c
nist_kw.c
oid.c Add certificate policy oid x509 extension 2019-04-16 13:26:54 +03:00
padlock.c
pem.c
pk_wrap.c
pk.c
pkcs5.c
pkcs11.c
pkcs12.c
pkparse.c
pkwrite.c
platform_util.c
platform.c
poly1305.c
ripemd160.c
rsa_internal.c
rsa.c
sha1.c
sha256.c
sha512.c
ssl_cache.c
ssl_ciphersuites.c Reduce priority of 3DES ciphersuites 2019-03-01 10:19:27 +01:00
ssl_cli.c Remove ciphersuite_info from ssl_transform 2019-04-25 12:58:21 +01:00
ssl_cookie.c
ssl_srv.c Remove ciphersuite_info from ssl_transform 2019-04-25 12:58:21 +01:00
ssl_ticket.c Fix typo in SSL ticket documentation 2019-02-26 14:38:09 +00:00
ssl_tls.c Remove ciphersuite_info from ssl_transform 2019-04-25 12:58:21 +01:00
threading.c
timing.c
version_features.c Merge remote-tracking branch 'origin/pr/2532' into development 2019-04-16 14:42:11 +01:00
version.c
x509_create.c
x509_crl.c
x509_crt.c Merge remote-tracking branch 'origin/pr/2532' into development 2019-04-16 14:42:11 +01:00
x509_csr.c
x509.c Merge remote-tracking branch 'origin/pr/2106' into development 2019-04-05 13:47:06 +01:00
x509write_crt.c Add new function mbedtls_asn1_write_named_bitstring() 2019-02-28 09:36:30 +00:00
x509write_csr.c Add new function mbedtls_asn1_write_named_bitstring() 2019-02-28 09:36:30 +00:00
xtea.c