summaryrefslogtreecommitdiff
path: root/ssl/s2_lib.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix reachable assert in SSLv2 servers.Emilia Kasper2015-03-191-1/+1
| | | | | | | | | | | | | | | | | This assert is reachable for servers that support SSLv2 and export ciphers. Therefore, such servers can be DoSed by sending a specially crafted SSLv2 CLIENT-MASTER-KEY. Also fix s2_srvr.c to error out early if the key lengths are malformed. These lengths are sent unencrypted, so this does not introduce an oracle. CVE-2015-0293 This issue was discovered by Sean Burford (Google) and Emilia Käsper of the OpenSSL development team. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tim Hudson <tjh@openssl.org>
* Run util/openssl-format-source -v -c .Matt Caswell2015-01-221-389/+395
| | | | Reviewed-by: Tim Hudson <tjh@openssl.org>
* Tweaks for comments due to indent's inability to handle themMatt Caswell2015-01-221-1/+4
| | | | Reviewed-by: Tim Hudson <tjh@openssl.org>
* Support TLS_FALLBACK_SCSV.Bodo Moeller2014-10-151-1/+3
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Update strength_bits for 3DES.Dr. Stephen Henson2014-06-091-1/+1
| | | | Fix strength_bits to 112 for 3DES.
* Make no-ssl2 work including on Win32 builds.Dr. Stephen Henson2009-04-041-3/+0
|
* If we're going to return errors (no matter how stupid), then we shouldBen Laurie2008-12-291-4/+7
| | | | test for them!
* Create function of the form OBJ_bsearch_xxx() in bsearch typesafe macrosDr. Stephen Henson2008-10-221-3/+2
| | | | | | | | with the appropriate parameters which calls OBJ_bsearch(). A compiler will typically inline this. This avoids the need for cmp_xxx variables and fixes unchecked const issues with CHECKED_PTR_OF()
* Fix a shed load or warnings:Dr. Stephen Henson2008-10-201-1/+1
| | | | | Duplicate const. Use of ; outside function.
* Type-checked (and modern C compliant) OBJ_bsearch.Ben Laurie2008-10-121-8/+10
|
* fix warnings/inconsistencies caused by the recent changes to theBodo Möller2007-02-191-0/+4
| | | | | | ciphersuite selection code in HEAD Submitted by: Victor Duchovni
* Reorganize the data used for SSL ciphersuite pattern matching.Bodo Möller2007-02-171-33/+111
| | | | | | | | | | This change resolves a number of problems and obviates multiple kludges. A new feature is that you can now say "AES256" or "AES128" (not just "AES", which enables both). In some cases the ciphersuite list generated from a given string is affected by this change. I hope this is just in those cases where the previous behaviour did not make sense.
* Constify version strings is ssl lib.Dr. Stephen Henson2007-01-211-1/+1
|
* disable some invalid ciphersuitesBodo Möller2005-11-151-1/+1
|
* Fix warnings.Ben Laurie2005-08-271-1/+0
|
* Keep cipher lists sorted in the source instead of sorting them atNils Larsch2005-08-251-46/+26
| | | | | runtime, thus removing the need for a lock. Add a test to ssltest to verify that the cipher lists are sorted.
* remove unused internal foo_base_method functionsNils Larsch2005-08-081-5/+0
|
* Initialize SSL_METHOD structures at compile time. This removes the needDr. Stephen Henson2005-08-051-38/+5
| | | | for locking code. The CRYPTO_LOCK_SSL_METHOD lock is now no longer used.
* Add DTLS support.Ben Laurie2005-04-261-0/+4
|
* Give everything prototypes (well, everything that's actually used).Ben Laurie2005-03-311-3/+3
|
* Constification.Ben Laurie2005-03-301-1/+1
|
* (oops) Apologies all, that last header-cleanup commit was from the wrongGeoff Thorpe2004-04-191-1/+0
| | | | | tree. This further reduces header interdependencies, and makes some associated cleanups.
* Avoid including cryptlib.h, it's not really needed.Richard Levitte2003-12-271-1/+2
| | | | | Check if IDEA is being built or not. This is part of a large change submitted by Markus Friedl <markus@openbsd.org>
* A general spring-cleaning (in autumn) to fix up signed/unsigned warnings.Geoff Thorpe2003-10-291-5/+7
| | | | | | | | | | I have tried to convert 'len' type variable declarations to unsigned as a means to address these warnings when appropriate, but when in doubt I have used casts in the comparisons instead. The better solution (that would get us all lynched by API users) would be to go through and convert all the function prototypes and structure definitions to use unsigned variables except when signed is necessary. The proliferation of (signed) "int" for strictly non-negative uses is unfortunate.
* Cleanse memory using the new OPENSSL_cleanse() function.Richard Levitte2002-11-281-1/+1
| | | | I've covered all the memset()s I felt safe modifying, but may have missed some.
* Security fixes brought forward from 0.9.7.Ben Laurie2002-11-131-3/+4
|
* really fix race conditionsBodo Möller2002-09-251-6/+10
| | | | | | | Submitted by: "Patrick McCormick" <patrick@tellme.com> PR: 262 PR: 291
* oops -- must use EVP_MD_size, not EVP_MD_block_sizeBodo Möller2002-08-031-3/+3
|
* get rid of OpenSSLDieBodo Möller2002-08-021-10/+29
|
* OpenSSL Security Advisory [30 July 2002]Lutz Jänicke2002-07-301-0/+6
| | | | | | | Changes marked "(CHATS)" were sponsored by the Defense Advanced Research Projects Agency (DARPA) and Air Force Research Laboratory, Air Force Materiel Command, USAF, under agreement number F30602-01-2-0537.
* Ciphers with NULL encryption were not properly handled because they wereLutz Jänicke2002-07-101-1/+3
| | | | | | | not covered by the strength bit mask. Submitted by: Reviewed by: PR: 130
* Implement msg_callback for SSL 2.0.Bodo Möller2001-11-101-3/+7
| | | | Important SSL 2.0 bugfixes (bugs found while implementing msg_callback).
* New functions SSL[_CTX]_set_msg_callback().Bodo Möller2001-10-201-2/+2
| | | | | | | | | | | | | | | | | | | | | New macros SSL[_CTX]_set_msg_callback_arg(). Message callback imlementation for SSL 3.0/TLS 1.0 (no SSL 2.0 yet). New '-msg' option for 'openssl s_client' and 'openssl s_server' that enable a message callback that displays all protocol messages. In ssl3_get_client_hello (ssl/s3_srvr.c), generate a fatal alert if client_version is smaller than the protocol version in use. Also change ssl23_get_client_hello (ssl/s23_srvr.c) to select TLS 1.0 if the client demanded SSL 3.0 but only TLS 1.0 is enabled; then the client will at least see that alert. Fix SSL[_CTX]_ctrl prototype (void * instead of char * for generic pointer). Add/update some OpenSSL copyright notices.
* Retain compatibility of EVP_DigestInit() and EVP_DigestFinal()Dr. Stephen Henson2001-10-161-2/+2
| | | | | | with existing code. Modify library to use digest *_ex() functions.
* Really add the EVP and all of the DES changes.Ben Laurie2001-07-301-1/+3
|
* Change all calls to low level digest routines in the library andDr. Stephen Henson2001-06-191-8/+8
| | | | | | | | | | applications to use EVP. Add missing calls to HMAC_cleanup() and don't assume HMAC_CTX can be copied using memcpy(). Note: this is almost identical to the patch submitted to openssl-dev by Verdon Walker <VWalker@novell.com> except some redundant EVP_add_digest_()/EVP_cleanup() calls were removed and some changes made to avoid compiler warnings.
* Use new-style system-id macros everywhere possible. I hope I haven'tRichard Levitte2001-02-201-2/+2
| | | | | | | missed any. This compiles and runs on Linux, and external applications have no problems with it. The definite test will be to build this on VMS.
* Finish SSL_peek/SSL_pending fixes.Bodo Möller2000-12-261-1/+1
|
* Fix SSL_peek and SSL_pending.Bodo Möller2000-12-251-3/+0
|
* Import s2_pkt.c wbuf fixes from OpenSSL_0_9_6-stable branch.Bodo Möller2000-12-181-1/+7
|
* Comments on SSL_peek deficienciesBodo Möller2000-11-281-0/+3
|
* Fixes for Win32 build.Dr. Stephen Henson2000-06-211-1/+1
| | | | | | | | | | | | | | | | | This is mostly a work around for the old VC++ problem that it treats func() as func(void). Various prototypes had been added to 'compare' function pointers that triggered this. This could be fixed by removing the prototype, adding function pointer casts to every call or changing the passed function to use the expected arguments. I mostly did the latter. The mkdef.pl script was modified to remove the typesafe functions which no longer exist. Oh and some functions called OPENSSL_freeLibrary() were changed back to FreeLibrary(), wonder how that happened :-)
* There have been a number of complaints from a number of sources that namesRichard Levitte2000-06-011-9/+9
| | | | | | | | | like Malloc, Realloc and especially Free conflict with already existing names on some operating systems or other packages. That is reason enough to change the names of the OpenSSL memory allocation macros to something that has a better chance of being unique, like prepending them with OPENSSL_. This change includes all the name changes needed throughout all C files.
* Move the registration of callback functions to special functionsRichard Levitte2000-02-201-0/+13
| | | | | | | | | | designed for that. This removes the potential error to mix data and function pointers. Please note that I'm a little unsure how incorrect calls to the old ctrl functions should be handled, in som cases. I currently return 0 and that's it, but it may be more correct to generate a genuine error in those cases.
* Tolerate fragmentation and interleaving in the SSL 3/TLS record layer.Bodo Möller2000-02-201-9/+9
|
* Get rid of evil cast.Ben Laurie2000-02-171-1/+1
|
* Apply Lutz Behnke's 56 bit cipher patch with a fewDr. Stephen Henson2000-01-221-9/+48
| | | | | | | minor changes. Docs haven't been added at this stage. They are probably best included in the 'ciphers' program docs.
* Add missing #ifndefs that caused missing symbols when building libsslUlf Möller2000-01-161-3/+3
| | | | | | | | as a shared library without RSA. Use #ifndef NO_SSL2 instead of NO_RSA in ssl/s2*.c. Submitted by: Kris Kennaway <kris@hub.freebsd.org> Modified by Ulf Möller
* Make NO_RSA compile with pedantic.Ben Laurie2000-01-081-0/+6
|
* Support the EBCDIC character set and BS2000/OSD-POSIX (work in progress).Ulf Möller1999-06-041-0/+5
| | | | Submitted by: Martin Kraemer <Martin.Kraemer@MchP.Siemens.De>