freebsd-src/crypto
John Baldwin e8633bc76a openssh: Don't include an unused EVP_CIPHER_CTX_get_iv() stub
This stub isn't actually used on modern versions of OpenSSL for which
OpenSSH uses EVP_CIPHER_CTX_get_updated_iv instead via a wrapper macro.

However, the wrapper macro conflicted with the existing namespace
macro triggering an error on GCC:

In file included from crypto/openssh/sshd-session.c:65:
crypto/openssh/openbsd-compat/openssl-compat.h:71:11: error: "EVP_CIPHER_CTX_get_iv" redefined [-Werror]
   71 | #  define EVP_CIPHER_CTX_get_iv EVP_CIPHER_CTX_get_updated_iv
      |           ^~~~~~~~~~~~~~~~~~~~~
In file included from <command-line>:
crypto/openssh/ssh_namespace.h:12:9: note: this is the location of the previous definition
   12 | #define EVP_CIPHER_CTX_get_iv                   Fssh_EVP_CIPHER_CTX_get_iv
      |         ^~~~~~~~~~~~~~~~~~~~~

The error was masked on clang due to MIT krb5 adding a blanket
-Wno-macro-redefined.  Building sshd-session without Kerberos support
was sufficient to trigger a warning from clang.

Reviewed by:	des
Differential Revision:	https://reviews.freebsd.org/D51810
2025-08-08 13:43:56 -04:00
..
heimdal heimdal: Add missing symbols to map 2025-03-26 06:59:24 -07:00
krb5 krb5: Rename the ALIGN macro in aestab.h 2025-08-02 06:30:17 +01:00
libecc Add 'crypto/libecc/' from commit '736d663976d1768533badbf06581481d01fade4c' 2025-01-01 15:11:18 -06:00
openssh openssh: Don't include an unused EVP_CIPHER_CTX_get_iv() stub 2025-08-08 13:43:56 -04:00
openssl OSSL_HTTP_get(): Reset redirection_url in each iteration 2025-05-29 10:56:46 -07:00
README Two more $FreeBSD$ stragglers 2023-08-25 15:14:19 -06:00

This directory is for the EXACT same use as src/contrib, except it
holds crypto sources.  In other words, this holds raw sources obtained
from various third party vendors, with FreeBSD patches applied.  No
compilation is done from this directory, it is all done from the
src/secure directory.  The separation between src/contrib and src/crypto
is the result of an old USA law, which made these sources export
controlled, so they had to be kept separate.