mbedtls/library
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
..
.gitignore Minor gitginore fixes 2015-01-28 15:34:01 +00:00
aes.c Rename website and repository 2015-03-06 13:17:10 +00:00
aesni.c Rename website and repository 2015-03-06 13:17:10 +00:00
arc4.c Rename website and repository 2015-03-06 13:17:10 +00:00
asn1parse.c Fix 1 byte overread in mbedtls_asn1_get_int() 2016-10-13 12:54:32 +01:00
asn1write.c Merge memory leak fix into branch 'mbedtls-1.3' 2016-01-02 00:28:19 +00:00
base64.c Add comment to integer overflow fix in base64.c 2017-02-25 21:27:17 +00:00
bignum.c Fix buffer overflow in mpi_write_string() 2017-03-02 23:01:54 +00:00
blowfish.c Rename website and repository 2015-03-06 13:17:10 +00:00
camellia.c Rename website and repository 2015-03-06 13:17:10 +00:00
ccm.c Fix for MSVC Compiler warnings 2016-11-10 15:40:53 +00:00
certs.c Rename website and repository 2015-03-06 13:17:10 +00:00
cipher.c Fix integer overflows in buffer bound checks 2017-02-25 21:25:44 +00:00
cipher_wrap.c Rename website and repository 2015-03-06 13:17:10 +00:00
CMakeLists.txt Updated version number to 1.3.19 for release 2017-03-08 17:22:34 +00:00
ctr_drbg.c Fix integer overflows in buffer bound checks 2017-02-25 21:25:44 +00:00
debug.c Revert "Avoid formatting debug message uselessly" 2015-08-10 17:36:47 +02:00
des.c Rename website and repository 2015-03-06 13:17:10 +00:00
dhm.c accept PKCS#3 DH parameters with privateValueLength included 2015-04-15 13:27:13 +02:00
ecdh.c Rename website and repository 2015-03-06 13:17:10 +00:00
ecdsa.c Rename website and repository 2015-03-06 13:17:10 +00:00
ecp.c Fix macroization of inline in C++ 2015-10-05 14:28:17 +01:00
ecp_curves.c ECP: Prevent freeing a buffer on stack 2017-02-28 20:24:52 +00:00
entropy.c Serious bug fix in entropy.c 2015-06-01 12:28:29 +02:00
entropy_poll.c Fix -Wshadow warnings 2015-08-31 11:07:51 +02:00
error.c Typos and doc additions 2015-05-11 10:44:11 +01:00
gcm.c Fix documentation for mbedtls_gcm_finish() 2016-10-13 12:54:32 +01:00
havege.c Rename website and repository 2015-03-06 13:17:10 +00:00
hmac_drbg.c Fix use of deprecated function in the library 2015-03-20 18:23:52 +00:00
Makefile Make ar invocation more portable 2016-01-08 15:28:40 +01:00
md.c Add POLARSSL_DEPRECATED_{WARNING,REMOVED} 2015-03-23 14:11:11 +01:00
md2.c Fix integer overflows in buffer bound checks 2017-02-25 21:25:44 +00:00
md4.c Fix warning with MD/SHA ALT implementation 2015-08-31 11:22:47 +02:00
md5.c Fix warning with MD/SHA ALT implementation 2015-08-31 11:22:47 +02:00
md_wrap.c Rename website and repository 2015-03-06 13:17:10 +00:00
memory_buffer_alloc.c Rename website and repository 2015-03-06 13:17:10 +00:00
net.c Fix for net_usleep() timing selftest on mingw 2016-01-15 14:36:08 +00:00
oid.c Fix typo in an OID name 2015-10-27 15:12:39 +01:00
padlock.c Fix bug in Via Padlock support 2015-04-02 10:53:59 +01:00
pbkdf2.c Add POLARSSL_DEPRECATED_{WARNING,REMOVED} 2015-03-23 14:11:11 +01:00
pem.c Fix buffer overreads in mbedtls_pem_read_buffer() 2017-02-25 21:25:06 +00:00
pk.c Fix data loss in unsigned int cast in PK 2017-02-15 10:44:02 +00:00
pk_wrap.c Fix data loss in unsigned int cast in PK 2017-02-15 10:44:02 +00:00
pkcs5.c Add missing 'const' on selftest data 2015-03-11 09:13:42 +00:00
pkcs11.c Rename website and repository 2015-03-06 13:17:10 +00:00
pkcs12.c Fix stack buffer overflow in pkcs12 2015-09-30 16:46:07 +02:00
pkparse.c Fix bug in pk_parse_key() 2015-04-15 11:21:24 +02:00
pkwrite.c Fix other occurrences of same bounds check issue 2015-10-27 11:47:37 +01:00
platform.c Fix compile errors with NO_STD_FUNCTIONS 2015-06-03 10:20:33 +01:00
ripemd160.c Rename website and repository 2015-03-06 13:17:10 +00:00
rsa.c Merge remote-tracking branch 'restricted/mbedtls-1.3' into mbedtls-1.3 2017-06-06 18:26:32 +02:00
sha1.c Fix warning with MD/SHA ALT implementation 2015-08-31 11:22:47 +02:00
sha256.c Fix warning with MD/SHA ALT implementation 2015-08-31 11:22:47 +02:00
sha512.c Fix warning with MD/SHA ALT implementation 2015-08-31 11:22:47 +02:00
ssl_cache.c Rename website and repository 2015-03-06 13:17:10 +00:00
ssl_ciphersuites.c Remember suitable hash function for any signature algorithm. 2017-05-24 10:47:54 +01:00
ssl_cli.c Simplify retaining of messages for future processing 2017-06-08 15:41:02 +01:00
ssl_srv.c Remember suitable hash function for any signature algorithm. 2017-05-24 10:47:54 +01:00
ssl_tls.c Simplify retaining of messages for future processing 2017-06-08 15:41:02 +01:00
threading.c Rename website and repository 2015-03-06 13:17:10 +00:00
timing.c Increase tolerance of timing selftest 2015-08-19 14:48:34 +02:00
version.c Rename website and repository 2015-03-06 13:17:10 +00:00
version_features.c Update features list 2016-10-13 22:11:15 +01:00
x509.c Fix integration of bugfix for #626 2016-10-17 22:41:54 +01:00
x509_create.c Fix other occurrences of same bounds check issue 2015-10-27 11:47:37 +01:00
x509_crl.c Fix memory leak in x509_crl_parse() 2017-02-28 17:36:06 +00:00
x509_crt.c Fix implementation of VERIFY_OPTIONAL verification mode 2017-06-07 11:35:05 +01:00
x509_csr.c Fix unused variable/function compilation warnings 2016-12-07 16:11:17 +00:00
x509write_crt.c Add missing bounds check in X509 DER write funcs 2016-10-13 12:45:07 +01:00
x509write_csr.c Add missing bounds check in X509 DER write funcs 2016-10-13 12:45:07 +01:00
xtea.c Rename website and repository 2015-03-06 13:17:10 +00:00