From 661eb8e7995b6fd4b42a1b05aaf4697d6ff16c4d Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Thu, 13 Apr 2023 18:21:14 +0000 Subject: [PATCH 1/4] Fix enterprise linux build Ensure a recent lld is available on the build host --- .../System/Net/EnterpriseTests/setup/linuxclient/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile b/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile index 342575d22f26ac..6141b15f7466c2 100644 --- a/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile +++ b/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile @@ -1,4 +1,4 @@ -FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04 +FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04 # Prevents dialog prompting when installing packages ARG DEBIAN_FRONTEND=noninteractive @@ -6,7 +6,7 @@ ARG DEBIAN_FRONTEND=noninteractive # Install Kerberos, NTLM, and diagnostic tools COPY ./common/krb5.conf /etc/krb5.conf RUN apt-get update && \ - apt-get install -y --no-install-recommends krb5-user gss-ntlmssp iputils-ping dnsutils nano + apt-get install -y --no-install-recommends krb5-user gss-ntlmssp iputils-ping dnsutils nano lld # Set environment variable to turn on enterprise tests ENV DOTNET_RUNTIME_ENTERPRISETESTS_ENABLED 1 From c6c4a991504e476d430dee4e34cdd4f4080c7006 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Fri, 14 Apr 2023 17:30:55 +0000 Subject: [PATCH 2/4] Remove lld As it is now installed in the ubuntu-22.04 image --- .../System/Net/EnterpriseTests/setup/linuxclient/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile b/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile index 6141b15f7466c2..c31378f2ce53f6 100644 --- a/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile +++ b/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile @@ -6,7 +6,7 @@ ARG DEBIAN_FRONTEND=noninteractive # Install Kerberos, NTLM, and diagnostic tools COPY ./common/krb5.conf /etc/krb5.conf RUN apt-get update && \ - apt-get install -y --no-install-recommends krb5-user gss-ntlmssp iputils-ping dnsutils nano lld + apt-get install -y --no-install-recommends krb5-user gss-ntlmssp iputils-ping dnsutils nano # Set environment variable to turn on enterprise tests ENV DOTNET_RUNTIME_ENTERPRISETESTS_ENABLED 1 From bf94486ae09f09cd481a022ac2419101bb7c622d Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Wed, 19 Apr 2023 18:47:13 +0000 Subject: [PATCH 3/4] Try enabling legacy provider --- .../setup/linuxclient/Dockerfile | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile b/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile index c31378f2ce53f6..b6bb4b9115bbd2 100644 --- a/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile +++ b/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile @@ -8,6 +8,27 @@ COPY ./common/krb5.conf /etc/krb5.conf RUN apt-get update && \ apt-get install -y --no-install-recommends krb5-user gss-ntlmssp iputils-ping dnsutils nano +# Enable openssl legacy provider in system openssl config +RUN fixOpensslConf=$(mktemp) && \ + printf "#!/usr/bin/env sh\n\ + sed -i '\n\ + # Append 'legacy = legacy_sect' after 'default = default_sect' under [provdier_sect] + /^default = default_sect/a legacy_sect\n\ + # Search for [default_sect] + /\[default_sect\]/ {\n\ + # Go to next line + n\n\ + # Uncomment '# activate = 1' + s/# //\n\ + # Append new [legacy_sect], with 'activate = 1' + a\n\ + a [legacy_sect]\n\ + a activate = 1\n\ + }\n\ + ' /etc/ssl/openssl.cnf\n" > $fixOpensslConf && \ + sh $fixOpensslConf && \ + rm $fixOpensslConf + # Set environment variable to turn on enterprise tests ENV DOTNET_RUNTIME_ENTERPRISETESTS_ENABLED 1 From 17b01ced6e7224cfa5345d0454f088d99437f2e4 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Thu, 20 Apr 2023 17:48:04 +0000 Subject: [PATCH 4/4] Fix legacy under [provider_sect] --- .../System/Net/EnterpriseTests/setup/linuxclient/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile b/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile index b6bb4b9115bbd2..67f5cf0aa617bd 100644 --- a/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile +++ b/src/libraries/Common/tests/System/Net/EnterpriseTests/setup/linuxclient/Dockerfile @@ -12,8 +12,8 @@ RUN apt-get update && \ RUN fixOpensslConf=$(mktemp) && \ printf "#!/usr/bin/env sh\n\ sed -i '\n\ - # Append 'legacy = legacy_sect' after 'default = default_sect' under [provdier_sect] - /^default = default_sect/a legacy_sect\n\ + # Append 'legacy = legacy_sect' after 'default = default_sect' under [provider_sect] + /^default = default_sect/a legacy = legacy_sect\n\ # Search for [default_sect] /\[default_sect\]/ {\n\ # Go to next line