summaryrefslogtreecommitdiff
path: root/src/lib/libssl/t1_enc.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Use !is_read to imply SSL3_CC_WRITE.jsing2014-06-071-3/+2
| | | | | | | While this is not strictly correct (since the presence of SSL3_CC_READ does not guarantee the absence of SSL3_CC_WRITE), in practice only one of these flags is set at a time and there is existing logic which already relies on this behaviour.
* Move the export label initialisation into the export handling code, sincejsing2014-06-071-6/+11
| | | | this is the only place where these variables are used.
* Remove pointless casts - no binary change.jsing2014-06-071-2/+2
|
* Rename variables to make it clear that these are only used in the exportjsing2014-06-071-15/+18
| | | | | | code. Additionally, these need to be cleaned in the export case. Based on Adam Langley's chromium patches.
* Further clean up of context handling in tls1_change_cipher_state().jsing2014-06-071-21/+17
| | | | | | | | | | | Rather than doing a complex dance to figure out if we should reuse the cipher context and clean it later on, just free it and allocate a new one. This simplifies the code path, especially in the write case where special handling is required for DTLS. Also, calling EVP_CIPHER_CTX_init() for a newly created cipher context is unnecessary, since EVP_CIPHER_CTX_new() already does this (not to mention that it was already missing from the write case).
* Rename more variables for readability and consistency.jsing2014-06-021-25/+25
|
* Overhaul the key block handling in tls1_change_cipher_state() - usejsing2014-06-011-46/+66
| | | | | | | | | meaningful variable names with pointer arithmitic, rather than n, i, j and p with array indexing. Based on Adam Langley's chromium diffs. ok miod@
* In tls1_setup_key_block(), use the correct IV length for GCM mode, whichjsing2014-06-011-17/+24
| | | | | | | | | | results in the key block length calculation also being correct. Rename a number of variables so that their purpose becomes clear and simplify some of the code. Inspired by Adam Langley's chromium diffs. ok miod@
* Clean up the tls1_change_cipher_state() key length handling and use ajsing2014-06-011-10/+12
| | | | | | | | | single variable with a descriptive name, instead of two poorly named variables. Largely based on Adam Langley's chromium patches. ok miod@
* remove some #if 0 code. we don't need any more reminders that we're usingtedu2014-05-301-4/+0
| | | | a not quite appropriate data structure. ok jsing
* Make use of SSL_IS_DTLS, SSL_USE_EXPLICIT_IV, SSL_USE_SIGALGS andjsing2014-05-301-8/+5
| | | | | | SSL_USE_TLS1_2_CIPHERS. Largely based on OpenSSL head.
* Fix another two cases where the return value of ssl_replace_hash() isjsing2014-05-291-8/+18
| | | | | | | | | | | | | | | unchecked. In the case of tls1_change_cipher_state(), it is fairly pointless to use ssl_replace_hash(), since it does not initialise the hash and there is special handling required in the DTLS write case. Instead, just inline the part of ssl_replace_hash() that is needed and only ssl_clear_hash_ctx() the write hash in the non-DTLS case. Also add a detailed comment explaining why there needs to be specialised handling for DTLS write context and where the contexts are actually freed. ok miod@
* More KNF.jsing2014-05-281-11/+12
|
* Refactor tls1_change_cipher_state() and split the compression handling outjsing2014-05-281-32/+44
| | | | | | | | from the cipher and message digest handling, allowing for upcoming changes. Based on Adam Langley's chromium diffs. ok miod@
* There is no point in checking if a pointer is non-NULL before calling free,jsing2014-05-281-4/+2
| | | | | | | | since free already does this for us. Also remove some pointless NULL assignments, where the result from malloc(3) is immediately assigned to the same variable. ok miod@
* Remove TLS_DEBUG, SSL_DEBUG, CIPHER_DEBUG and OPENSSL_RI_DEBUG. Much ofjsing2014-05-251-46/+0
| | | | | | | this is sporadic, hacked up and can easily be put back in an improved form should we ever need it. ok miod@
* The ssl_ciper_get_evp() function is currently overloaded to also return thejsing2014-05-251-3/+10
| | | | | | | | | | | compression associated with the SSL session. Based on one of Adam Langley's chromium diffs, factor out the compression handling code into a separate ssl_cipher_get_comp() function. Rewrite the compression handling code to avoid pointless duplication and so that failures are actually returned to and detectable by the caller. ok miod@
* Invoke OPENSSL_cleanse() with the size of the variable you are cleaning.miod2014-05-241-1/+1
| | | | ok jsing@
* KSSL is dead... nuke KSSL_DEBUG from orbit.jsing2014-05-201-83/+0
| | | | ok beck@ miod@
* use the correct algorithm mask. reported by satish lvr viatedu2014-04-281-1/+1
| | | | | http://marc.info/?l=openssl-dev&m=139779977532459&w=2 ok miod
* more malloc/realloc/calloc cleanups; ok beck kettenisderaadt2014-04-211-2/+2
|
* Chop off more SSLv2 tentacles and start fixing and noting y2038 issues.guenther2014-04-201-1/+0
| | | | | | | APIs that pass times as longs will have to change at some point... Bump major on both libcrypto and libssl. ok tedu@
* More KNF.jsing2014-04-191-31/+36
|
* now that knf carpet bombing is finished, switch to hand to hand combat.tedu2014-04-181-82/+75
| | | | | still not sure what to make of mysteries like this: for (i = 7; i >= 0; i--) { /* increment */
* Change library to use intrinsic memory allocation functions instead ofbeck2014-04-171-9/+9
| | | | | | | | OPENSSL_foo wrappers. This changes: OPENSSL_malloc->malloc OPENSSL_free->free OPENSSL_relloc->realloc OPENSSL_freeFunc->free
* remove FIPS mode support. people who require FIPS can buy something thattedu2014-04-151-7/+0
| | | | | meets their needs, but dumping it in here only penalizes the rest of us. ok miod
* First pass at applying KNF to the OpenSSL code, which almost makes itjsing2014-04-141-604/+582
| | | | | readable. This pass is whitespace only and can readily be verified using tr and md5.
* Merge conflicts; remove MacOS, Netware, OS/2, VMS and Windows build machinery.miod2014-04-131-5/+6
|
* SECURITY fixes backported from openssl-1.0.1f. ok mikeb@jca2014-02-271-11/+17
| | | | | | | | | | | | CVE-2013-4353 NULL pointer dereference with crafted Next Protocol Negotiation record in TLS handshake. Upstream: 197e0ea CVE-2013-6449 Fix crash with crafted traffic from a TLS 1.2 client. Upstream: ca98926, 0294b2b CVE-2013-6450 Fix DTLS retransmission from previous session. Upstream: 3462896
* cherry pick bugfixes for http://www.openssl.org/news/secadv_20130205.txtmarkus2013-02-141-83/+74
| | | | | from the openssl git (changes between openssl 1.0.1c and 1.0.1d). ok djm@
* resolve conflictsdjm2012-10-131-49/+260
|
* openssl-1.0.0e: resolve conflictsdjm2011-11-031-10/+4
|
* resolve conflicts, fix local changesdjm2010-10-011-165/+344
|
* resolve conflictsdjm2009-01-091-15/+23
|
* update to openssl-0.9.8i; tested by several, especially krw@djm2009-01-051-0/+4
|
* resolve conflictsdjm2008-09-061-18/+62
|
* resolve conflictsdjm2005-04-291-1/+3
|
* merge 0.9.7b with local changes; crank majors for libssl/libcryptomarkus2003-05-121-10/+10
|
* merge openssl-0.9.7-beta3, tested on vax by miod@markus2002-09-101-8/+19
|
* OpenSSL 0.9.7 stable 2002 05 08 mergebeck2002-05-151-33/+188
|
* merge openssl 0.9.6b-enginebeck2001-08-011-2/+14
| | | | | Note that this is a maintenence release, API's appear *not* to have changed. As such, I have only increased the minor number on these libraries
* openssl-engine-0.9.6a mergebeck2001-06-221-1/+4
|
* openssl-engine-0.9.6 mergebeck2000-12-151-6/+6
|
* OpenSSL 0.9.5 mergebeck2000-03-191-3/+3
| | | | | | *warning* this bumps shared lib minors for libssl and libcrypto from 2.1 to 2.2 if you are using the ssl26 packages for ssh and other things to work you will need to get new ones (see ~beck/libsslsnap/<arch>) on cvs or ~beck/src-patent.tar.gz on cvs
* OpenSSL 0.9.4 mergebeck1999-09-291-95/+93
|
* Import of SSLeay-0.9.0b with RSA and IDEA stubbed + OpenBSD buildryker1998-10-051-0/+635
functionality for shared libs. Note that routines such as sslv2_init and friends that use RSA will not work due to lack of RSA in this library. Needs documentation and help from ports for easy upgrade to full functionality where legally possible.