summaryrefslogtreecommitdiffstats
path: root/ssl/s23_clnt.c
AgeCommit message (Collapse)Author
2016-06-27Change usage of RAND_pseudo_bytes to RAND_bytesMatt Caswell
RAND_pseudo_bytes() allows random data to be returned even in low entropy conditions. Sometimes this is ok. Many times it is not. For the avoidance of any doubt, replace existing usage of RAND_pseudo_bytes() with RAND_bytes(). Reviewed-by: Rich Salz <rsalz@openssl.org>
2015-09-02Fix session resumptionMatt Caswell
Commit f0348c842e7 introduced a problem with session resumption. The version for the session is fixed when the session is created. By moving the creation of the session earlier in the process the version is fixed *before* version negotiation has completed when processing the ServerHello on the client side. This fix updates the session version after version neg has completed. Reviewed-by: Emilia Käsper <emilia@openssl.org> (cherry picked from commit dc0c888811cebfa2d21c844be0d81335fb2361da)
2015-07-27Fix SSL_set_session_ticket_ext when used with SSLv23_methodMatt Caswell
The function SSL_set_session_ticket_ext can be used to set custom session ticket data passed in the initial ClientHello. This can be particularly useful for EAP-FAST. However, when using SSLv23_method, the session does not get created until the ServerHello has been received. The extension code will only add the SessionTicket data to the ClientHello if a session already exists. Therefore SSL_set_session_ticket_ext has no impact when used in conjunction with SSLv23_method. The solution is to simply create the session during creation of the ClientHello instead of waiting for the ServerHello. This commit fixes the test failure introduced by the previous commit. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2015-01-22Run util/openssl-format-source -v -c .Matt Caswell
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-10-15Fix no-ssl3 configuration optionGeoff Thorpe
CVE-2014-3568 Reviewed-by: Emilia Kasper <emilia@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-10-15Support TLS_FALLBACK_SCSV.Bodo Moeller
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-01-08Fix warningDr. Stephen Henson
PR#3220
2013-10-19Cleanup.Ben Laurie
2013-10-09Control sending time with SSL_SEND_{CLIENT,SERVER}RANDOM_MODENick Mathewson
(I'd rather use an option, but it appears that the options field is full.) Now, we send the time in the gmt_unix_time field if the appropriate one of these mode options is set, but randomize the field if the flag is not set.
2013-10-09Refactor {client,server}_random to call an intermediate functionNick Mathewson
I'll be using this to make an option for randomizing the time.
2013-09-16Do not include a timestamp in the ClientHello Random field.Nick Mathewson
Instead, send random bytes. While the gmt_unix_time record was added in an ostensible attempt to mitigate the dangers of a bad RNG, its presence leaks the host's view of the current time in the clear. This minor leak can help fingerprint TLS instances across networks and protocols... and what's worse, it's doubtful thet the gmt_unix_time record does any good at all for its intended purpose, since: * It's quite possible to open two TLS connections in one second. * If the PRNG output is prone to repeat itself, ephemeral * handshakes (and who knows what else besides) are broken.
2012-04-25s23_clnt.c: ensure interoperability by maitaining client "version capability"Andy Polyakov
vector contiguous [from HEAD]. PR: 2802
2012-04-17Additional workaround for PR#2771Dr. Stephen Henson
If OPENSSL_MAX_TLS1_2_CIPHER_LENGTH is set then limit the size of client ciphersuites to this value. A value of 50 should be sufficient. Document workarounds in CHANGES.
2012-04-17Partial workaround for PR#2771.Dr. Stephen Henson
Some servers hang when presented with a client hello record length exceeding 255 bytes but will work with longer client hellos if the TLS record version in client hello does not exceed TLS v1.0. Unfortunately this doesn't fix all cases...
2012-03-29Experimental workaround to large client hello issue (see PR#2771).Dr. Stephen Henson
If OPENSSL_NO_TLS1_2_CLIENT is set then TLS v1.2 is disabled for clients only.
2011-05-19add FIPS support to ssl: doesn't do anything on this branch yet as there is ↵Dr. Stephen Henson
no FIPS compilation support
2011-05-11Backport TLS v1.2 support from HEAD.Dr. Stephen Henson
This includes TLS v1.2 server and client support but at present client certificate support is not implemented.
2011-03-12Remove redundant check to stop compiler warning.Dr. Stephen Henson
2011-03-12Fix warning.Ben Laurie
2010-06-27Backport TLS v1.1 support from HEAD, ssl/ changesDr. Stephen Henson
2010-02-16PR: 2171Dr. Stephen Henson
Submitted by: Tomas Mraz <tmraz@redhat.com> Since SSLv2 doesn't support renegotiation at all don't reject it if legacy renegotiation isn't enabled. Also can now use SSL2 compatible client hello because RFC5746 supports it.
2009-11-18Don't use SSLv2 compatible client hello if we don't tolerate legacy ↵Dr. Stephen Henson
renegotiation
2009-08-05PR: 2000Dr. Stephen Henson
Submitted by: Vadim Zeitlin <vz-openssl@zeitlins.org> Approved by: steve@openssl.org Make no-comp compile without warnings.
2009-04-07Disable SSLv2 cipher suites by default and avoid SSLv2 compatible clientDr. Stephen Henson
hello if no SSLv2 cipher suites are included. This effectively disables the broken SSLv2 use by default.
2008-12-30Document dead code.Ben Laurie
2008-09-03Make no-tlsext compile.Dr. Stephen Henson
2008-06-03Memory saving patch.Ben Laurie
2007-09-26Support for certificate status TLS extension.Dr. Stephen Henson
2007-09-21Implement the Opaque PRF Input TLS extensionBodo Möller
(draft-rescorla-tls-opaque-prf-input-00.txt), and do some cleanups and bugfixes on the way. In particular, this fixes the buffer bounds checks in ssl_add_clienthello_tlsext() and in ssl_add_serverhello_tlsext(). Note that the opaque PRF Input TLS extension is not compiled by default; see CHANGES.
2006-11-29fix support for receiving fragmented handshake messagesBodo Möller
2006-01-11improvements for alert handlingBodo Möller
2006-01-11More TLS extension related changes.Bodo Möller
Submitted by: Peter Sylvester
2006-01-08Some error code cleanups (SSL lib. used SSL_R_... codes reserved for alerts)Bodo Möller
2006-01-03Various changes in the new TLS extension code, including the following:Bodo Möller
- fix indentation - rename some functions and macros - fix up confusion between SSL_ERROR_... and SSL_AD_... values
2006-01-02Support TLS extensions (specifically, HostName)Bodo Möller
Submitted by: Peter Sylvester
2005-12-05Avoid warnings on VC++ 2005.Dr. Stephen Henson
2005-10-08New option SSL_OP_NO_COMP to disable compression. New ctrls to setDr. Stephen Henson
maximum send fragment size. Allocate I/O buffers accordingly.
2005-08-14Let the TLSv1_method() etc. functions return a const SSL_METHODNils Larsch
pointer and make the SSL_METHOD parameter in SSL_CTX_new, SSL_CTX_set_ssl_version and SSL_set_ssl_method const.
2005-08-05Initialize SSL_METHOD structures at compile time. This removes the needDr. Stephen Henson
for locking code. The CRYPTO_LOCK_SSL_METHOD lock is now no longer used.
2005-05-12fix msg_callback() arguments for SSL 2.0 compatible client helloBodo Möller
(previous revision got this wrong)
2005-05-11Don't use the SSL 2.0 Client Hello format if SSL 2.0 is disabledBodo Möller
with the SSL_OP_NO_SSLv2 option.
2005-04-29check return value of RAND_pseudo_bytes; backport from the stable branchNils Larsch
2002-12-21Stop a possible memory leak.Richard Levitte
(I wonder why s2_connect() handles the initial buffer allocation slightly differently...) PR: 416
2002-11-13Security fixes brought forward from 0.9.7.Ben Laurie
2002-09-25really fix race conditionsBodo Möller
Submitted by: "Patrick McCormick" <patrick@tellme.com> PR: 262 PR: 291
2002-09-23really fix race conditionBodo Möller
PR: 262
2002-07-10Reorder inclusion of header files:Lutz Jänicke
des_old.h redefines crypt: #define crypt(b,s)\ DES_crypt((b),(s)) This scheme leads to failure, if header files with the OS's true definition of crypt() are processed _after_ des_old.h was processed. This is e.g. the case on HP-UX with unistd.h. As evp.h now again includes des.h (which includes des_old.h), this problem only came up after this modification. Solution: move header files (indirectly) including e_os.h before the header files (indirectly) including evp.h. Submitted by: Reviewed by: PR:
2002-01-12Prototype info function.Ben Laurie
2001-11-10Implement msg_callback for SSL 2.0.Bodo Möller
Important SSL 2.0 bugfixes (bugs found while implementing msg_callback).
2001-10-24Fix SSL handshake functions and SSL_clear() such that SSL_clear()Bodo Möller
never resets s->method to s->ctx->method when called from within one of the SSL handshake functions.