openssl/ssl
Matt Caswell 7bb196a71a Handle SSL_shutdown while in init more appropriately
Calling SSL_shutdown while in init previously gave a "1" response, meaning
everything was successfully closed down (even though it wasn't). Better is
to send our close_notify, but fail when trying to receive one.

The problem with doing a shutdown while in the middle of a handshake is
that once our close_notify is sent we shouldn't really do anything else
(including process handshake/CCS messages) until we've received a
close_notify back from the peer. However the peer might send a CCS before
acting on our close_notify - so we won't be able to read it because we're
not acting on CCS messages!

Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-20 13:58:12 +00:00
..
record Adapt all EVP_CIPHER_CTX users for it becoming opaque 2016-01-12 13:52:22 +01:00
statem make EVP_PKEY opaque 2016-01-20 03:24:59 +00:00
bio_ssl.c Handle SSL_ERROR_WANT_X509_LOOKUP 2015-09-20 14:19:49 +01:00
d1_lib.c Regenerate SSL record/statem error strings 2016-01-10 20:18:05 -05:00
d1_msg.c Move in_handshake into STATEM 2015-10-30 08:39:47 +00:00
d1_srtp.c PACKETise ServerHello processing 2015-09-07 10:45:38 +01:00
install-ssl.com Updates following review comments 2015-05-16 09:20:52 +01:00
Makefile.in Remove some old makefile targets 2016-01-17 14:47:32 -05:00
methods.c Support disabling any or all TLS or DTLS versions 2016-01-19 09:57:15 -05:00
packet_locl.h Instead of a local hack, implement SIZE_MAX in numbers.h if it's missing 2016-01-02 21:11:02 +01:00
s3_cbc.c Cleanup: fix all sources that used EVP_MD_CTX_(create|init|destroy) 2015-12-07 17:40:20 +01:00
s3_enc.c Adapt all EVP_CIPHER_CTX users for it becoming opaque 2016-01-12 13:52:22 +01:00
s3_lib.c Handle SSL_shutdown while in init more appropriately 2016-01-20 13:58:12 +00:00
s3_msg.c Remove redundant code 2015-10-30 08:38:18 +00:00
ssl_algs.c Load module in SSL_library_init 2015-12-22 15:14:14 +00:00
ssl_asn1.c Rename some BUF_xxx to OPENSSL_xxx 2015-12-16 16:14:49 -05:00
ssl_cert.c make EVP_PKEY opaque 2016-01-20 03:24:59 +00:00
ssl_ciph.c GH528: "cipher -v" output is confusing. 2016-01-11 18:54:49 -05:00
ssl_conf.c Allow disabling the min and max version 2016-01-10 13:04:55 +01:00
ssl_err2.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
ssl_err.c Handle SSL_shutdown while in init more appropriately 2016-01-20 13:58:12 +00:00
ssl_lib.c Handle SSL_shutdown while in init more appropriately 2016-01-20 13:58:12 +00:00
ssl_locl.h RT4232: Extra space in help message. 2016-01-14 11:32:18 -05:00
ssl_mcnf.c Correct missing prototype 2015-12-30 14:57:16 +01:00
ssl_rsa.c make EVP_PKEY opaque 2016-01-20 03:24:59 +00:00
ssl_sess.c Validate ClientHello session_id field length and send alert on failure 2016-01-19 15:53:23 +00:00
ssl_stat.c Change SSL_state_string return strings to start with a T 2015-10-30 08:39:47 +00:00
ssl_txt.c Remove BIO_s_file_internal macro. 2015-10-02 14:22:05 -04:00
ssl_utst.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
ssl-lib.com Move SSLv3_*method() functions 2015-05-16 09:20:58 +01:00
t1_enc.c use TLS PRF 2016-01-19 14:00:32 +00:00
t1_ext.c Rename some BUF_xxx to OPENSSL_xxx 2015-12-16 16:14:49 -05:00
t1_lib.c make EVP_PKEY opaque 2016-01-20 03:24:59 +00:00
t1_reneg.c PACKETise ServerHello processing 2015-09-07 10:45:38 +01:00
t1_trce.c Remove fixed DH ciphersuites. 2015-12-19 16:14:51 +00:00
tls_srp.c Rename some BUF_xxx to OPENSSL_xxx 2015-12-16 16:14:49 -05:00