mbedtls/include/polarssl
Hanno Becker 10699cc96c Simplify retaining of messages for future processing
There are situations in which it is not clear what message to expect
next. For example, the message following the ServerHello might be
either a Certificate, a ServerKeyExchange or a CertificateRequest. We
deal with this situation in the following way: Initially, the message
processing function for one of the allowed message types is called,
which fetches and decodes a new message. If that message is not the
expected one, the function returns successfully (instead of throwing
an error as usual for unexpected messages), and the handshake
continues to the processing function for the next possible message. To
not have this function fetch a new message, a flag in the SSL context
structure is used to indicate that the last message was retained for
further processing, and if that's set, the following processing
function will not fetch a new record.

This commit simplifies the usage of this message-retaining parameter
by doing the check within the record-fetching routine instead of the
specific message-processing routines. The code gets cleaner this way
and allows retaining messages to be used in other situations as well
without much effort. This will be used in the next commits.
2017-06-08 15:41:02 +01:00
..
aes.h Rename website and repository 2015-03-06 13:17:10 +00:00
aesni.h Add missing extern "C" guard in aesni.h 2015-03-10 16:12:29 +00:00
arc4.h Rename website and repository 2015-03-06 13:17:10 +00:00
asn1.h Rename website and repository 2015-03-06 13:17:10 +00:00
asn1write.h Rename website and repository 2015-03-06 13:17:10 +00:00
base64.h Fix references to non-standard SIZE_T_MAX 2015-10-05 15:29:48 +01:00
bignum.h Fix for MPI divide on MSVC 2016-01-03 22:39:18 +00:00
blowfish.h Rename website and repository 2015-03-06 13:17:10 +00:00
bn_mul.h Avoid build errors with -O0 due to assembly 2016-01-08 15:30:03 +01:00
camellia.h Rename website and repository 2015-03-06 13:17:10 +00:00
ccm.h Rename website and repository 2015-03-06 13:17:10 +00:00
certs.h Rename website and repository 2015-03-06 13:17:10 +00:00
check_config.h Add warning/errors about deprecated config items 2015-07-15 11:18:40 +02:00
cipher_wrap.h Rename website and repository 2015-03-06 13:17:10 +00:00
cipher.h Fix spurious #endif from previous cherry-pick 2015-10-05 14:57:01 +01:00
compat-1.2.h Fix macroization of inline in C++ 2015-10-05 14:28:17 +01:00
config.h Remove MBEDTLS_SSL_AEAD_RANDOM_IV feature 2016-10-13 14:14:16 +01:00
ctr_drbg.h Rename website and repository 2015-03-06 13:17:10 +00:00
debug.h Revert "Avoid formatting debug message uselessly" 2015-08-10 17:36:47 +02:00
des.h Rename website and repository 2015-03-06 13:17:10 +00:00
dhm.h Rename website and repository 2015-03-06 13:17:10 +00:00
ecdh.h Rename website and repository 2015-03-06 13:17:10 +00:00
ecdsa.h Clarify the use of ECDSA API 2017-06-07 17:05:00 +01:00
ecp.h Typos and doc additions 2015-05-11 10:44:11 +01:00
entropy_poll.h Rename website and repository 2015-03-06 13:17:10 +00:00
entropy.h Rename website and repository 2015-03-06 13:17:10 +00:00
error.h Rename website and repository 2015-03-06 13:17:10 +00:00
gcm.h Fix documentation for mbedtls_gcm_finish() 2016-10-13 12:54:32 +01:00
havege.h Rename website and repository 2015-03-06 13:17:10 +00:00
hmac_drbg.h Rename website and repository 2015-03-06 13:17:10 +00:00
md2.h Rename website and repository 2015-03-06 13:17:10 +00:00
md4.h Rename website and repository 2015-03-06 13:17:10 +00:00
md5.h Rename website and repository 2015-03-06 13:17:10 +00:00
md_wrap.h Rename website and repository 2015-03-06 13:17:10 +00:00
md.h Fix macroization of inline in C++ 2015-10-05 14:28:17 +01:00
memory_buffer_alloc.h Rename website and repository 2015-03-06 13:17:10 +00:00
memory.h Add POLARSSL_DEPRECATED_{WARNING,REMOVED} 2015-03-23 14:11:11 +01:00
net.h Rename website and repository 2015-03-06 13:17:10 +00:00
oid.h Typos and doc additions 2015-05-11 10:44:11 +01:00
openssl.h Fix macro name from wrong branch 2015-04-15 11:21:24 +02:00
padlock.h Disable padlock asm with ASan 2015-08-10 17:44:53 +02:00
pbkdf2.h Add POLARSSL_DEPRECATED_{WARNING,REMOVED} 2015-03-23 14:11:11 +01:00
pem.h Rename website and repository 2015-03-06 13:17:10 +00:00
pk_wrap.h Rename website and repository 2015-03-06 13:17:10 +00:00
pk.h Rename website and repository 2015-03-06 13:17:10 +00:00
pkcs5.h Rename website and repository 2015-03-06 13:17:10 +00:00
pkcs11.h Fix spurious #endif from previous cherry-pick 2015-10-05 14:57:01 +01:00
pkcs12.h Rename website and repository 2015-03-06 13:17:10 +00:00
platform.h Fix compile errors with NO_STD_FUNCTIONS 2015-06-03 10:20:33 +01:00
ripemd160.h Rename website and repository 2015-03-06 13:17:10 +00:00
rsa.h Document thread-safety of the RSA functions 2015-07-03 17:51:10 +02:00
sha1.h Rename website and repository 2015-03-06 13:17:10 +00:00
sha256.h Rename website and repository 2015-03-06 13:17:10 +00:00
sha512.h Rename website and repository 2015-03-06 13:17:10 +00:00
ssl_cache.h Fix typo in documenation 2015-10-20 09:38:10 +02:00
ssl_ciphersuites.h Remember suitable hash function for any signature algorithm. 2017-05-24 10:47:54 +01:00
ssl.h Simplify retaining of messages for future processing 2017-06-08 15:41:02 +01:00
threading.h Rename website and repository 2015-03-06 13:17:10 +00:00
timing.h Rename website and repository 2015-03-06 13:17:10 +00:00
version.h Updated version number to 1.3.19 for release 2017-03-08 17:22:34 +00:00
x509_crl.h Rename website and repository 2015-03-06 13:17:10 +00:00
x509_crt.h Add x509_crt_verify_info() 2015-04-17 17:24:25 +02:00
x509_csr.h Rename website and repository 2015-03-06 13:17:10 +00:00
x509.h Fix implementation of VERIFY_OPTIONAL verification mode 2017-06-07 11:35:05 +01:00
xtea.h Rename website and repository 2015-03-06 13:17:10 +00:00