diff --git a/.github/workflows/bind9.yml b/.github/workflows/bind9.yml
index eb3d80c2..f793232b 100644
--- a/.github/workflows/bind9.yml
+++ b/.github/workflows/bind9.yml
@@ -72,15 +72,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/build-wolfprovider.yml b/.github/workflows/build-wolfprovider.yml
index 234f5ba6..b4059e8c 100644
--- a/.github/workflows/build-wolfprovider.yml
+++ b/.github/workflows/build-wolfprovider.yml
@@ -52,6 +52,7 @@ jobs:
equivs \
expect \
xxd \
+ bc \
libdistro-info-perl
- name: Checkout wolfProvider
@@ -71,31 +72,20 @@ jobs:
git remote add upstream https://github.com/wolfSSL/wolfProvider.git || true
git fetch upstream --tags --no-recurse-submodules
- # Build wolfSSL packages and install
- # Note we do not use the cache currently. This is a future optimization.
- # TODO: roll this step into utils-wolfssl.sh
- - name: Build wolfSSL packages and install
- run: |
+ - name: Install wolfSSL
+ run: |
$GITHUB_WORKSPACE/debian/install-wolfssl.sh --tag ${{ inputs.wolfssl_ref }} ${{ env.WOLFSSL_PACKAGES_PATH }}
- - name: Build wolfProvider
+ - name: Install OpenSSL
run: |
- WOLFSSL_TAG=${{ inputs.wolfssl_ref }} OPENSSL_TAG=${{ inputs.openssl_ref }} \
- yes "Y" | $GITHUB_WORKSPACE/scripts/build-wolfprovider.sh --debian \
- ${{ inputs.replace_default && '--replace-default' || '' }}
+ $GITHUB_WORKSPACE/debian/install-openssl.sh ${{ inputs.replace_default && '--replace-default' || '' }} ${{ env.OPENSSL_PACKAGES_PATH }}
- - name: Setup packages directory
+ - name: Install wolfProvider
run: |
- mkdir -p ${{ env.OPENSSL_PACKAGES_PATH }}
- cp $GITHUB_WORKSPACE/../openssl*.deb ${{ env.OPENSSL_PACKAGES_PATH }}
- cp $GITHUB_WORKSPACE/../libssl*.deb ${{ env.OPENSSL_PACKAGES_PATH }}
-
- mkdir -p ${{ env.WOLFPROV_PACKAGES_PATH }}
- cp $GITHUB_WORKSPACE/../libwolfprov*.deb ${{ env.WOLFPROV_PACKAGES_PATH }}
- cp $GITHUB_WORKSPACE/../libwolfprov*.dsc ${{ env.WOLFPROV_PACKAGES_PATH }}
- cp $GITHUB_WORKSPACE/../libwolfprov*.tar.gz ${{ env.WOLFPROV_PACKAGES_PATH }}
+ $GITHUB_WORKSPACE/debian/install-wolfprov.sh ${{ env.WOLFPROV_PACKAGES_PATH }}
- printf "Listing packages directory:\n"
+ - name: List packages directories
+ run: |
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
ls -la ${{ env.WOLFSSL_PACKAGES_PATH }}
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
diff --git a/.github/workflows/cjose.yml b/.github/workflows/cjose.yml
index c3f1d01b..f376b279 100644
--- a/.github/workflows/cjose.yml
+++ b/.github/workflows/cjose.yml
@@ -3,7 +3,7 @@ name: cjose Tests
# START OF COMMON SECTION
on:
push:
- branches: [ 'master', 'main', 'release/**' ]
+ branches: ['*'] #[ 'master', 'main', 'release/**' ]
pull_request:
branches: [ '*' ]
@@ -79,15 +79,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/curl.yml b/.github/workflows/curl.yml
index 677bab46..ee554ecc 100644
--- a/.github/workflows/curl.yml
+++ b/.github/workflows/curl.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/debian-package.yml b/.github/workflows/debian-package.yml
index b32a7959..b34ebe0f 100644
--- a/.github/workflows/debian-package.yml
+++ b/.github/workflows/debian-package.yml
@@ -69,13 +69,13 @@ jobs:
ls -la ${{ env.WOLFSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
apt-get update && \
apt install --reinstall -y openssl libssl3
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
@@ -223,10 +223,10 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
@@ -254,7 +254,7 @@ jobs:
- name: Install libwolfprov package
run: |
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
echo "Installed packages after wolfprov:"
diff --git a/.github/workflows/git-ssh-dr.yml b/.github/workflows/git-ssh-dr.yml
index ddbcda05..0fbfa686 100644
--- a/.github/workflows/git-ssh-dr.yml
+++ b/.github/workflows/git-ssh-dr.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/grpc.yml b/.github/workflows/grpc.yml
index 19f38c12..94efafc3 100644
--- a/.github/workflows/grpc.yml
+++ b/.github/workflows/grpc.yml
@@ -78,15 +78,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/hostap.yml b/.github/workflows/hostap.yml
index a3982366..a500b618 100644
--- a/.github/workflows/hostap.yml
+++ b/.github/workflows/hostap.yml
@@ -73,15 +73,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Show OpenSSL version
diff --git a/.github/workflows/iperf.yml b/.github/workflows/iperf.yml
index 58e26d0f..d7ac3a0d 100644
--- a/.github/workflows/iperf.yml
+++ b/.github/workflows/iperf.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/ipmitool.yml b/.github/workflows/ipmitool.yml
index 43adaebe..28ed2ae1 100644
--- a/.github/workflows/ipmitool.yml
+++ b/.github/workflows/ipmitool.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/krb5.yml b/.github/workflows/krb5.yml
index e5e9b6ed..a44f5ba7 100644
--- a/.github/workflows/krb5.yml
+++ b/.github/workflows/krb5.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/libcryptsetup.yml b/.github/workflows/libcryptsetup.yml
index 4ff27c54..f2e2306e 100644
--- a/.github/workflows/libcryptsetup.yml
+++ b/.github/workflows/libcryptsetup.yml
@@ -73,15 +73,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/libeac3.yml b/.github/workflows/libeac3.yml
index 7e2a64ad..0a05c288 100644
--- a/.github/workflows/libeac3.yml
+++ b/.github/workflows/libeac3.yml
@@ -73,15 +73,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/libfido2.yml b/.github/workflows/libfido2.yml
index af4dc5a4..a617a120 100644
--- a/.github/workflows/libfido2.yml
+++ b/.github/workflows/libfido2.yml
@@ -66,15 +66,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/libhashkit2.yml b/.github/workflows/libhashkit2.yml
index a3b17975..25dd637c 100644
--- a/.github/workflows/libhashkit2.yml
+++ b/.github/workflows/libhashkit2.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/libnice.yml b/.github/workflows/libnice.yml
index 06e47012..6cbcd9d6 100644
--- a/.github/workflows/libnice.yml
+++ b/.github/workflows/libnice.yml
@@ -70,15 +70,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/liboauth2.yml b/.github/workflows/liboauth2.yml
index 77e94286..a0cd5a89 100644
--- a/.github/workflows/liboauth2.yml
+++ b/.github/workflows/liboauth2.yml
@@ -70,15 +70,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/libssh2.yml b/.github/workflows/libssh2.yml
index cee0ffa1..4131af8a 100644
--- a/.github/workflows/libssh2.yml
+++ b/.github/workflows/libssh2.yml
@@ -70,15 +70,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/libwebsockets.yml b/.github/workflows/libwebsockets.yml
index 0a8c9b73..f406a869 100644
--- a/.github/workflows/libwebsockets.yml
+++ b/.github/workflows/libwebsockets.yml
@@ -72,15 +72,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Install libwebsockets dependencies
diff --git a/.github/workflows/net-snmp.yml b/.github/workflows/net-snmp.yml
index b9c84436..ab616b44 100644
--- a/.github/workflows/net-snmp.yml
+++ b/.github/workflows/net-snmp.yml
@@ -72,15 +72,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/nginx.yml b/.github/workflows/nginx.yml
index d8437b62..c519cd6e 100644
--- a/.github/workflows/nginx.yml
+++ b/.github/workflows/nginx.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/openldap.yml b/.github/workflows/openldap.yml
index fb83e3ff..b26d09ad 100644
--- a/.github/workflows/openldap.yml
+++ b/.github/workflows/openldap.yml
@@ -72,15 +72,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/opensc.yml b/.github/workflows/opensc.yml
index 10fc6be8..d9f972fa 100644
--- a/.github/workflows/opensc.yml
+++ b/.github/workflows/opensc.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/openssh.yml b/.github/workflows/openssh.yml
index 1aad0ea4..227ed679 100644
--- a/.github/workflows/openssh.yml
+++ b/.github/workflows/openssh.yml
@@ -81,15 +81,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/openvpn.yml b/.github/workflows/openvpn.yml
index fe8b143e..ce6f3286 100644
--- a/.github/workflows/openvpn.yml
+++ b/.github/workflows/openvpn.yml
@@ -74,15 +74,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/pam-pkcs11.yml b/.github/workflows/pam-pkcs11.yml
index 999fa2ce..5b5ee64c 100644
--- a/.github/workflows/pam-pkcs11.yml
+++ b/.github/workflows/pam-pkcs11.yml
@@ -81,15 +81,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/ppp.yml b/.github/workflows/ppp.yml
index 4eb31233..c4436f2a 100644
--- a/.github/workflows/ppp.yml
+++ b/.github/workflows/ppp.yml
@@ -73,15 +73,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Install dependencies
diff --git a/.github/workflows/python3-ntp.yml b/.github/workflows/python3-ntp.yml
index d34eb283..92c84d0f 100644
--- a/.github/workflows/python3-ntp.yml
+++ b/.github/workflows/python3-ntp.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/qt5network5.yml b/.github/workflows/qt5network5.yml
index e042d2f8..2e04d4d2 100644
--- a/.github/workflows/qt5network5.yml
+++ b/.github/workflows/qt5network5.yml
@@ -67,15 +67,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/rsync.yml b/.github/workflows/rsync.yml
index 4cd26f4b..7a5ef352 100644
--- a/.github/workflows/rsync.yml
+++ b/.github/workflows/rsync.yml
@@ -67,15 +67,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/socat.yml b/.github/workflows/socat.yml
index 7a4c34ff..12372220 100644
--- a/.github/workflows/socat.yml
+++ b/.github/workflows/socat.yml
@@ -69,15 +69,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/sscep.yml b/.github/workflows/sscep.yml
index b9523028..9bb954e2 100644
--- a/.github/workflows/sscep.yml
+++ b/.github/workflows/sscep.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/stunnel.yml b/.github/workflows/stunnel.yml
index 38d77482..9fb2a3b1 100644
--- a/.github/workflows/stunnel.yml
+++ b/.github/workflows/stunnel.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/systemd.yml b/.github/workflows/systemd.yml
index 542b6d06..a359484b 100644
--- a/.github/workflows/systemd.yml
+++ b/.github/workflows/systemd.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/tcpdump.yml b/.github/workflows/tcpdump.yml
index a4e90d3a..8bc455af 100644
--- a/.github/workflows/tcpdump.yml
+++ b/.github/workflows/tcpdump.yml
@@ -67,15 +67,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/tnftp.yml b/.github/workflows/tnftp.yml
index 6590d9f5..461753e3 100644
--- a/.github/workflows/tnftp.yml
+++ b/.github/workflows/tnftp.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/tpm2-tools.yml b/.github/workflows/tpm2-tools.yml
index d713052f..aef95e1e 100644
--- a/.github/workflows/tpm2-tools.yml
+++ b/.github/workflows/tpm2-tools.yml
@@ -72,15 +72,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/x11vnc.yml b/.github/workflows/x11vnc.yml
index 0e15759d..8d0098fc 100644
--- a/.github/workflows/x11vnc.yml
+++ b/.github/workflows/x11vnc.yml
@@ -71,15 +71,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/.github/workflows/xmlsec.yml b/.github/workflows/xmlsec.yml
index 39cd5d50..18741b36 100644
--- a/.github/workflows/xmlsec.yml
+++ b/.github/workflows/xmlsec.yml
@@ -72,15 +72,15 @@ jobs:
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
- apt install --reinstall -y \
+ apt install --reinstall -y --allow-downgrades --allow-change-held-packages \
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
- name: Verify wolfProvider is properly installed
diff --git a/scripts/debian-changelog-update.sh b/debian/changelog-update.sh
similarity index 100%
rename from scripts/debian-changelog-update.sh
rename to debian/changelog-update.sh
diff --git a/debian/control b/debian/control
index a923f182..83262682 100644
--- a/debian/control
+++ b/debian/control
@@ -38,33 +38,3 @@ XB-Variant: ${variant}
Description: Development files for wolfProvider β ${variant:desc}
This package contains the headers and development files
for applications using wolfProvider.
-
-Package: openssl
-Architecture: any
-Section: utils
-Multi-Arch: foreign
-Depends: ${shlibs:Depends}, ${misc:Depends}
-Description: Secure Sockets Layer toolkit - command line interface (wolfProvider build)
- This package contains the OpenSSL command line utility.
-
-Package: libssl3
-Architecture: any
-Multi-Arch: same
-Depends: libssl3 (= ${binary:Version}), ${misc:Depends}
-Breaks: libssl3 (<< 3.0.0)
-Replaces: libssl3
-Recommends: openssl
-Description: OpenSSL shared libraries (wolfProvider build)
- This package contains the OpenSSL shared libraries built
- for use with wolfProvider.
-
-Package: libssl-dev
-Architecture: any
-Section: libdevel
-Multi-Arch: same
-Depends: libssl3 (= ${binary:Version}), ${misc:Depends}
-Breaks: libssl-dev (<< 3.0.0)
-Replaces: libssl-dev
-Description: OpenSSL development files (wolfProvider build)
- This package contains headers, pkg-config files and linker symlinks
- for the OpenSSL version built for wolfProvider.
diff --git a/debian/install-openssl.sh b/debian/install-openssl.sh
new file mode 100755
index 00000000..fcaa3830
--- /dev/null
+++ b/debian/install-openssl.sh
@@ -0,0 +1,201 @@
+#!/bin/bash
+#
+# Copyright (C) 2006-2025 wolfSSL Inc.
+#
+# This file is part of wolfProvider.
+#
+# wolfProvider is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# wolfProvider is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with wolfProvider. If not, see .
+
+# Script to install openSSL packages for Debian
+# Clones from Debian repository and builds from source
+
+set -e
+
+REPO_ROOT=${GITHUB_WORKSPACE:-$(git rev-parse --show-toplevel)}
+
+openssl_clone() {
+ local debian_version=${1:-bookworm}
+
+ printf "\tDownloading OpenSSL from Debian for $debian_version\n"
+ # Check if "deb-src" is in the sources.list, which allows us to
+ # grab the source from Debian.
+ if [ -f /etc/apt/sources.list ] && grep -q "deb-src" /etc/apt/sources.list; then
+ printf "\tDebian sources.list already contains deb-src\n"
+ else
+ printf "\tAdding deb-src to sources.list\n"
+ echo "deb-src http://deb.debian.org/debian ${debian_version} main" >> /etc/apt/sources.list
+ echo "deb-src http://deb.debian.org/debian-security ${debian_version}-security main" >> /etc/apt/sources.list
+ echo "deb-src http://deb.debian.org/debian ${debian_version}-updates main" >> /etc/apt/sources.list
+ fi
+
+ apt update
+ apt-get source -t ${debian_version} openssl
+
+ openssl_dir=$(ls -td openssl-* | head -n 1)
+ printf "OpenSSL source directory: $openssl_dir\n"
+ cd $openssl_dir
+}
+
+openssl_patch_version() {
+ local replace_default=${1:-0}
+ printf "\tPatching OpenSSL version"
+ # Patch the OpenSSL version with our BUILD_METADATA
+ if [ "$replace_default" = "1" ]; then
+ sed -i 's/BUILD_METADATA=.*/BUILD_METADATA=wolfProvider-replace-default/g' VERSION.dat
+ else
+ sed -i 's/BUILD_METADATA=.*/BUILD_METADATA=wolfProvider/g' VERSION.dat
+ fi
+ # Patch the OpenSSL RELEASE_DATE field with the current date in the format DD MMM YYYY
+ sed -i "s/RELEASE_DATE=.*/RELEASE_DATE=$(date '+%d %b %Y')/g" VERSION.dat
+}
+
+openssl_is_patched() {
+ # Return 0 if patched, 1 if not
+ local file="crypto/provider_predefined.c"
+
+ # File must exist to be patched
+ [[ -f "$file" ]] || return 1
+
+ # Any time we see libwolfprov, we're patched
+ if grep -q 'libwolfprov' -- "$file"; then
+ return 0
+ fi
+
+ # Not patched
+ return 1
+}
+
+openssl_patch() {
+ local replace_default=${1:-0}
+
+ if openssl_is_patched; then
+ printf "\tOpenSSL already patched\n"
+ elif [ "$replace_default" = "1" ]; then
+ printf "\tApplying OpenSSL default provider patch ... "
+
+ # Apply the patch
+ patch -p1 < ${REPO_ROOT}/patches/openssl3-replace-default.patch
+ if [ $? != 0 ]; then
+ printf "ERROR.\n"
+ printf "\n\nPatch application failed.\n"
+ exit 1
+ fi
+ fi
+ # Patch the OpenSSL version with our metadata
+ openssl_patch_version $replace_default
+
+ DEBFULLNAME="${DEBFULLNAME:-WolfSSL Developer}" DEBEMAIL="${DEBEMAIL:-support@wolfssl.com}" dch -l +wolfprov "Adjust VERSION.dat for custom build"
+ DEBIAN_FRONTEND=noninteractive EDITOR=true dpkg-source --commit . adjust-version-dat
+}
+
+openssl_build() {
+ DEB_BUILD_OPTIONS="parallel=$(nproc) nocheck" dpkg-buildpackage -us -uc
+}
+
+openssl_install() {
+ # Install all packages in the parent directory
+ for file in ../*.deb; do
+ if [ -f "$file" ]; then
+ packages+=("$file")
+ fi
+ done
+
+ if [ ${#packages[@]} -eq 0 ]; then
+ echo "No packages found in parent directory"
+ exit 1
+ fi
+
+ printf "Installing packages:\n"
+ printf "\t%s\n" "${packages[@]}"
+ dpkg -i --force-overwrite ${packages[@]}
+}
+
+main() {
+ local replace_default=0
+ local no_install=0
+ local work_dir=
+ local output_dir=
+
+ # Parse command line arguments
+ while [[ $# -gt 0 ]]; do
+ case "$1" in
+ --replace-default)
+ replace_default=1
+ shift
+ ;;
+ --no-install)
+ no_install=1
+ shift
+ ;;
+ -h|--help)
+ echo "Usage: $0 [options]"
+ echo " --replace-default Apply patch to replace default provider"
+ echo " --no-install Build only, do not install packages"
+ echo " -h, --help Show this help message"
+ echo "Arguments:"
+ echo " output-directory Directory to to store built packages (default: mktemp -d)"
+ exit 0
+ ;;
+ --)
+ shift
+ break
+ ;;
+ *)
+ if [ -z "$output_dir" ]; then
+ output_dir=$1
+ else
+ echo "Too many arguments" >&2
+ echo "Use --help for usage information" >&2
+ exit 1
+ fi
+ shift
+ ;;
+ esac
+ done
+
+ if [ $replace_default -eq 0 ] && [ $no_install -eq 0 ]; then
+ printf "Using standard OpenSSL build\n"
+ apt install -y --reinstall --allow-downgrades --allow-change-held-packages \
+ openssl libssl3 libssl-dev
+ exit 0
+ fi
+
+ work_dir=$(mktemp -d)
+ printf "Working directory: $work_dir\n"
+ pushd $work_dir 2>&1 > /dev/null
+
+ openssl_clone
+ openssl_patch $replace_default
+ openssl_build
+
+ if [ $no_install -eq 0 ]; then
+ openssl_install
+ fi
+
+ if [ -n "$output_dir" ]; then
+ if [ ! -d "$output_dir" ]; then
+ printf "Creating output directory: $output_dir\n"
+ mkdir -p "$output_dir"
+ fi
+ cp ../openssl*.deb $output_dir
+ cp ../libssl*.deb $output_dir
+ else
+ printf "No output directory specified, packages stored in $work_dir\n"
+ fi
+
+ printf "Done.\n"
+}
+
+# Run main function with all arguments
+main "$@"
diff --git a/debian/install-wolfprov.sh b/debian/install-wolfprov.sh
new file mode 100755
index 00000000..99eef274
--- /dev/null
+++ b/debian/install-wolfprov.sh
@@ -0,0 +1,217 @@
+#!/bin/bash
+#
+# Copyright (C) 2006-2025 wolfSSL Inc.
+#
+# This file is part of wolfProvider.
+#
+# wolfProvider is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# wolfProvider is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with wolfProvider. If not, see .
+set -euo pipefail
+
+PKG_NAME="libwolfprov"
+REPO_ROOT=${GITHUB_WORKSPACE:-$(git rev-parse --show-toplevel)}
+
+wolfprov_build() {
+ local WOLFSSL_ISFIPS=${1:-0}
+ local WOLFPROV_DEBUG=${2:-0}
+
+ printf "Running wolfprov_build with WOLFSSL_ISFIPS=$WOLFSSL_ISFIPS and WOLFPROV_DEBUG=$WOLFPROV_DEBUG\n"
+
+ export WOLFSSL_ISFIPS
+ export WOLFPROV_DEBUG
+
+ # Step 1: Determine the repo root
+ REPO_ROOT=${GITHUB_WORKSPACE:-$(git rev-parse --show-toplevel)}
+ cd "$REPO_ROOT"
+
+ # Step 2: Determine version from debian/changelog (no tag checks)
+ if [[ ! -f debian/changelog ]]; then
+ echo "β Error: debian/changelog not found."
+ echo "π Run scripts/debian-changelog-update.sh to create/update the changelog first."
+ exit 1
+ fi
+
+ VERSION=$(dpkg-parsechangelog --show-field Version)
+ UPSTREAM_VERSION="${VERSION%%-*}"
+ current_commit=$(git rev-parse HEAD)
+ echo "π Using version from changelog: $VERSION (upstream: $UPSTREAM_VERSION)"
+
+ TARBALL="${PKG_NAME}_${UPSTREAM_VERSION}.orig.tar.gz"
+ TARBALL_PREFIX="${PKG_NAME}-${UPSTREAM_VERSION}"
+
+ # Step 5: Warn if not on master
+ current_branch=$(git rev-parse --abbrev-ref HEAD)
+ if [[ "$current_branch" != "master" ]]; then
+ echo "β οΈ Warning: On branch '$current_branch', not 'master'"
+ fi
+
+ # Step 6: Check for uncommitted changes
+ if ! git diff --quiet || ! git diff --cached --quiet; then
+ echo "β οΈ Error: Uncommitted changes in working tree:"
+ git status --short
+ exit 1
+ fi
+
+ # Step 7: Clean untracked files
+ echo "π§Ή Cleaning untracked files..."
+ $REPO_ROOT/scripts/build-wolfprovider.sh --distclean
+ git clean -fdx
+
+ # Step 8: Changelog updates handled by scripts/debian-changelog-update.sh
+
+ # Step 9: Create tarball
+ if [[ -f "../$TARBALL" ]]; then
+ echo "ποΈ Removing existing tarball: $TARBALL"
+ rm -f "../$TARBALL"
+ fi
+ echo "π¦ Creating tarball $TARBALL from commit $current_commit..."
+ git archive --format=tar.gz --prefix="${TARBALL_PREFIX}/" \
+ -o "../$TARBALL" "$current_commit"
+
+ # Step 9.1: Set up ccache if installed
+ # Optional ccache
+ if command -v ccache >/dev/null 2>&1; then
+ export CC="ccache gcc"
+ export CXX="ccache g++"
+ else
+ export CC="gcc"
+ export CXX="g++"
+ fi
+
+ # Optional tuning (safe if unset)
+ : "${CCACHE_DIR:=}"
+ : "${CCACHE_BASEDIR:=}"
+ : "${CCACHE_NOHASHDIR:=}"
+ : "${CCACHE_SLOPPINESS:=}"
+ CCACHE_COMPILERCHECK=${CCACHE_COMPILERCHECK:-content}
+
+ # Step 10: Build package with optional ccache (if installed)
+ echo "βοΈ Building package..."
+ WOLFSSL_ISFIPS=${WOLFSSL_ISFIPS:-0}
+ dpkg-buildpackage -us -uc \
+ -eWOLFSSL_ISFIPS \
+ -eCC -eCXX \
+ -eCCACHE_DIR -eCCACHE_BASEDIR -eCCACHE_NOHASHDIR -eCCACHE_COMPILERCHECK
+
+ echo "β
Build completed for version $VERSION"
+}
+
+wolfprov_install() {
+ # Install all packages in the parent directory
+ for file in ../*.deb; do
+ if [ -f "$file" ]; then
+ packages+=("$file")
+ fi
+ done
+
+ if [ ${#packages[@]} -eq 0 ]; then
+ echo "No packages found in parent directory"
+ exit 1
+ fi
+
+ printf "Installing packages:\n"
+ printf "\t%s\n" "${packages[@]}"
+ dpkg -i --force-overwrite ${packages[@]}
+}
+
+# Main execution
+main() {
+ local debug_mode=0
+ local fips_mode=0
+ local no_install=0
+ local output_dir=
+
+ # Parse command line arguments
+ while [[ $# -gt 0 ]]; do
+ case $1 in
+ -h|--help)
+ echo "Usage: $0 [options] [working-directory]"
+ echo " Installs wolfSSL from git repository by cloning, configuring, and building .deb packages"
+ echo ""
+ echo "Options:"
+ echo " -t, --tag TAG Clone and build specific tag or branch (default: master)"
+ echo " -d, --debug Enable debug build mode (adds --enable-debug)"
+ echo " -f, --fips Enable FIPS build mode (adds --enable-fips)"
+ echo " -n, --no-install Build only, do not install packages"
+ echo " -h, --help Show this help message"
+ echo ""
+ echo "Arguments:"
+ echo " output-directory Directory to use for build (default: temporary directory)"
+ exit 0
+ ;;
+ -d|--debug)
+ debug_mode=1
+ shift
+ ;;
+ -f|--fips)
+ fips_mode=1
+ shift
+ ;;
+ -n|--no-install)
+ no_install=1
+ shift
+ ;;
+ *)
+ if [ -z "$output_dir" ]; then
+ output_dir="$1"
+ else
+ echo "Too many arguments" >&2
+ echo "Use --help for usage information" >&2
+ exit 1
+ fi
+ shift
+ ;;
+ esac
+ done
+
+ # Check for any existing packages in the parent directory.
+ # These would conflict with the install.
+ existing_packages=()
+ for file in $output_dir/libwolfprov*.deb; do
+ if [ -f "$file" ]; then
+ existing_packages+=("$file")
+ fi
+ done
+ if [ ${#existing_packages[@]} -gt 0 ]; then
+ echo "Error: libwolfprov*.deb already exists in output directory, please remove them first"
+ echo "Existing packages: ${existing_packages[@]}"
+ exit 1
+ fi
+
+ work_dir=$(mktemp -d)
+ printf "Working directory: $work_dir\n"
+ pushd $work_dir 2>&1 > /dev/null
+ cp -r $REPO_ROOT .
+ cd $(basename $REPO_ROOT)
+
+ wolfprov_build $fips_mode $debug_mode
+ if [ $no_install -eq 0 ]; then
+ wolfprov_install
+ fi
+
+ if [ -n "$output_dir" ]; then
+ if [ ! -d "$output_dir" ]; then
+ printf "Creating output directory: $output_dir\n"
+ mkdir -p "$output_dir"
+ fi
+ cp ../*.* $output_dir
+ else
+ printf "No output directory specified, packages stored in $work_dir\n"
+ fi
+
+ printf "Done.\n"
+}
+
+# Run main function with all arguments
+main "$@"
+
diff --git a/debian/install-wolfssl.sh b/debian/install-wolfssl.sh
index 16e39d4e..5c45bfde 100755
--- a/debian/install-wolfssl.sh
+++ b/debian/install-wolfssl.sh
@@ -1,4 +1,21 @@
#!/bin/bash
+#
+# Copyright (C) 2006-2025 wolfSSL Inc.
+#
+# This file is part of wolfProvider.
+#
+# wolfProvider is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# wolfProvider is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with wolfProvider. If not, see .
# Script to install wolfSSL packages for Debian
# Clones from git repository and builds from source
@@ -22,6 +39,7 @@ install_wolfssl_from_git() {
local git_tag="$2"
local debug_mode="$3"
local reinstall_mode="$4"
+ local no_install="$5"
local main_branch="master"
# If no working directory specified, create one using mktemp
@@ -181,13 +199,15 @@ AC_CONFIG_FILES([debian/rules],[chmod +x debian/rules])' configure.ac
echo "Building Debian packages..."
make deb
- # Install the generated packages
- echo "Installing generated .deb packages..."
- if [ "$reinstall_mode" = "true" ]; then
- echo "Reinstall mode: forcing package reinstallation..."
- dpkg -i --force-overwrite --force-confnew ../*.deb
- else
- dpkg -i ../*.deb
+ if [ "$no_install" = "false" ]; then
+ # Install the generated packages
+ echo "Installing generated .deb packages..."
+ if [ "$reinstall_mode" = "true" ]; then
+ echo "Reinstall mode: forcing package reinstallation..."
+ dpkg -i --force-overwrite --force-confnew ../*.deb
+ else
+ dpkg -i ../*.deb
+ fi
fi
echo "WolfSSL installation from git completed successfully"
@@ -199,6 +219,7 @@ main() {
local git_tag=""
local debug_mode="false"
local reinstall_mode="false"
+ local no_install="false"
# Parse command line arguments
while [[ $# -gt 0 ]]; do
@@ -211,7 +232,8 @@ main() {
echo " -t, --tag TAG Clone and build specific tag or branch (default: master)"
echo " -d, --debug Enable debug build mode (adds --enable-debug)"
echo " -r, --reinstall Force reinstall even if packages are already installed"
- echo " -h, --help Show this help message"
+ echo " -n, --no-install Build only, do not install packages"
+ echo " -h, --help Show this help message"
echo ""
echo "Arguments:"
echo " working-directory Directory to use for build (default: temporary directory)"
@@ -238,6 +260,10 @@ main() {
reinstall_mode="true"
shift
;;
+ -n|--no-install)
+ no_install="true"
+ shift
+ ;;
-*)
echo "Unknown option: $1" >&2
echo "Use --help for usage information" >&2
@@ -274,7 +300,7 @@ main() {
echo "Building wolfSSL master branch"
fi
- install_wolfssl_from_git "$work_dir" "$git_tag" "$debug_mode" "$reinstall_mode"
+ install_wolfssl_from_git "$work_dir" "$git_tag" "$debug_mode" "$reinstall_mode" "$no_install"
echo "WolfSSL installation completed successfully"
}
diff --git a/debian/libwolfprov.postinst b/debian/libwolfprov.postinst
index c9218fd4..0f2f2fa2 100755
--- a/debian/libwolfprov.postinst
+++ b/debian/libwolfprov.postinst
@@ -11,7 +11,7 @@ CONF_FILES=$(find /usr /lib /etc -name openssl.cnf 2>/dev/null)
REPLACE_DEFAULT=0
if command -v openssl >/dev/null 2>&1; then
OPENSSL_VERSION=$(openssl version)
- if echo "$OPENSSL_VERSION" | grep -q "wolfProvider"; then
+ if echo "$OPENSSL_VERSION" | grep -q "replace-default"; then
REPLACE_DEFAULT=1
fi
fi
diff --git a/debian/rules b/debian/rules
index 2f22f071..a5ab2d25 100755
--- a/debian/rules
+++ b/debian/rules
@@ -6,14 +6,11 @@
# Multiarch triplet
DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
# Destination directory for installation
-DESTDIR=debian/tmp
+DESTDIR=$(CURDIR)/debian/tmp
# Grab the base version from debian/changelog
BASEVER := $(shell dpkg-parsechangelog -SVersion)
-# Get OpenSSL version from the build (this will be set after build)
-OPENSSL_VERSION ?= 3.5.0
-
# Check if FIPS build is requested
WOLFSSL_ISFIPS?=0
# Variant-specific metadata
@@ -42,107 +39,47 @@ ifeq ($(WOLFPROV_DEBUG),1)
endif
override_dh_auto_configure:
- # None, handled below
+ ./autogen.sh
+ifneq ($(WOLFPROV_DEBUG),0)
+ ./configure --enable-debug
+else
+ ./configure
+endif
override_dh_auto_build:
- # Always build OpenSSL with wolfProvider as the default provider even
- # if we choose not to use it.
- WOLFPROV_BUILD_DEBIAN=1 WOLFPROV_DEBUG=$(WOLFPROV_DEBUG) ./scripts/build-wolfprovider.sh --replace-default $(FIPS_FLAG)
+ $(MAKE)
override_dh_auto_install:
- # Detect OpenSSL library directory (lib or lib64)
- $(eval OPENSSL_LIB_DIR := $(shell if test -d ./openssl-install/lib; then echo lib; elif test -d ./openssl-install/lib64; then echo lib64; else echo "ERROR: Neither ./openssl-install/lib nor ./openssl-install/lib64 found"; exit 1; fi))
-
- # Install OpenSSL binary for openssl package
- install -d $(DESTDIR)/usr/bin
- install -m755 ./openssl-install/bin/openssl \
- $(DESTDIR)/usr/bin/
-
- # Install OpenSSL shared libraries for libssl3 package
- install -d $(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)
- install -m755 ./openssl-install/$(OPENSSL_LIB_DIR)/libssl.so.3 \
- ./openssl-install/$(OPENSSL_LIB_DIR)/libcrypto.so.3 \
- $(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/
-
- # Install OpenSSL headers and dev files for libssl-dev package
- # Copy directly to the destination directory
- install -d $(DESTDIR)/usr/include/openssl
- cp -a $(CURDIR)/openssl-install/include/openssl/. $(DESTDIR)/usr/include/openssl
-
- # Install wolfProvider library
install -d $(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/ossl-modules
install -m755 ./.libs/libwolfprov.so.0.0.0 \
$(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/ossl-modules/
- # Install wolfProvider headers
install -d $(DESTDIR)/usr/include/wolfprovider
install -m644 ./include/wolfprovider/*.h \
$(DESTDIR)/usr/include/wolfprovider/
+ # $(MAKE) DESTDIR=$(DESTDIR) install
+
# Install provider config file
install -d $(DESTDIR)/etc/ssl/openssl.cnf.d
install -m644 ./$(PROVIDER_CONF) \
$(DESTDIR)/etc/ssl/openssl.cnf.d/wolfprovider.conf
- # Install openssl.cnf directly into /etc/ssl
- install -d $(DESTDIR)/etc/ssl
- install -m 0644 ./openssl-source/apps/openssl.cnf \
- $(DESTDIR)/etc/ssl/openssl.cnf
-
- # Install pkg-config files for libssl-dev
- install -d $(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig
- install -m644 ./openssl-install/$(OPENSSL_LIB_DIR)/pkgconfig/*.pc \
- $(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/
- # Normalize .pc to system paths
- sed -i -e 's|^prefix=.*|prefix=/usr|' \
- -e 's|^exec_prefix=.*|exec_prefix=${prefix}|' \
- -e 's|^libdir=.*|libdir=/usr/lib/$(DEB_HOST_MULTIARCH)|' \
- -e 's|^includedir=.*|includedir=/usr/include|' \
- -e 's|^enginesdir=.*|enginesdir=/usr/lib/$(DEB_HOST_MULTIARCH)/engines-3|' \
- -e 's|^modulesdir=.*|modulesdir=/usr/lib/$(DEB_HOST_MULTIARCH)/ossl-modules|' \
- $(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/*.pc
-
override_dh_makeshlibs:
- # Create shlibs only for real SONAMEβd libs; skip provider modules under ossl-modules/
- dh_makeshlibs -V -p libssl3
- # do NOT run on libwolfprov (plugin-only, no SONAME)
+ # libwolfprov is a provider module (no SONAME); skip shlibs
+ :
override_dh_gencontrol:
- # Generate control for wolfProvider packages
+ # Only set variables for wolfProvider packages
dh_gencontrol -- \
-v$(VERSION) \
-Vvariant=$(VARIANT) \
-Vvariant:desc="$(VARIANT_DESC)" \
-Vvariant:provides="$(VARIANT_PROVIDES)"
- # Detect OpenSSL library directory (lib or lib64)
- $(eval OPENSSL_LIB_DIR := $(shell if test -d ./openssl-install/lib; then echo lib; elif test -d ./openssl-install/lib64; then echo lib64; else echo "ERROR: Neither ./openssl-install/lib nor ./openssl-install/lib64 found"; exit 1; fi))
-
- # Extract OpenSSL version from the current build
- $(eval OPENSSL_VERSION := $(shell LD_LIBRARY_PATH=./openssl-install/$(OPENSSL_LIB_DIR):./wolfprovider-install/lib ./openssl-install/bin/openssl version | cut -d' ' -f2))
-
- # Generate control for OpenSSL packages with OpenSSL version
- dh_gencontrol -popenssl -- \
- -v$(OPENSSL_VERSION)-1 \
- -Vopenssl:Version=$(OPENSSL_VERSION)
- dh_gencontrol -plibssl3 -- \
- -v$(OPENSSL_VERSION)-1 \
- -Vopenssl:Version=$(OPENSSL_VERSION)
- dh_gencontrol -plibssl-dev -- \
- -v$(OPENSSL_VERSION)-1 \
- -Vopenssl:Version=$(OPENSSL_VERSION)
-
override_dh_auto_clean:
dh_auto_clean
rm -rf test/standalone/tests/.libs
- ./scripts/build-wolfprovider.sh --clean --distclean
override_dh_auto_test:
- @echo "Skipping dh_auto_test (tests already run during build phase)"
-
-override_dh_install:
- dh_install
-
-# Fail the build if anything in debian/tmp (or elsewhere) wasnβt picked up
-override_dh_missing:
- dh_missing --fail-missing
+ $(MAKE) test
diff --git a/scripts/build-debian.sh b/scripts/build-debian.sh
deleted file mode 100755
index 72b93051..00000000
--- a/scripts/build-debian.sh
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/bash
-#
-# Copyright (C) 2006-2024 wolfSSL Inc.
-#
-# This file is part of wolfProvider.
-#
-# wolfProvider is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# wolfProvider is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with wolfProvider. If not, see .
-set -euo pipefail
-
-PKG_NAME="libwolfprov"
-
-WOLFSSL_ISFIPS=${WOLFSSL_ISFIPS:-0}
-WOLFPROV_DEBUG=${WOLFPROV_DEBUG:-0}
-
-printf "Running build-debian.sh with WOLFSSL_ISFIPS=$WOLFSSL_ISFIPS and WOLFPROV_DEBUG=$WOLFPROV_DEBUG\n"
-
-# Step 1: Determine the repo root
-REPO_ROOT=${GITHUB_WORKSPACE:-$(git rev-parse --show-toplevel)}
-cd "$REPO_ROOT"
-
-# Step 2: Determine version from debian/changelog (no tag checks)
-if [[ ! -f debian/changelog ]]; then
- echo "β Error: debian/changelog not found."
- echo "π Run scripts/debian-changelog-update.sh to create/update the changelog first."
- exit 1
-fi
-
-VERSION=$(dpkg-parsechangelog --show-field Version)
-UPSTREAM_VERSION="${VERSION%%-*}"
-current_commit=$(git rev-parse HEAD)
-echo "π Using version from changelog: $VERSION (upstream: $UPSTREAM_VERSION)"
-
-TARBALL="${PKG_NAME}_${UPSTREAM_VERSION}.orig.tar.gz"
-TARBALL_PREFIX="${PKG_NAME}-${UPSTREAM_VERSION}"
-
-# Step 5: Warn if not on master
-current_branch=$(git rev-parse --abbrev-ref HEAD)
-if [[ "$current_branch" != "master" ]]; then
- echo "β οΈ Warning: On branch '$current_branch', not 'master'"
-fi
-
-# Step 6: Check for uncommitted changes
-if ! git diff --quiet || ! git diff --cached --quiet; then
- echo "β οΈ Error: Uncommitted changes in working tree:"
- git status --short
- exit 1
-fi
-
-# Step 7: Clean untracked files
-echo "π§Ή Cleaning untracked files..."
-git clean -fdx
-
-# Step 8: Changelog updates handled by scripts/debian-changelog-update.sh
-
-# Step 9: Create tarball
-if [[ -f "../$TARBALL" ]]; then
- echo "ποΈ Removing existing tarball: $TARBALL"
- rm -f "../$TARBALL"
-fi
-echo "π¦ Creating tarball $TARBALL from commit $current_commit..."
-git archive --format=tar.gz --prefix="${TARBALL_PREFIX}/" \
- -o "../$TARBALL" "$current_commit"
-
-# Step 9.1: Set up ccache if installed
-# Optional ccache
-if command -v ccache >/dev/null 2>&1; then
- export CC="ccache gcc"
- export CXX="ccache g++"
-else
- export CC="gcc"
- export CXX="g++"
-fi
-
-# Optional tuning (safe if unset)
-: "${CCACHE_DIR:=}"
-: "${CCACHE_BASEDIR:=}"
-: "${CCACHE_NOHASHDIR:=}"
-: "${CCACHE_SLOPPINESS:=}"
-CCACHE_COMPILERCHECK=${CCACHE_COMPILERCHECK:-content}
-
-# Step 10: Build package with optional ccache (if installed)
-echo "βοΈ Building package..."
-WOLFSSL_ISFIPS=${WOLFSSL_ISFIPS:-0}
-dpkg-buildpackage -us -uc \
- -eWOLFSSL_ISFIPS \
- -eCC -eCXX \
- -eCCACHE_DIR -eCCACHE_BASEDIR -eCCACHE_NOHASHDIR -eCCACHE_COMPILERCHECK
-
-echo "β
Build completed for version $VERSION"
diff --git a/scripts/build-wolfprovider.sh b/scripts/build-wolfprovider.sh
index 4000371d..1f1c8f3c 100755
--- a/scripts/build-wolfprovider.sh
+++ b/scripts/build-wolfprovider.sh
@@ -146,9 +146,29 @@ if [ -n "$WOLFPROV_LOG_FILE" ] && [ -z "$WOLFPROV_DEBUG" ]; then
fi
if [ -n "$build_debian" ]; then
+ set -e
+
echo "Building Debian package..."
- WOLFSSL_ISFIPS=${WOLFSSL_ISFIPS:-0} WOLFPROV_DEBUG=${WOLFPROV_DEBUG:-0} ./scripts/build-debian.sh
- exit $?
+ WOLFSSL_OPTS=
+ WOLFPROV_OPTS=
+ OPENSSL_OPTS=
+
+ if [ "$WOLFPROV_DEBUG" = "1" ]; then
+ WOLFSSL_OPTS="--debug"
+ WOLFPROV_OPTS="--debug"
+ fi
+ if [ -n "$WOLFSSL_ISFIPS" ]; then
+ WOLFSSL_OPTS+=" --fips"
+ WOLFPROV_OPTS+=" --fips"
+ fi
+
+ # Must install wolfSSL locally since it is needed to build wolfProvider
+ debian/install-wolfssl.sh $WOLFSSL_OPTS -r ..
+ # Always build replace-default mode for openssl. Use the standard one from apt.
+ debian/install-openssl.sh $OPENSSL_OPTS --replace-default ..
+ debian/install-wolfprov.sh $WOLFPROV_OPTS --no-install
+
+ exit 0
fi
if [ -n "$args" ]; then
diff --git a/scripts/utils-openssl.sh b/scripts/utils-openssl.sh
index 4aea1637..918df3f9 100755
--- a/scripts/utils-openssl.sh
+++ b/scripts/utils-openssl.sh
@@ -65,38 +65,15 @@ clone_openssl() {
if [ ! -d ${OPENSSL_SOURCE_DIR} ]; then
printf "\tOpenSSL source directory not found: ${OPENSSL_SOURCE_DIR}\n"
- # If building for Debian, build from Debian baseline
- if [ $WOLFPROV_BUILD_DEBIAN -eq 1 ]; then
- printf "\tDownloading OpenSSL from Debian ... \n"
- # Check if "deb-src" is in the sources.list, which allows us to
- # grab the source from Debian.
- if [ -f /etc/apt/sources.list ] && grep -q "deb-src" /etc/apt/sources.list; then
- printf "\tDebian sources.list already contains deb-src\n"
- else
- printf "\tAdding deb-src to sources.list\n"
- echo "deb-src http://deb.debian.org/debian bookworm main" >> /etc/apt/sources.list
- echo "deb-src http://deb.debian.org/debian-security bookworm-security main" >> /etc/apt/sources.list
- echo "deb-src http://deb.debian.org/debian bookworm-updates main" >> /etc/apt/sources.list
- fi
-
- pushd $(mktemp -d) 2>&1 > /dev/null
- apt update >>$LOG_FILE 2>&1
- apt-get source -t bookworm openssl >>$LOG_FILE 2>&1
- RET=$?
- # Move the source to the correct directory
- mv openssl-* ${OPENSSL_SOURCE_DIR}
- popd 2>&1 > /dev/null
- else
- CLONE_TAG=${USE_CUR_TAG:+${OPENSSL_TAG_CUR}}
- CLONE_TAG=${CLONE_TAG:-${OPENSSL_TAG}}
-
- DEPTH_ARG=${WOLFPROV_DEBUG:+""}
- DEPTH_ARG=${DEPTH_ARG:---depth=1}
-
- printf "\tClone OpenSSL ${CLONE_TAG} from ${OPENSSL_GIT_URL} ... "
- git clone ${DEPTH_ARG} -b ${CLONE_TAG} ${OPENSSL_GIT_URL} ${OPENSSL_SOURCE_DIR} >>$LOG_FILE 2>&1
- RET=$?
- fi
+ CLONE_TAG=${USE_CUR_TAG:+${OPENSSL_TAG_CUR}}
+ CLONE_TAG=${CLONE_TAG:-${OPENSSL_TAG}}
+
+ DEPTH_ARG=${WOLFPROV_DEBUG:+""}
+ DEPTH_ARG=${DEPTH_ARG:---depth=1}
+
+ printf "\tClone OpenSSL ${CLONE_TAG} from ${OPENSSL_GIT_URL} ... "
+ git clone ${DEPTH_ARG} -b ${CLONE_TAG} ${OPENSSL_GIT_URL} ${OPENSSL_SOURCE_DIR} >>$LOG_FILE 2>&1
+ RET=$?
if [ $RET != 0 ]; then
printf "ERROR.\n"
@@ -137,35 +114,8 @@ is_openssl_patched() {
return 1
}
-check_openssl_replace_default_mismatch() {
- local openssl_is_patched=0
-
- # Check if the source was patched for --replace-default
- if is_openssl_patched; then
- openssl_is_patched=1
- printf "INFO: OpenSSL source modified - wolfProvider integrated as default provider (non-stock build).\n"
- fi
-
- # Check for mismatch
- if [ "$WOLFPROV_REPLACE_DEFAULT" = "1" ] && [ "$openssl_is_patched" = "0" ]; then
- printf "ERROR: --replace-default build mode mismatch!\n"
- printf "Existing OpenSSL was built WITHOUT --replace-default patch\n"
- printf "Current request: --replace-default build\n\n"
- printf "Fix: ./scripts/build-wolfprovider.sh --distclean\n"
- printf "Then rebuild with desired configuration.\n"
- exit 1
- elif [ "$WOLFPROV_REPLACE_DEFAULT" != "1" ] && [ "$openssl_is_patched" = "1" ]; then
- printf "ERROR: Standard build mode mismatch!\n"
- printf "Existing OpenSSL was built WITH --replace-default patch\n"
- printf "Current request: standard build\n\n"
- printf "Fix: ./scripts/build-wolfprovider.sh --distclean\n"
- printf "Then rebuild with desired configuration.\n"
- exit 1
- fi
-}
-
patch_openssl_version() {
- # Patch the OpenSSL version (wolfProvider/openssl-source/VERSION.dat)
+ # Patch the OpenSSL version (wolfProvider/openssl-source/VERSION.dat)
# with our BUILD_METADATA, depending on the FIPS flag. Either "wolfProvider" or "wolfProvider-fips".
if [ ${WOLFSSL_ISFIPS:-0} -eq 1 ]; then
sed -i 's/BUILD_METADATA=.*/BUILD_METADATA=wolfProvider-fips/g' ${OPENSSL_SOURCE_DIR}/VERSION.dat
@@ -220,77 +170,31 @@ patch_openssl() {
fi
}
-install_openssl_deb() {
- printf "\nInstalling OpenSSL ${OPENSSL_TAG} for Debian packaging ...\n"
- clone_openssl
- patch_openssl
- check_openssl_replace_default_mismatch
-
- pushd ${OPENSSL_SOURCE_DIR} &> /dev/null
-
- if [ -d ${OPENSSL_INSTALL_DIR} ]; then
- printf "\tOpenSSL install directory already exists: ${OPENSSL_INSTALL_DIR}\n"
- printf "\tRemoving existing install directory...\n"
- rm -rf ${OPENSSL_INSTALL_DIR}
- fi
-
- # Build configure command
- CONFIG_CMD="./config shared"
-
- # Determine the install paths for Debian Bookworm
- DEB_HOST_MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH)
- CONFIG_CMD+=" --prefix=/usr --openssldir=/usr/lib/ssl --libdir=lib/${DEB_HOST_MULTIARCH} "
-
- if [ "$WOLFPROV_DEBUG" = "1" ]; then
- CONFIG_CMD+=" enable-trace --debug"
- fi
+check_openssl_replace_default_mismatch() {
+ local openssl_is_patched=0
- if [ "$WOLFPROV_REPLACE_DEFAULT" = "1" ]; then
- CONFIG_CMD+=" no-external-tests no-tests"
+ # Check if the source was patched for --replace-default
+ if is_openssl_patched; then
+ openssl_is_patched=1
+ printf "INFO: OpenSSL source modified - wolfProvider integrated as default provider (non-stock build).\n"
fi
- printf "\tConfigure OpenSSL ${OPENSSL_TAG} ... "
- $CONFIG_CMD >>$LOG_FILE 2>&1
- RET=$?
- if [ $RET != 0 ]; then
- printf "ERROR.\n"
- rm -rf ${OPENSSL_INSTALL_DIR}
- do_cleanup
- exit 1
- fi
- printf "Done.\n"
-
- printf "\tBuild OpenSSL ${OPENSSL_TAG} ... "
- make -j$NUMCPU >>$LOG_FILE 2>&1
- if [ $? != 0 ]; then
- printf "ERROR.\n"
- rm -rf ${OPENSSL_INSTALL_DIR}
- do_cleanup
+ # Check for mismatch
+ if [ "$WOLFPROV_REPLACE_DEFAULT" = "1" ] && [ "$openssl_is_patched" = "0" ]; then
+ printf "ERROR: --replace-default build mode mismatch!\n"
+ printf "Existing OpenSSL was built WITHOUT --replace-default patch\n"
+ printf "Current request: --replace-default build\n\n"
+ printf "Fix: ./scripts/build-wolfprovider.sh --distclean\n"
+ printf "Then rebuild with desired configuration.\n"
exit 1
- fi
- printf "Done.\n"
-
- printf "\tInstalling OpenSSL ${OPENSSL_TAG} ... "
- make -j$NUMCPU install DESTDIR=${OPENSSL_INSTALL_DIR} >>$LOG_FILE 2>&1
- if [ $? != 0 ]; then
- printf "ERROR.\n"
- rm -rf ${OPENSSL_INSTALL_DIR}
- do_cleanup
+ elif [ "$WOLFPROV_REPLACE_DEFAULT" != "1" ] && [ "$openssl_is_patched" = "1" ]; then
+ printf "ERROR: Standard build mode mismatch!\n"
+ printf "Existing OpenSSL was built WITH --replace-default patch\n"
+ printf "Current request: standard build\n\n"
+ printf "Fix: ./scripts/build-wolfprovider.sh --distclean\n"
+ printf "Then rebuild with desired configuration.\n"
exit 1
fi
- printf "Done.\n"
-
- # We use a different install path for Debian, which places the outputs in $OPENSSL_INSTALL_DIR/usr/lib/${DEB_HOST_MULTIARCH}
- # rather than $OPENSSL_INSTALL_DIR. So manually copy the outputs to the correct path.
- printf "\tCopying outputs to ${OPENSSL_INSTALL_DIR} for OpenSSL ${OPENSSL_TAG} ... "
- mkdir -p $OPENSSL_INSTALL_DIR/lib
- cp -r $OPENSSL_INSTALL_DIR/usr/lib/${DEB_HOST_MULTIARCH}/* $OPENSSL_INSTALL_DIR/lib
- cp -r $OPENSSL_INSTALL_DIR/usr/bin $OPENSSL_INSTALL_DIR/bin
- cp -r $OPENSSL_INSTALL_DIR/usr/include $OPENSSL_INSTALL_DIR/include
- cp -r $OPENSSL_INSTALL_DIR/usr/lib/pkgconfig $OPENSSL_INSTALL_DIR/lib/pkgconfig
- printf "Done.\n"
-
- popd &> /dev/null
}
install_openssl() {
@@ -351,7 +255,11 @@ init_openssl() {
WOLFPROV_BUILD_DEBIAN=${WOLFPROV_BUILD_DEBIAN:-0}
if [ $WOLFPROV_BUILD_DEBIAN -eq 1 ]; then
- install_openssl_deb
+ OPENSSL_OPTS=
+ if [ "$WOLFPROV_REPLACE_DEFAULT" = "1" ]; then
+ OPENSSL_OPTS+=" --replace-default"
+ fi
+ $SCRIPT_DIR/debian/install-openssl.sh $OPENSSL_OPTS --output-dir ${REPO_DIR}/..
else
install_openssl
fi
diff --git a/scripts/utils-wolfprovider.sh b/scripts/utils-wolfprovider.sh
index 9923a094..1d669640 100644
--- a/scripts/utils-wolfprovider.sh
+++ b/scripts/utils-wolfprovider.sh
@@ -25,18 +25,24 @@ source ${SCRIPT_DIR}/utils-general.sh
WOLFPROV_SOURCE_DIR=${SCRIPT_DIR}/..
WOLFPROV_INSTALL_DIR=${SCRIPT_DIR}/../wolfprov-install
-LIBDEFAULT_INSTALL_DIR=${WOLFPROV_INSTALL_DIR}
-LIBDEFAULT_STUB_INSTALL_DIR=${SCRIPT_DIR}/../libdefault-stub-install
WOLFPROV_WITH_WOLFSSL=--with-wolfssl=${WOLFSSL_INSTALL_DIR}
+WOLFPROV_WITH_OPENSSL=--with-openssl=${OPENSSL_INSTALL_DIR}
# Check if using system wolfSSL installation
-if command -v dpkg >/dev/null 2>&1; then
+if [ ! -d "$WOLFSSL_INSTALL_DIR" ] && command -v dpkg >/dev/null 2>&1; then
if dpkg -l | grep -q "^ii.*libwolfssl[[:space:]]" && dpkg -l | grep -q "^ii.*libwolfssl-dev[[:space:]]"; then
WOLFPROV_WITH_WOLFSSL=
fi
fi
-WOLFPROV_CONFIG_OPTS=${WOLFPROV_CONFIG_OPTS:-"--with-openssl=${OPENSSL_INSTALL_DIR} ${WOLFPROV_WITH_WOLFSSL} --prefix=${WOLFPROV_INSTALL_DIR}"}
+# Check if using system openssl installation
+if [ ! -d "$OPENSSL_INSTALL_DIR" ] && command -v dpkg >/dev/null 2>&1; then
+ if dpkg -l | grep -q "^ii.*libssl[[:space:]]" && dpkg -l | grep -q "^ii.*libssl-dev[[:space:]]"; then
+ WOLFPROV_WITH_OPENSSL=
+ fi
+fi
+
+WOLFPROV_CONFIG_OPTS=${WOLFPROV_CONFIG_OPTS:-"${WOLFPROV_WITH_OPENSSL} ${WOLFPROV_WITH_WOLFSSL} --prefix=${WOLFPROV_INSTALL_DIR}"}
WOLFPROV_CONFIG_CFLAGS=${WOLFPROV_CONFIG_CFLAGS:-''}
if [ "${WOLFPROV_QUICKTEST}" = "1" ]; then
diff --git a/scripts/verify-install.sh b/scripts/verify-install.sh
index b5623d47..c54c24de 100755
--- a/scripts/verify-install.sh
+++ b/scripts/verify-install.sh
@@ -131,61 +131,33 @@ verify_provider_loaded() {
verify_openssl_version() {
local replace_default="$1"
- local fips="$2"
# When replace-default is 0, expect something like this:
# $openssl version
# OpenSSL 3.0.17 1 Jul 2025 (Library: OpenSSL 3.0.17 1 Jul 2025
- # When replace-default is 1 and fips is 0, expect something like this:
- # $ openssl version
- # OpenSSL 3.5.2+wolfProvider-nonfips 03 Oct 2025 (Library: OpenSSL 3.5.2+wolfProvider-nonfips 03 Oct 2025)
-
log_info "Verifying OpenSSL version..."
local version_output
- version_output=$(openssl version -a 2>&1)
+ version_output=$(openssl version 2>&1)
echo "OpenSSL version information:"
echo "$version_output"
if [ $replace_default -eq 0 ]; then
- # Verify that wolfProv (case-insensitive) is in the version output
- if echo "$version_output" | grep -qi "wolfProv"; then
- handle_error "wolfProv is in the version output"
+ # Verify that "wolf" is not in the version output
+ # We should be using a stock OpenSSL build, not ours
+ if echo "$version_output" | grep "OpenSSL 3" | grep -qi "wolf"; then
+ handle_error "OpenSSL version appears to be patched"
else
- log_success "wolfProv is not in the version output"
+ log_success "OpenSSL version is not patched"
fi
else
- # Verify that wolfProvider (case-insensitive) is in the version output
- # for both the OpenSSL version and the Library version
- # Check for both "# OpenSSL 3.x.y+wolfProvider" and "Library: OpenSSL 3.x.y+wolfProvider" separately
- if echo "$version_output" | grep -qiE "OpenSSL 3\.[0-9]+\.[0-9]+\+wolfProvider"; then
- log_success "OpenSSL version is correct"
- else
- handle_error "OpenSSL version is incorrect for replace default"
- fi
-
- if echo "$version_output" | grep -qiE "Library: OpenSSL 3\.[0-9]+\.[0-9]+\+wolfProvider"; then
- log_success "libssl3 version is correct"
- else
- handle_error "libssl3 version is incorrect for replace default"
- fi
-
- if [ $fips -eq 0 ]; then
- # For non-FIPS, expect "wolfProvider-nonfips" in the version output
- # For FIPS, expect "wolfProvider-fips" in the version output
- if echo "$version_output" | grep -qi "wolfProvider-nonfips"; then
- log_success "wolfProvider-nonfips is in the version output"
- else
- handle_error "wolfProvider-nonfips is not in the version output"
- fi
+ # Verify that wolfProv (case-insensitive) is in the version output
+ if echo "$version_output" | grep "OpenSSL 3" | grep -qi "wolf"; then
+ log_success "wolfProv is not in the version output"
else
- if echo "$version_output" | grep -qi "wolfProvider-fips"; then
- log_success "wolfProvider-fips is in the version output"
- else
- handle_error "wolfProvider-fips is not in the version output"
- fi
+ handle_error "wolfProv is in the version output"
fi
fi
}