[PATCH] MDEV-25785 Add support for OpenSSL 3.0
authorDebian MySQL Maintainers <pkg-mysql-maint@lists.alioth.debian.org>
Thu, 10 Mar 2022 06:26:32 +0000 (06:26 +0000)
committerOtto Kekäläinen <otto@debian.org>
Thu, 10 Mar 2022 06:26:32 +0000 (06:26 +0000)
commit22047a087a93e79c592a7db5afb46ae2917ae3a0
tree05503d077c1bf95e7a46326409d6aefeecdaa908
parent23c84e7ec990aea6eebcaefe02683dbb2ebe0fa9
[PATCH] MDEV-25785 Add support for OpenSSL 3.0

Summary of changes

- MD_CTX_SIZE is increased

- EVP_CIPHER_CTX_buf_noconst(ctx) does not work anymore, points
  to nobody knows where. The assumption made previously was that
  (since the function does not seem to be documented)
  was that it points to the last partial source block.
  Add own partial block buffer for NOPAD encryption instead

- SECLEVEL in CipherString in openssl.cnf
  had been downgraded to 0, from 1, to make TLSv1.0 and TLSv1.1 possible

- Workaround Ssl_cipher_list issue, it now returns TLSv1.3 ciphers,
  in addition to what was set in --ssl-cipher

- ctx_buf buffer now must be aligned to 16 bytes with openssl(
  previously with WolfSSL only), or crashes will happen

- updated aes-t , to be better debuggable
  using function, rather than a huge multiline macro
  added test that does "nopad" encryption piece-wise, to test
  replacement of EVP_CIPHER_CTX_buf_noconst

Gbp-Pq: Name openssl-3-compatibility.patch
cmake/ssl.cmake
include/ssl_compat.h
mysql-test/lib/openssl.cnf
mysql-test/main/ssl_cipher.result
mysql-test/main/ssl_cipher.test
mysys_ssl/my_crypt.cc
unittest/mysys/aes-t.c