Merge pull request #137004 from baloo/baloo/openssl/3.0.0-init

openssl3: init at 3.0.0
This commit is contained in:
Janne Heß 2021-11-05 13:02:47 +01:00 committed by GitHub
commit 83ab81ae89
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 63 additions and 3 deletions

View File

@ -0,0 +1,15 @@
diff --git a/crypto/x509/by_file.c b/crypto/x509/by_file.c
index 37d73ca84c..e328896234 100644
--- a/crypto/x509/by_file.c
+++ b/crypto/x509/by_file.c
@@ -54,7 +54,9 @@ static int by_file_ctrl_ex(X509_LOOKUP *ctx, int cmd, const char *argp,
switch (cmd) {
case X509_L_FILE_LOAD:
if (argl == X509_FILETYPE_DEFAULT) {
- file = ossl_safe_getenv(X509_get_default_cert_file_env());
+ file = ossl_safe_getenv("NIX_SSL_CERT_FILE");
+ if (!file)
+ file = ossl_safe_getenv(X509_get_default_cert_file_env());
if (file)
ok = (X509_load_cert_crl_file_ex(ctx, file, X509_FILETYPE_PEM,
libctx, propq) != 0);

View File

@ -0,0 +1,22 @@
diff --git a/Configure b/Configure
index f0ad787bc4..a48d2008c6 100755
--- a/Configure
+++ b/Configure
@@ -1688,17 +1688,6 @@ unless ($disabled{devcryptoeng}) {
unless ($disabled{ktls}) {
$config{ktls}="";
if ($target =~ m/^linux/) {
- my $usr = "/usr/$config{cross_compile_prefix}";
- chop($usr);
- if ($config{cross_compile_prefix} eq "") {
- $usr = "/usr";
- }
- my $minver = (4 << 16) + (13 << 8) + 0;
- my @verstr = split(" ",`cat $usr/include/linux/version.h | grep LINUX_VERSION_CODE`);
-
- if ($verstr[2] < $minver) {
- disable('too-old-kernel', 'ktls');
- }
} elsif ($target =~ m/^BSD/) {
my $cc = $config{CROSS_COMPILE}.$config{CC};
system("printf '#include <sys/types.h>\n#include <sys/ktls.h>' | $cc -E - >/dev/null 2>&1");

View File

@ -198,11 +198,33 @@ in {
./1.1/nix-ssl-cert-file.patch
(if stdenv.hostPlatform.isDarwin
then ./1.1/use-etc-ssl-certs-darwin.patch
else ./1.1/use-etc-ssl-certs.patch)
then ./use-etc-ssl-certs-darwin.patch
else ./use-etc-ssl-certs.patch)
] ++ lib.optionals (stdenv.isDarwin) [
./1.1/macos-yosemite-compat.patch
];
withDocs = true;
};
openssl_3_0 = common {
version = "3.0.0";
sha256 = "sha256-We7fy0bCUhTJvTftYHgpe03wHQEiZ/6enu4x9hvHBTY=";
patches = [
./3.0/nix-ssl-cert-file.patch
# openssl will only compile in KTLS if the current kernel supports it.
# This patch disables build-time detection.
./3.0/openssl-disable-kernel-detection.patch
(if stdenv.hostPlatform.isDarwin
then ./use-etc-ssl-certs-darwin.patch
else ./use-etc-ssl-certs.patch)
];
withDocs = true;
extraMeta = with lib; {
license = licenses.asl20;
};
};
}

View File

@ -18845,7 +18845,8 @@ with pkgs;
inherit (callPackages ../development/libraries/openssl { })
openssl_1_0_2
openssl_1_1;
openssl_1_1
openssl_3_0;
openssl-chacha = callPackage ../development/libraries/openssl/chacha.nix { };