Skip to content

Commit 7e49eb9

Browse files
author
Test User
committed
Add ipmitools fix
1 parent 3241836 commit 7e49eb9

File tree

2 files changed

+40
-6
lines changed

2 files changed

+40
-6
lines changed

.github/scripts/check-workflow-result.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,23 @@ if [ "$WOLFPROV_FORCE_FAIL" = "WOLFPROV_FORCE_FAIL=1" ]; then
304304
echo "Error: $IPERF_TEST_LOG not found"
305305
exit 1
306306
fi
307+
# ----- IPMITOOL -----
308+
elif [ "$TEST_SUITE" = "ipmitool" ]; then
309+
if [ -f "ipmitool-test.log" ]; then
310+
# ipmitool will always fail (no BMC hardware), but we check if crypto was exercised
311+
# With force_fail: Should fail early during crypto operations
312+
# Check for RAKP (authentication protocol that uses HMAC)
313+
if grep -qi "rakp\|hmac" ipmitool-test.log; then
314+
echo "PASS: ipmitool crypto operations attempted and failed as expected with force fail enabled"
315+
exit 0
316+
else
317+
echo "FAIL: ipmitool RAKP/HMAC crypto operations not detected in output"
318+
exit 1
319+
fi
320+
else
321+
echo "Error: ipmitool-test.log not found"
322+
exit 1
323+
fi
307324
else
308325
if [ $TEST_RESULT -eq 0 ]; then
309326
echo "$TEST_SUITE tests unexpectedly succeeded with force fail enabled"

.github/workflows/ipmitool.yml

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,6 @@ jobs:
105105
# Test actual crypto operations using RAKP authentication
106106
# ipmitool uses OpenSSL's HMAC (SHA1/SHA256) for RAKP authentication
107107
# This exercises real crypto operations through wolfProvider
108-
echo "Testing ipmitool crypto operations with RAKP authentication..."
109108
110109
export ${{ matrix.force_fail }}
111110
@@ -117,16 +116,34 @@ jobs:
117116
# With WOLFPROV_FORCE_FAIL, crypto ops will fail and connection will abort early
118117
# Without it, connection attempt gets further (fails on network, not crypto)
119118
119+
echo "=================================="
120+
if [ -n "${{ matrix.force_fail }}" ]; then
121+
echo "Testing with WOLFPROV_FORCE_FAIL=1 (crypto should fail)"
122+
else
123+
echo "Testing without force_fail (crypto should work)"
124+
fi
125+
echo "=================================="
126+
echo ""
120127
echo "Attempting IPMIv2.0 RAKP authentication (exercises HMAC via wolfProvider)..."
121128
./src/ipmitool -I lanplus -H 127.0.0.1 -U admin -P password -v chassis status 2>&1 | tee ipmitool-test.log
122129
TEST_RESULT=${PIPESTATUS[0]}
123130
124131
echo ""
125-
echo "Test output analysis:"
132+
echo "=================================="
133+
echo "Full ipmitool output:"
134+
echo "=================================="
135+
cat ipmitool-test.log
136+
echo ""
137+
echo "=================================="
138+
echo "Exit code: $TEST_RESULT"
139+
echo "=================================="
140+
echo ""
126141
127-
# Check for crypto initialization in verbose output
128-
if grep -qi "rakp\|hmac\|auth\|cipher" ipmitool-test.log; then
129-
echo "✓ Crypto operations detected in output"
130-
fi
142+
# Extract key error/status lines for analysis
143+
echo "Key lines from output:"
144+
echo "---"
145+
grep -i "error\|fail\|rakp\|hmac\|auth\|session" ipmitool-test.log || echo "(no matching lines found)"
146+
echo "---"
147+
echo ""
131148
132149
$GITHUB_WORKSPACE/.github/scripts/check-workflow-result.sh $TEST_RESULT ${{ matrix.force_fail }} ipmitool

0 commit comments

Comments
 (0)