Skip to content

Commit

Permalink
Add OpenSSL 3.0 support. (#738)
Browse files Browse the repository at this point in the history
Co-authored-by: Jumping Yang[Wicresoft] <v-zhenpy@microsoft.com>
  • Loading branch information
ShirelyGu and JumpingYang001 committed Mar 3, 2023
1 parent 9d143af commit 170d375
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 2 deletions.
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -11,6 +11,7 @@
/Unix/output_openssl_0.9.8/
/Unix/output_openssl_1.0.0/
/Unix/output_openssl_1.1.0/
/Unix/output_openssl_3.0.0/
nits.log
/Unix/tests/oi/out.c.txt
/Unix/etc/ssl/certs/omikey.pem
Expand Down
9 changes: 9 additions & 0 deletions Unix/configure
Expand Up @@ -476,11 +476,13 @@ fi
if [ "$enable_ulinux" = "1" ]; then
openssl100_dir=/usr/local_ssl_1.0.0
openssl110_dir=/usr/local_ssl_1.1.0
openssl300_dir=/usr/local_ssl_3.0.0

case "`uname -m`" in
x86_64 )
openssl100_libdir=${openssl100_dir}/lib64
openssl110_libdir=${openssl110_dir}/lib
openssl300_libdir=${openssl300_dir}/lib64
;;

* )
Expand All @@ -494,6 +496,8 @@ if [ "$enable_ulinux" = "1" ]; then
if [ `uname -m` = "x86_64" ]; then
openssl110_cflags=`PKG_CONFIG_PATH=$openssl110_libdir/pkgconfig $pkgconfig --cflags openssl`
openssl110_libs=`PKG_CONFIG_PATH=$openssl110_libdir/pkgconfig $pkgconfig --libs openssl`
openssl300_cflags=`PKG_CONFIG_PATH=$openssl300_libdir/pkgconfig $pkgconfig --cflags openssl`
openssl300_libs=`PKG_CONFIG_PATH=$openssl300_libdir/pkgconfig $pkgconfig --libs openssl`
fi

echo "checking for local installation of openssl version 1.0.0 on system ..."
Expand Down Expand Up @@ -2536,6 +2540,11 @@ ifneq (\$(DISABLE_SSL_1_1_0),1)
echo Running: ./configure \$(OMI_CONFIGURE_QUALS) --outputdirname=output_openssl_1.1.0 --opensslcflags="${openssl110_cflags}" --openssllibs="${openssl110_libs}" --openssllibdir="${openssl110_libdir}"; \
./configure \$(OMI_CONFIGURE_QUALS) --outputdirname=output_openssl_1.1.0 --opensslcflags="${openssl110_cflags}" --openssllibs="${openssl110_libs}" --openssllibdir="${openssl110_libdir}"; \
( cd \$(__ROOT); OUTPUTDIR=${root}/output_openssl_1.1.0; SSL_BUILD=1.1.0; \$(MAKE) -f build.mak )
@echo '========================= Performing Building OMI (SSL 3.0.0)'
echo Running: ./configure \$(OMI_CONFIGURE_QUALS) --outputdirname=output_openssl_3.0.0 --opensslcflags="${openssl300_cflags}" --openssllibs="${openssl300_libs}" --openssllibdir="${openssl300_libdir}"; \
./configure \$(OMI_CONFIGURE_QUALS) --outputdirname=output_openssl_3.0.0 --opensslcflags="${openssl300_cflags}" --openssllibs="${openssl300_libs}" --openssllibdir="${openssl300_libdir}"; \
( cd \$(__ROOT); OUTPUTDIR=${root}/output_openssl_3.0.0; SSL_BUILD=3.0.0; \$(MAKE) -f build.mak )
endif
else
Expand Down
2 changes: 1 addition & 1 deletion Unix/installbuilder/GNUmakefile
Expand Up @@ -15,7 +15,7 @@ include $(TOP)/config.mak
#
# This makes it easier for Jenkins to have a reasonable directory layout
PACKAGE_DIR_SUFFIX = $(shell echo $(OUTPUTDIRNAME) | sed 's/output//' | sed 's~^_open~/open~')
PACKAGE_SSL_DECORATION = $(shell echo $(OUTPUTDIRNAME) | sed 's/output_openssl_1.0.0/ssl_100/' | sed 's/output_openssl_1.1.0/ssl_110/')
PACKAGE_SSL_DECORATION = $(shell echo $(OUTPUTDIRNAME) | sed 's/output_openssl_1.0.0/ssl_100/' | sed 's/output_openssl_1.1.0/ssl_110/'| sed 's/output_openssl_3.0.0/ssl_300/')
PACKAGE_DIR = $(TOP)/../Packages/$(BUILD_CONFIGURATION)$(PACKAGE_DIR_SUFFIX)

# Selinux policy directories.
Expand Down
3 changes: 3 additions & 0 deletions Unix/installbuilder/datafiles/ULinux.data
Expand Up @@ -36,6 +36,9 @@ case "$SSL_VERSION" in
1.1.*)
SSL_FOUND=1.1.0
;;
3.0.*)
SSL_FOUND=3.0.0
;;
*)
echo "Preinstall script error: Unrecognized version of SSL on the system: $SSL_VERSION" >&2
exit 2
Expand Down
6 changes: 5 additions & 1 deletion Unix/scripts/installssllinks
Expand Up @@ -32,9 +32,13 @@ verify_ssl_version() {
LIB_SUFFIX="1.1.0"
ATTEMPT_HMAC_LINK_CREATION=1
;;
3.0.*)
LIB_SUFFIX="3.0.0"
ATTEMPT_HMAC_LINK_CREATION=1
;;
*)
echo "Error: OpenSSL version '${SSL_VERSION}' is not supported. Supported versions of OpenSSL are:" >&2
echo " 1.0.*, and 1.1.*." >&2
echo " 1.0.*, 1.1.* and 3.0.*." >&2
exit 2
;;
esac
Expand Down

0 comments on commit 170d375

Please sign in to comment.