Skip to content

Fix nightly FIPS scripts CI: RPATH, dynamic wolfSSL tag, better FIPS errors#401

Open
aidangarske wants to merge 4 commits into
wolfSSL:masterfrom
aidangarske:fix-wolfprovider-ci-nightly
Open

Fix nightly FIPS scripts CI: RPATH, dynamic wolfSSL tag, better FIPS errors#401
aidangarske wants to merge 4 commits into
wolfSSL:masterfrom
aidangarske:fix-wolfprovider-ci-nightly

Conversation

@aidangarske
Copy link
Copy Markdown
Member

@aidangarske aidangarske commented May 25, 2026

Copilot AI review requested due to automatic review settings May 25, 2026 17:07

This comment was marked as resolved.

Adds -Wl,-rpath flags for both lib and lib64 to OPENSSL_LDFLAGS default, and
canonicalizes OPENSSL_INSTALL_DIR with realpath -m to avoid embedding a '..'
segment in the baked rpath. The OpenSSL CLI binary (openssl-install/bin/openssl)
now finds its sibling libssl/libcrypto without depending on LD_LIBRARY_PATH or
on env-setup having been sourced. Callers passing OPENSSL_LDFLAGS still override
the default.
When fips-check-PILOT.sh or fips-check.sh exits non-zero, cat the captured
log to stdout instead of leaving the user with just the rc value and a log
file they may not have access to (e.g. inside a Jenkins workspace). The
preceding redirect on line 229 uses single '>' so LOG_FILE at this point
contains only the failed script's output. Diagnostic-only change; success
path is unchanged.
The hardcoded v5.8.4-stable default kept the 'default' FIPS scripts test
config pinned to an old wolfSSL whose headers no longer satisfy the v5.2.4
FIPS overlay (XXX-fips-test references WC_MIN_DIGEST_SIZE, which only
exists from v5.9.0-stable on). Rather than play tag-bump roulette every
release, walk a small resolution ladder:

  1. WOLFSSL_TAG (explicit caller override) - unchanged
  2. WOLFSSL_LATEST - set by the Jenkinsfile 'Resolve versions' stage, so
     CI gets the dynamic value with zero extra HTTP cost
  3. GitHub releases/latest API - for local dev runs without Jenkins
  4. v5.9.1-stable hardcoded floor - only used if all of the above fail
     (e.g. GitHub unreachable), so the script remains buildable offline
The leading '---' in the second printf format string makes bash bail with
'printf: --: invalid option' (the first call survived because of a leading
newline). Switch to echo, which has no equivalent parsing surprise for
content starting with dashes, and use '==>' markers in the captured log.
@aidangarske aidangarske force-pushed the fix-wolfprovider-ci-nightly branch from 0acccd6 to 3881f28 Compare May 25, 2026 17:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants