From ef978195236041020bee49bf69230b436545c422 Mon Sep 17 00:00:00 2001
From: Joe Garcia <joe.garcia@ssec.wisc.edu>
Date: Mon, 10 Feb 2020 21:20:14 +0000
Subject: [PATCH] ssl 110 version for suse. new default for 10x forward
 portable abi for ssl

---
 ShellB3/shallbethree.sh                       | 33 +++++++++++++++----
 ShellB3/src/sys/openssl-OpenSSL_1_1_0i.tar.gz |  3 ++
 2 files changed, 29 insertions(+), 7 deletions(-)
 create mode 100644 ShellB3/src/sys/openssl-OpenSSL_1_1_0i.tar.gz

diff --git a/ShellB3/shallbethree.sh b/ShellB3/shallbethree.sh
index 54db1d0c..33475446 100755
--- a/ShellB3/shallbethree.sh
+++ b/ShellB3/shallbethree.sh
@@ -679,14 +679,16 @@ nativeOpenSSLVersion(){
   # Compatibility chart:
   # VVV Can run with
   #         compiled with
-  #     101    102    111
-  # 101  X      _      _
-  # 102  X      X      _
-  # 111  _      _      X
+  #     101    102    110   111
+  # 101  X      _      _     _
+  # 102  X      X      _     _
+  # 110  _      _      X     _
+  # 111  _      _      X     X
   #
   # Typical Platforms:
   # 101 - CentOS 6, Ubuntu 14
   # 102 - CentOS 7, Ubuntu 15-18
+  # 110 - opensuse
   # 111 - CentOS 8, Ubuntu 19+
   #
   # Since Python 3.7+ requires minimum 102, it can only be compiled on CentOS 7 or Ubuntu 15 and newer
@@ -743,6 +745,9 @@ nativeOpenSSLVersion(){
   elif contains 1.1.1 ${SSLNAME} ; then
     echo 111
     return 0
+  elif contains 1.1.0 ${SSLNAME} ; then
+    echo 110
+    return 0
   elif contains 1.0.2 ${SSLNAME} ; then
     echo 102
     return 0
@@ -754,8 +759,14 @@ nativeOpenSSLVersion(){
   if [ -e /usr/lib*/libssl.so.1.1.1? ] ; then
     echo 111
     return 0
-  elif [ -e /usr/lib*/libssl${OPENSSL111FILESUFFIX} ] ; then
-    echo 111
+  #elif [ -e /usr/lib*/libssl${OPENSSL111FILESUFFIX} ] ; then
+  #  echo 111
+  #  return 0
+  elif [ -e /usr/lib*/libssl.so.1.1.0? ] ; then
+    echo 110
+    return 0
+  elif [ -e /usr/lib*/libssl${OPENSSL110FILESUFFIX} ] ; then # same as 111 so...
+    echo 110
     return 0
   elif [ -e /usr/lib*/libssl.so.1.0.2? ] ; then
     echo 102
@@ -1122,6 +1133,9 @@ export OPENSSL101ALTFILESUFFIX=.so.10
 export OPENSSL102VER=OpenSSL_1_0_2k
 export OPENSSL102FILESUFFIX=.so.1.0.0
 export OPENSSL102ALTFILESUFFIX=.so.10
+export OPENSSL110VER=OpenSSL_1_1_0i
+export OPENSSL110FILESUFFIX=.so.1.1
+export OPENSSL110ALTFILESUFFIX=""
 export OPENSSL111VER=OpenSSL_1_1_1b
 export OPENSSL111FILESUFFIX=.so.1.1
 export OPENSSL111ALTFILESUFFIX="" #Thanks CentOS for joining the party
@@ -9730,6 +9744,11 @@ loadSSLVersion() {
     export SSLFILESUFFIX=${OPENSSL102FILESUFFIX}
     export SSL_NP_FILESUFFIX=${OPENSSL102ALTFILESUFFIX}
         ;;
+      110)
+    export OPENSSLVER=${OPENSSL110VER}
+    export SSLFILESUFFIX=${OPENSSL110FILESUFFIX}
+    export SSL_NP_FILESUFFIX=${OPENSSL110ALTFILESUFFIX}
+        ;;
       111)
     export OPENSSLVER=${OPENSSL111VER}
     export SSLFILESUFFIX=${OPENSSL111FILESUFFIX}
@@ -10060,7 +10079,7 @@ bundle_abi() {
             mv $f $(echo $f | sed -e s,_ssl,../ssl10mod/_ssl,g -e s,_hashlib,../ssl10mod/_hashlib,g )
           fi
         done
-        ( mk_openssl 111 && remake_py && rm -rf lib*/libssl.* lib*/libcrypto.* bin/openssl lib*/engines* ssl native include/openssl ) || oops "Failed to remake python with ssl 1.1.x support"
+        ( mk_openssl 110 && remake_py && rm -rf lib*/libssl.* lib*/libcrypto.* bin/openssl lib*/engines* ssl native include/openssl ) || oops "Failed to remake python with ssl 1.1.x support"
         resume_tracker
         for f in $( find lib*/python* -name "_ssl.*so" | grep -v ssl1 ) $( find lib*/python* -name "_hashlib.*so" | grep -v ssl1 ) ; do
           if [ -e "$f" ] ; then
diff --git a/ShellB3/src/sys/openssl-OpenSSL_1_1_0i.tar.gz b/ShellB3/src/sys/openssl-OpenSSL_1_1_0i.tar.gz
new file mode 100644
index 00000000..6755adf4
--- /dev/null
+++ b/ShellB3/src/sys/openssl-OpenSSL_1_1_0i.tar.gz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e50f5a20679cce67718dd5a2a8eb0441b1107c79fd1365c81a12c8258c785e3c
+size 5912349
-- 
GitLab