https://github.com/openssl/openssl

sort by:
Revision Author Date Message Commit Date
a61eba4 Prepare for 1.1.1e release Reviewed-by: Paul Yang <kaishen.yy@antfin.com> 17 March 2020, 14:31:17 UTC
e7ff223 Update copyright year Reviewed-by: Paul Yang <kaishen.yy@antfin.com> (Merged from https://github.com/openssl/openssl/pull/11344) 17 March 2020, 13:59:29 UTC
48a09eb Update CHANGES for the new release Reviewed-by: Mark J. Cox <mark@awe.com> (Merged from https://github.com/openssl/openssl/pull/11342) 17 March 2020, 13:43:08 UTC
5a77b55 Update NEWS for the new release Reviewed-by: Mark J. Cox <mark@awe.com> (Merged from https://github.com/openssl/openssl/pull/11342) 17 March 2020, 13:43:08 UTC
1959913 sslapitest: don't leak the SSL_CTX pair We have no need for a new set of SSL_CTXs in test_ccs_change_cipher(), so just keep using the original ones. Also, fix a typo in a comment. [extended tests] Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11336) (cherry picked from commit b3e6d666e351d45e93d29fe3813245b92a0f5815) 17 March 2020, 10:00:35 UTC
2f0dab7 Add test that changes ciphers on CCS The TLS (pre-1.3) ChangeCipherState message is usually used to indicate the switch from the unencrypted to encrypted part of the handshake. However, it can also be used in cases where there is an existing session (such as during resumption handshakes) or when changing from one cipher to a different one (such as during renegotiation when the cipher list offered by the client has changed). This test serves to exercise such situations, allowing us to detect whether session objects are being modified in cases when they must remain immutable for thread-safety purposes. Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10943) (cherry picked from commit 3cd14e5e65011660ad8e3603cf871c8366b565fd) 13 March 2020, 23:12:18 UTC
44bad9c Code to thread-safety in ChangeCipherState The server-side ChangeCipherState processing stores the new cipher in the SSL_SESSION object, so that the new state can be used if this session gets resumed. However, writing to the session is only thread-safe for initial handshakes, as at other times the session object may be in a shared cache and in use by another thread at the same time. Reflect this invariant in the code by only writing to s->session->cipher when it is currently NULL (we do not cache sessions with no cipher). The code prior to this change would never actually change the (non-NULL) cipher value in a session object, since our server enforces that (pre-TLS-1.3) resumptions use the exact same cipher as the initial connection, and non-abbreviated renegotiations have produced a new session object before we get to this point. Regardless, include logic to detect such a condition and abort the handshake if it occurs, to avoid any risk of inadvertently using the wrong cipher on a connection. Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10943) (cherry picked from commit 2e3ec2e1578977fca830a47fd7f521e290540e6d) 13 March 2020, 23:11:45 UTC
910c8ff Don't write to the session when computing TLS 1.3 keys TLS 1.3 maintains a separate keys chedule in the SSL object, but was writing to the 'master_key_length' field in the SSL_SESSION when generating the per-SSL master_secret. (The generate_master_secret SSL3_ENC_METHOD function needs an output variable for the master secret length, but the TLS 1.3 implementation just uses the output size of the handshake hash function to get the lengths, so the only natural-looking thing to use as the output length was the field in the session. This would potentially involve writing to a SSL_SESSION object that was in the cache (i.e., resumed) and shared with other threads, though. The thread-safety impact should be minimal, since TLS 1.3 requires the hash from the original handshake to be associated with the resumption PSK and used for the subsequent connection. This means that (in the resumption case) the value being written would be the same value that was previously there, so the only risk would be on architectures that can produce torn writes/reads for aligned size_t values. Since the value is essentially ignored anyway, just provide the address of a local dummy variable to generate_master_secret() instead. Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10943) (cherry picked from commit d74014c4b8740f28a54b562f799ad1e754b517b9) 13 March 2020, 22:55:51 UTC
a666af9 Fix whitespace nit in ssl_generate_master_secret() Use a space after a comma. Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10943) (cherry picked from commit 1866a0d380fc361d9be2ca0509de0f2281505db5) 13 March 2020, 22:55:50 UTC
cf900cb doc: fix spelling of TYPE_get_ex_new_index The generated macros are TYPE_get_ex_new_index() (to match CRYPTO_get_ex_new_index()), not TYPE_get_new_ex_index(), even though the latter spelling seems more natural. Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10943) (cherry picked from commit fe41c06e69613b1a4814b3e3cdbf460f2678ec99) 13 March 2020, 22:55:50 UTC
d3133cc Additional updates to SSL_CTX_sess_set_get_cb.pod Generally modernize the language. Refer to TLS instead of SSL/TLS, and try to have more consistent usage of commas and that/which. Reword some descriptions to avoid implying that a list of potential reasons for behavior is an exhaustive list. Clarify how get_session_cb() is only called on servers (i.e., in general, and that it's given the session ID proposed by the client). Clarify the semantics of the get_cb()'s "copy" argument. The behavior seems to have changed in commit 8876bc054802b043a3ec95554b6c5873291770be, though the behavior prior to that commit was not to leave the reference-count unchanged if *copy was not written to -- instead, libssl seemed to assume that the callback already had incremented the reference count. Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10943) (cherry picked from commit 06f876837a8ec76b28c42953731a156c0c3700e2) 13 March 2020, 22:55:49 UTC
9011225 doc: Update the reference from draft to RFC CLA: trivial Signed-off-by: Jakub Jelen <jjelen@redhat.com> Reviewed-by: Kurt Roeckx <kurt@roeckx.be> Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/11299) (cherry picked from commit c08dea30d4d127412097b39d9974ba6090041a7c) 13 March 2020, 08:57:53 UTC
b69c7d3 doc: document that 'openssl rand' is cryptographically secure (cherry picked from commit 88398d2a358f) Additionally, remove an outdated paragraph mentioning the .rnd file, which is obsolete in 1.1.1 since the RANDFILE entry was removed from openssl.cnf in commit 1fd6afb571e8. Also borrow some text from 'openssl(1)/Random State Options' on master (commit a397aca43598) to emphasize that it is not necessary anymore to restore and save the RNG state using the '-rand' and '-writerand' options. Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/11251) 12 March 2020, 03:08:15 UTC
2cb5e08 Revert "Create a new embeddedSCTs1 that's signed using SHA256" This reverts commit b98efebeb2d4265bd6638d5947fe365500121e03. Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11282) 11 March 2020, 14:56:05 UTC
63fa6f2 Revert "Stop accepting certificates signed using SHA1 at security level 1" This reverts commit 68436f0a8964e911eb4f864bc8b31d7ca4d29585. The OMC did not vote in favour of backporting this to 1.1.1, so this change should be reverted. Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11282) 11 March 2020, 14:56:05 UTC
004f570 docs: fix typo in SSL functions CLA: trivial Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> Reviewed-by: Paul Yang <kaishen.yy@antfin.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/11253) (cherry picked from commit 9f44e96e245993c8e7aaa9fadf1d6713c9c60915) 09 March 2020, 09:47:58 UTC
5341893 DOC: Make EVP_SignInit.pod conform with man-pages(7) Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> (cherry picked from commit 03d65ca2095777cf6314ad813eb7de5779c9b93d) Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/11232) 08 March 2020, 21:41:25 UTC
eed9d03 DOC: New file for EVP_PKEY_size(), EVP_PKEY_bits() and EVP_PKEY_security_bits() We change the description to be about the key rather than the signature. How the key size is related to the signature is explained in the description of EVP_SignFinal() anyway. Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> (cherry picked from commit 6942a0d6feb8d3dcbbc6a1ec6be9de7ab2df1530) Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/11232) 08 March 2020, 21:41:25 UTC
9aba5c5 apps x509: passing PKCS#11 URL as -signkey OpenSSL 1.1.0 has extended option checking, and rejects passing a PKCS#11 engine URL to "-signkey" option. The actual code is ready to take it. Change the option parsing to allow an engine URL to be passed and modify the manpage accordingly. CLA: trivial (cherry picked from commit 16d560439d8b1be5082228a87576a8f79b3525ac) Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/11173) 08 March 2020, 15:49:48 UTC
4eca3ec Clarify the usage of EVP_PKEY_get_raw_[private|public]_key() EVP_PKEY_get_raw_private_key() and EVP_PKEY_get_raw_public_key() expect the size of the key buffer to be populated in the |*len| parameter on entry - but the docs made no mention of this. Fixes #11245 Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/11254) (cherry picked from commit f529fc7d53bf4228fae61cb1efe73d97fe3eb35f) 06 March 2020, 20:25:34 UTC
c11f490 DOC: Fixups of X509_LOOKUP.pod Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11120) 06 March 2020, 08:23:00 UTC
8a7b7c9 DOC: Add documentation related to X509_LOOKUPs Most of all, the base X509_LOOKUP functionality is now documented. Furthermore, the names X509_LOOKUP_METHOD and X509_STORE are added for reference. Some functions were moved from X509_LOOKUP_meth_new.pod Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11120) 06 March 2020, 08:23:00 UTC
ded6741 crypto/ec/curve448/eddsa.c: fix EBCDIC platforms Signed-off-by: Patrick Steuer <patrick.steuer@de.ibm.com> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11229) (cherry picked from commit af7f656cd91d99d62567e2b20c61f07cb4d81d0b) 05 March 2020, 16:33:35 UTC
1d53593 aes-s390x.pl: fix stg offset caused by typo in perlasm Signed-off-by: Patrick Steuer <patrick.steuer@de.ibm.com> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11234) (cherry picked from commit 7b2ce4a6e817e4385ff77fea0c6e349294c7b756) 05 March 2020, 16:24:43 UTC
bf42b99 This works around a gcc-9 crash It happens when configured with ./config -ftest-coverage see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94029 Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11246) 05 March 2020, 15:04:36 UTC
93c50f4 Fix comment placement in ecp_nistp256.ci CLA: trivial Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/11175) (cherry picked from commit c590be6f12d0b725863961e41bc64a81c8cf30d6) 27 February 2020, 23:41:26 UTC
3bd75cf apps x509: restrict CAkeyform option to OPT_FMT_PDE CAkeyform may be set to PEM, DER or ENGINE, but the current options are not using the proper optionformat 'E' (OPT_FMT_PDE) for this. Set the valtype for CAkeyform to 'E' and use OPT_FMT_PDE when extracting the option value. This amends bf4006a6f9 ("Fix regression on x509 keyform argument") which did the same thing for keyform and changed the manpage synopsis entries for both keyform and CAkeyform but did not change the option section. Hence, change the option section. CLA: trivial Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/11172) 27 February 2020, 11:18:03 UTC
605a0c7 VMS: mitigate for the C++ compiler that doesn't understand certain pragmas This only affects __DECC_INCLUDE_EPILOGUE.H and __DECC_INCLUDE_PROLOGUE.H, which are used automatically by HP and VSI C/C++ compilers. Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/11159) 27 February 2020, 00:21:50 UTC
8d87aec config: Drop linux-alpha-gcc+bwx Its entry in Configuration/10-main.conf was dropped in commit 7ead0c89185c ("Configure: fold related configurations more aggressively and clean-up.") probably because all but one of its bn_ops were removed (RC4_CHAR remained). Benchmarks on an Alpha EV7 indicate that RC4_INT is better than RC4_CHAR so rather than restoring the configuation, remove it from config. CLA: trivial Bug: https://bugs.gentoo.org/697840 (cherry picked from commit 19ded1a717b6c72c3db241f06787a353f1190755) Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11130) 26 February 2020, 15:03:13 UTC
22623e0 Teach more BIOs how to handle BIO_CTRL_EOF Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> (Merged from https://github.com/openssl/openssl/pull/10882) 20 February 2020, 17:02:31 UTC
db943f4 Detect EOF while reading in libssl If we hit an EOF while reading in libssl then we will report an error back to the application (SSL_ERROR_SYSCALL) but errno will be 0. We add an error to the stack (which means we instead return SSL_ERROR_SSL) and therefore give a hint as to what went wrong. Contains a partial fix for #10880 Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> (Merged from https://github.com/openssl/openssl/pull/10882) 20 February 2020, 17:02:30 UTC
b22a499 Add *.d.tmp files to .gitignore These are temporary files generated by the build process that should not be checked in. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11122) (cherry picked from commit 7b5108dff4cfde059ca278147a188fb6254603d1) 20 February 2020, 16:58:54 UTC
dfbaef6 Handle max_fragment_length overflow for DTLS Allow for encryption overhead in early DTLS size check and send overflow if validated record is too long Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/11096) (cherry picked from commit cc0663f697b05ed121a728241f0502250429802d) 19 February 2020, 08:22:09 UTC
218e740 Do not silently truncate files on perlasm errors If one of the perlasm xlate drivers crashes, OpenSSL's build will currently swallow the error and silently truncate the output to however far the driver got. This will hopefully fail to build, but better to check such things. Handle this by checking for errors when closing STDOUT (which is a pipe to the xlate driver). This is the OpenSSL 1.1.1 version of https://github.com/openssl/openssl/pull/10883 and https://github.com/openssl/openssl/pull/10930. Reviewed-by: Mark J. Cox <mark@awe.com> Reviewed-by: Paul Dale David Benjamin <davidben@google.com> (Merged from https://github.com/openssl/openssl/pull/10931) 17 February 2020, 02:21:27 UTC
57225c9 Check that ed25519 and ed448 are allowed by the security level Signature algorithms not using an MD weren't checked that they're allowed by the security level. Reviewed-by: Tomáš Mráz <tmraz@fedoraproject.org> GH: #11062 16 February 2020, 10:55:42 UTC
42fc479 Generate new Ed488 certificates Create a whole chain of Ed488 certificates so that we can use it at security level 4 (192 bit). We had an 2048 bit RSA (112 bit, level 2) root sign the Ed488 certificate using SHA256 (128 bit, level 3). Reviewed-by: Matt Caswell <matt@openssl.org> GH: #10785 (cherry picked from commit 77c4d3972400adf1bcb76ceea359f5453cc3e8e4) 16 February 2020, 10:52:05 UTC
525e228 DOC: document in more detail what a BIO_read_ex() via BIO_f_buffer() does The BIO_f_buffer() documentation tells in enough detail how it affects BIO_gets(), but not how it affects BIO_read_ex(). This change remedies that. Fixes #10859 Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10890) (cherry picked from commit 9a4fd80ee0ad1833879b6a55c9c4673eeb8446a3) 15 February 2020, 05:58:24 UTC
cd5acbb VMS: Correct error reporting in crypto/rand/rand_vms.c The future style that's coming with OpenSSL 3.0 was used, we need to revert that back to "traditional" style. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11088) 15 February 2020, 05:48:04 UTC
c781d46 VMS: Adapt descrip.mms template to the changed inclustion dirs Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11088) 15 February 2020, 05:48:03 UTC
52346fb Adjust minimal build config in 1.1.1 branch Backport of improvements from #9982 to 1.1.1 branch. Adds some more exclusions which were previously missed. [extended tests] Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11059) 14 February 2020, 14:12:52 UTC
64dc4ee Forgotten GOST2012 support in non-vital places Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> (Merged from https://github.com/openssl/openssl/pull/11072) 12 February 2020, 12:20:41 UTC
2ba3e65 Fix no-tls1_3 The hostname_cb in sslapitest.c was originally only defined if TLSv1.3 was enabled. A recently added test now uses this unconditionally, so we move the function implementation earlier in the file, and always compile it in. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11014) (cherry picked from commit 104a733df65dfd8c3dd110de9bd56f6ebfc8f2f6) 12 February 2020, 10:51:54 UTC
ff6d0a6 Appveyor: update to Visual Studio 2017. Default image was currently "Visual Studio 2015" Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10327) (cherry picked from commit b03de7a9207645c72e22627b10709f15eed211bf) 07 February 2020, 08:58:01 UTC
6527714 Avoid leak in error path of PKCS5_PBE_keyivgen CLA: trivial Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10816) (cherry picked from commit adc9086beb21a91ca59aaf0c619b38b82c223f9b) 06 February 2020, 16:21:31 UTC
3948408 Coverity CID 1444960: Error handling issues Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/8888) (cherry picked from commit a05bf83c7964bb3928b323fe356b9f70f105036d) 06 February 2020, 16:21:20 UTC
0f68b77 Fix misspelling errors and typos reported by codespell Fixes #10998 Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/11000) 06 February 2020, 15:52:07 UTC
b04c8c0 Prevent compiler warning for unused static function. Prepend missing ossl_unused in front of lh_type_new to make the compiler happy. CLA: trivial Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10946) (cherry picked from commit 7b6a746721170a21519c38798041be8101e7361f) 06 February 2020, 15:43:59 UTC
6b9c86c doc: Fix typo in EVP_DigestSignInit manpage CLA: trivial Signed-off-by: Jakub Jelen <jjelen@redhat.com> Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10841) (cherry picked from commit 099a398268a298557be784528ac1d94f0f44c97c) 06 February 2020, 15:15:33 UTC
2f16079 Fix small misspelling in doc for OCSP_response_status CLA: trivial Reviewed-by: Paul Yang <kaishen.yy@antfin.com> Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10810) (cherry picked from commit 924d041fe0c650a79449217f81880a6384ff06b2) 06 February 2020, 15:12:34 UTC
68436f0 Stop accepting certificates signed using SHA1 at security level 1 Reviewed-by: Viktor Dukhovni <viktor@openssl.org> GH: #10786 (cherry picked from commit b744f915ca8bb37631909728dd2529289bda8438) 05 February 2020, 21:07:38 UTC
b98efeb Create a new embeddedSCTs1 that's signed using SHA256 Reviewed-by: Viktor Dukhovni <viktor@openssl.org> GH: #10786 (cherry picked from commit 4d9e8c95544d7a86765e6a46951dbe17b801875a) 05 February 2020, 21:05:30 UTC
d2e8cbf config: ensure the perl Configure run is the last statement Running any statement after Configure means we lose its exit code Fixes #10951 Reviewed-by: Ben Kaduk <kaduk@mit.edu> (Merged from https://github.com/openssl/openssl/pull/10953) (cherry picked from commit 4bf3e989fef9268507ba02744e7f71ee5637681c) 02 February 2020, 10:57:01 UTC
a9a8863 Don't acknowledge a servername following warning alert in servername cb If the servername cb decides to send back a warning alert then the handshake continues, but we should not signal to the client that the servername has been accepted. Reviewed-by: Ben Kaduk <kaduk@mit.edu> (Merged from https://github.com/openssl/openssl/pull/10018) (cherry picked from commit cd624ccd41ac3ac779c1c7a7a1e63427ce9588dd) 30 January 2020, 16:12:16 UTC
721eb8f Provide better documentation for SSL_get_servername() The behaviour of SSL_get_servername() is quite complicated and depends on numerous factors such as whether it is called on the client or the server, whether it is called before or after the handshake, what protocol version was negotiated, and whether a resumption was attempted or was successful. We attempt to document the behavior more clearly. Reviewed-by: Ben Kaduk <kaduk@mit.edu> (Merged from https://github.com/openssl/openssl/pull/10018) (cherry picked from commit 0dc7c8e8314f27ac093b2d7bc8f13d0dfd302bdb) 30 January 2020, 16:12:16 UTC
f6f81b2 Test that SSL_get_servername returns what we expect Test this on both the client and the server after a normal handshake, and after a resumption handshake. We also test what happens if an inconsistent SNI is set between the original handshake and the resumption handshake. Finally all of this is also tested in TLSv1.2 and TLSv1.3. Reviewed-by: Ben Kaduk <kaduk@mit.edu> (Merged from https://github.com/openssl/openssl/pull/10018) (cherry picked from commit 49ef3d0719f132629ab76d4bcb4ab0c1e016277a) 30 January 2020, 16:12:16 UTC
e9cd6e7 Fix SSL_get_servername() and SNI behaviour The SNI behaviour for TLSv1.3 and the behaviour of SSL_get_servername() was not quite right, and not entirely consistent with the RFC. The TLSv1.3 RFC explicitly says that SNI is negotiated on each handshake and the server is not required to associate it with the session. This was not quite reflected in the code so we fix that. Additionally there were some additional checks around early_data checking that the SNI between the original session and this session were consistent. In fact the RFC does not require any such checks, so they are removed. Finally the behaviour of SSL_get_servername() was not quite right. The behaviour was not consistent between resumption and normal handshakes, and also not quite consistent with historical behaviour. We clarify the behaviour in various scenarios and also attempt to make it match historical behaviour as closely as possible. Fixes #8822 Reviewed-by: Ben Kaduk <kaduk@mit.edu> (Merged from https://github.com/openssl/openssl/pull/10018) (cherry picked from commit 7955c1f16e72dc944677fd1dbf4b1300e75f1c84) 30 January 2020, 16:07:12 UTC
081191e Fix type name typo in d2i/i2d documentation. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/10933) (cherry picked from commit 68229aebce159ecea7b887d6a0edd47d881a659b) 30 January 2020, 06:17:03 UTC
c8943eb OpenSSL::Test: bring back the relative paths Because there was a bug in File::Spec::Unix' abs2rel when it was given relative paths as both PATH and BASE arguments, the directories we deal with were made to be all absolute. Unfortunately, this meant getting paths in our verbose test output which are difficult to use anywhere else (such as a separate test build made for comparison), due to the constant need to edit all the paths all the time. We're therefore getting back the relative paths, by doing an extra abs2rel() in __srctop_file, __srctop_dir, __bldtop_file and __bldtop_dir, with a 'Cwd::getcwd' call as BASE argument. Fixes #10628 Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10913) (cherry picked from commit 612539e8a678c6099131dfd0e5e4b85fa774eb1a) 27 January 2020, 07:51:11 UTC
cc7c6eb Check that the default signature type is allowed TLS < 1.2 has fixed signature algorithms: MD5+SHA1 for RSA and SHA1 for the others. TLS 1.2 sends a list of supported ciphers, but allows not sending it in which case SHA1 is used. TLS 1.3 makes sending the list mandatory. When we didn't receive a list from the client, we always used the defaults without checking that they are allowed by the configuration. Reviewed-by: Paul Dale <paul.dale@oracle.com> GH: #10784 (cherry picked from commit b0031e5dc2c8c99a6c04bc7625aa00d3d20a59a5) 25 January 2020, 13:12:10 UTC
2dbcdb6 Replace apps/server.pem with certificate with a sha256 signature. It replaces apps/server.pem that used a sha1 signature with a copy of test/certs/servercert.pem that is uses sha256. This caused the dtlstest to start failing. It's testing connection sbetween a dtls client and server. In particular it was checking that if we drop a record that the handshake recovers and still completes successfully. The test iterates a number of times. The first time through it drops the first record. The second time it drops the second one, and so on. In order to do this it has a hard-coded value for the expected number of records it should see in a handshake. That's ok because we completely control both sides of the handshake and know what records we expect to see. Small changes in message size would be tolerated because that is unlikely to have an impact on the number of records. Larger changes in message size however could increase or decrease the number of records and hence cause the test to fail. This particular test uses a mem bio which doesn't have all the CTRLs that the dgram BIO has. When we are using a dgram BIO we query that BIO to determine the MTU size. The smaller the MTU the more fragmented handshakes become. Since the mem BIO doesn't report an MTU we use a rather small default value and get quite a lot of records in our handshake. This has the tendency to increase the likelihood of the number of records changing in the test if the message size changes. It so happens that the new server certificate is smaller than the old one. AFAICT this is probably because the DNs for the Subject and Issuer are significantly shorter than previously. The result is that the number of records used to transmit the Certificate message is one less than it was before. This actually has a knock on impact for subsequent messages and how we fragment them resulting in one less ServerKeyExchange record too (the actual size of the ServerKeyExchange message hasn't changed, but where in that message it gets fragmented has). In total the number of records used in the handshake has decreased by 2 with the new server.pem file. Reviewed-by: Paul Dale <paul.dale@oracle.com> GH: #10784 (cherry picked from commit 5fd72d96a592c3c4ef28ff11c6ef334a856b0cd1) 25 January 2020, 13:12:07 UTC
59f92fa openssl-config: add example libssl system-defaults Provide a "simple" example for affecting the systemwide default behavior of libssl. The large number of mandatory nested sections makes this less simple than the main description might suggest. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10937) (cherry picked from commit 3472082b4b6d73e0803a7c47f03e96ec0a69f77b) 25 January 2020, 04:54:11 UTC
f50f272 Remove remaining references to crypto/include Configure creates an empty crypto/include which gets not cleaned up with make distclean. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10893) 21 January 2020, 13:18:53 UTC
a3998ea Fix TLS not using aes_cbc_hmac_sha ciphers AES_ASM was repaced by AESNI_ASM, so use that. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10892) 21 January 2020, 12:55:50 UTC
d6116a9 Fix unwind info in crypto/rc4/asm/rc4-x86_64.pl Move .cfi_startproc to the right place for RC4. Add missing .cfi_startproc and .cfi_endproc to RC4_options. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/10872) (cherry picked from commit 967ef73013becef2aec3439f8c45204b24121018) 20 January 2020, 16:37:48 UTC
609d24b For all assembler scripts where it matters, recognise clang > 9.x Fixes #10853 Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/10857) 17 January 2020, 07:54:27 UTC
017015c Update SSL_CTX_sess_set_new_cb(3) docs for refcounts The existing documentation for the new-session callback was unclear about the requirements on the callback with respect to reference-handling of the session object being created. Be more explicit about the (non-)requirements on the callback code for "success" (1) and "ignore" (0) return values. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10848) (cherry picked from commit 188d4ec82a9b0085ac5841cce3eda95efb94f2b4) 16 January 2020, 21:41:50 UTC
56c59dd Fix documentation of return value for EVP_Digest{Sign,Verify}Init() They never returned the negative values that the documentation stated. Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/10847) 15 January 2020, 00:21:10 UTC
902a97b Avoid leak in error path of asn1_parse2 CLA: trivial Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10794) (cherry picked from commit 6a165fab239ec5b00b3cd68169a63b509207177d) 14 January 2020, 17:35:04 UTC
5f6343d Configure: use $list_separator_re only for defines and includes This regexp was used a bit too uncontrolled, which had it split flag values where it should not have. Fixes #10792 Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/10793) (cherry picked from commit bbe486cf6154df3d3aaedbae6c5b82d4ed31a5f8) 13 January 2020, 08:04:19 UTC
6d5e2a4 fix a glitch in the documentation of OCSP_sendreq_bio() Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10713) 09 January 2020, 08:41:05 UTC
0efc115 Fix pkeyutl -verifyrecover When performing a pkeyutl -verifyrecover operation the input file is not a hash - it is the signature itself. Therefore don't do the check to make sure it looks like a hash. Fixes #9658 Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9731) (cherry picked from commit 5ffc33244cd4d66e47dfa66ce89cb38d0f3074cc) 08 January 2020, 10:02:20 UTC
f245be9 Revert "Move random-related defines from e_os.h to rand_unix.c" This reverts commit 7b18d1a53f932391bbc599a4717d6f98a597849c, which moved the DEVRANDOM and DEVRANDOM_EGD defines into rand_unix.c. That change introduced the regression that the compiler complains about missing declarations in apps/version.c when OpenSSL is configured using `--with-rand-seed=devrandom` (resp. `--with-rand-seed=egd`): apps/version.c:173:42: error: 'DEVRANDOM' undeclared static const char *dev[] = { DEVRANDOM, NULL }; ^~~~~~~~~ Fixes #10759 Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10764) 07 January 2020, 15:31:21 UTC
16d92fa Don't store an HMAC key for longer than we need The HMAC_CTX structure stores the original key in case the ctx is reused without changing the key. However, HMAC_Init_ex() checks its parameters such that the only code path where the stored key is ever used is in the case where HMAC_Init_ex is called with a NULL key and an explicit md is provided which is the same as the md that was provided previously. But in that case we can actually reuse the pre-digested key that we calculated last time, so we can refactor the code not to use the stored key at all. With that refactor done it is no longer necessary to store the key in the ctx at all. This means that long running ctx's will not keep the key in memory for any longer than required. Note though that the digested key *is* still kept in memory for the duration of the life of the ctx. Fixes #10743 Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/10763) 07 January 2020, 11:53:29 UTC
0fcc6e7 Fix incorrect return code on ECDSA key verification ECDSA_do_verify() is a function that verifies a ECDSA signature given a hash and a public EC key. The function is supposed to return 1 on valid signature, 0 on invalid signature and -1 on error. Previously, we returned 0 if the key did not have a verify_sig method. This is actually an error case and not an invalid signature. Consequently, this patch updates the return code to -1. Fixes #8766 Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10693) (cherry picked from commit 26583f6aa8dc28e3598e61db66e54e2fdf8b195f) 05 January 2020, 13:52:00 UTC
49847f3 Fix disabled ecdsa in apps/speed This came from f3fdfbf78c6b. run = 1 should be done in pkey_print_message as well, otherwise other tests printed with pkey_print_message won't run. Change-Id: I0ba0b05256ad6509ada4735b26d10f8a73fd89ec Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/10710) (cherry picked from commit 6e49b514067a2b6a30d064d2ae1fdfd8050c184b) 05 January 2020, 11:45:33 UTC
940c588 Fix side channel in ecp_nistz256-armv8.pl This change addresses a potential side-channel vulnerability in the internals of nistz256 low level operations for armv8. Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/9239) (cherry picked from commit f5a659b6dfcc735a62c712dcca64d116d2289b97) 05 January 2020, 06:39:23 UTC
38be93f Fix side channel in the ecp_nistz256.c reference implementation This is only used if configured with ./config -DECP_NISTZ256_REFERENCE_IMPLEMENTATION Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9239) (cherry picked from commit 7d4716648e8348dea862e198b9395478fae01907) 05 January 2020, 06:39:23 UTC
ec7c1fd Improve side channel fix in ecp_nistz256-x86_64.pl Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9239) (cherry picked from commit e9fe87950db2e6169029b2ecf3ed09d64265bc9c) 05 January 2020, 06:39:23 UTC
75738b9 Fix side channel in ecp_nistz256-armv4.pl Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9239) (cherry picked from commit 3d139746ca72f0906c036d0a4a3e176c7b61ed1b) 05 January 2020, 06:39:23 UTC
969ee51 Fix side channel in ecp_nistz256-x86.pl Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9239) (cherry picked from commit 0de3399b691f025153c8001045d5eeb0909dfd7a) 05 January 2020, 06:39:23 UTC
6f52dbb Avoid leaking intermediate states in point doubling special case. Cherry picked from https://github.com/google/boringssl/commit/12d9ed670da3edd64ce8175cfe0e091982989c18 Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/9239) (cherry picked from commit 2baea7c7e0896658b74956cac6084dd7e82e8c1b) 05 January 2020, 06:39:22 UTC
1f60c1c Fix potential SCA vulnerability in some EC_METHODs This commit addresses a potential side-channel vulnerability in the internals of some elliptic curve low level operations. The side-channel leakage appears to be tiny, so the severity of this issue is rather low. The issue was reported by David Schrammel and Samuel Weiser. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/9239) (cherry picked from commit 3cb914c463ed1c9e32cfb773d816139a61b6ad5f) 05 January 2020, 06:39:22 UTC
2c52a36 Run make update The New Year has caused various files to appear out of date to "make update". This causes Travis to fail. Therefore we update those files. Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10739) 02 January 2020, 14:45:04 UTC
10e166a Update tls13_enc.c Fix double + in hkdflabel declaration (FIXES #10675) CLA: trivial Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Kurt Roeckx <kurt@roeckx.be> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10700) (cherry picked from commit 2de5a5fbdd14f514e962cccfe90482c37786c183) 02 January 2020, 12:52:10 UTC
3c57b9c Temporarily disable external pyca tests The pyca-cryptography external test has been failing for a long time. It looks like upstream needs to make some changes to adapt to 1.1.1. Backported from #10689 [extended tests] Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10722) 29 December 2019, 12:24:04 UTC
a6194c3 Update the krb5 submodule Bring us up to date with upstream's 1.17.1 release. Among other things, it includes commit c2497d46b4bad473e164943d67b58cd1ae261c3a which fixes several issues that affect running the test suite under Travis CI. Hopefully those will work transitively for us as well. [extended tests] Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit 3e73f558af600ea068bb2132988c31ddb444e13e) Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/10690) 29 December 2019, 12:08:55 UTC
0a34f51 Fix a race condition in the speed command The timer alarm sets run = 0, while the benchmark does run = 1 in the initialization code. That is a race condition, if the timer goes off too early the benchmark runs forever. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10680) (cherry picked from commit f3fdfbf78c6bfc97abf9c70b03859a28ebf6b66d) 26 December 2019, 09:35:43 UTC
112afa6 Add some missing cfi frame info in rc4-md5-x86_64.pl Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10679) (cherry picked from commit b2a00f62209add348deb8283c588ddbd572dc216) 23 December 2019, 19:30:23 UTC
65b7de1 Add some missing cfi frame info in poly1305-x86_64.pl Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10678) (cherry picked from commit 048fa13e5ef4ccd730561f79a6c91f38365994d1) 23 December 2019, 19:27:46 UTC
a3d0b3c Add some missing cfi frame info in aesni-gcm-x86_64.pl Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10677) (cherry picked from commit 275a048ffc1585a731e39d7e8e3f53766e8f48d7) 23 December 2019, 19:24:55 UTC
3d8d8b8 Add some missing cfi frame info in x25519-x86_64.pl Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10676) (cherry picked from commit 9d079f2744b9b624c6fe75f95fc0f766ef88ffcf) 23 December 2019, 16:03:46 UTC
1ef6389 Fix aesni_cbc_sha256_enc_avx2 backtrace info We store a secondary frame pointer info for the debugger in the red zone. This fixes a crash in the unwinder when this function is interrupted. Additionally the missing cfi function annotation is added to aesni_cbc_sha256_enc_shaext. [extended tests] Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10674) (cherry picked from commit 665de4d48aef2507022a7d74f5c7f6e339d5e6bc) 23 December 2019, 16:00:15 UTC
b6d0a1c Add some missing cfi frame info in ecp_nistz256-x86_64.pl Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10672) (cherry picked from commit eff5076a78502d1ac04669e44127d4bd7c0a9ce7) 23 December 2019, 15:55:36 UTC
b885981 Fix evp_extra_test with no-dh The new DH test in evp_extra_test.c broke the no-dh build so we add some guards to fix it. Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/10644) (cherry picked from commit 501fcfb8cfc1aa114ffde437039c2dc2827554ae) 23 December 2019, 10:29:14 UTC
2b2faf7 Add some missing cfi frame info in aesni-sha and sha-x86_64.pl Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10655) (cherry picked from commit b0d3442efc10b635863b915c2d014345f6e5a219) 20 December 2019, 22:15:49 UTC
2b2833a Add some missing cfi frame info in keccak1600-x86_64.pl Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10654) (cherry picked from commit 95bbe6eff7aadc681e282ec957379b49d6f80ca8) 20 December 2019, 22:13:20 UTC
572351b Add some missing cfi frame info in aesni-x86_64.pl Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10653) (cherry picked from commit a5fe7825b970a6c937118a4f707f9ad367413794) 20 December 2019, 22:10:27 UTC
da26d62 Add some missing cfi frame info in rsaz-x86_64 Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10652) (cherry picked from commit 013c2e8d1a272df444f47b8b54de1d51bc499887) 20 December 2019, 22:07:03 UTC
3ea1292 Add some missing cfi frame info in x86_64-mont5.pl Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10651) (cherry picked from commit 0190c52ab8b4cdf5fe577b3d924576167c892a15) 20 December 2019, 21:58:43 UTC
062acbc Add some missing cfi frame info in camellia-x86_64.pl Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/10642) (cherry picked from commit 6b913be708f98b1d971586d38e608218ee6de6fa) 20 December 2019, 21:44:03 UTC
back to top