Hide Forgot
Description of problem: Installatin with fips=1 on kernel command line causes traceback: Traceback (most recent call last): File "/usr/bin/anaconda", line 632, in <module> import dispatch File "/usr/lib/anaconda/dispatch.py", line 26, in <module> from packages import writeKSConfiguration, turnOnFilesystems File "/usr/lib/anaconda/packages.py", line 39, in <module> from upgrade import bindMountDevDirectory File "/usr/lib/anaconda/upgrade.py", line 35, in <module> from storage import findExistingRootDevices, getReleaseString File "/usr/lib/anaconda/storage/__init__.py", line 53, in <module> import iscsi File "/usr/lib/anaconda/storage/iscsi.py", line 29, in <module> import hashlib File "/usr/lib/python2.6/hashlib.py", line 101, in <module> f(usedforsecurity=False) ValueError: error:2D07D06A:FIPS routines:EVP_DigestInit_ex:fips selftest failed Version-Release number of selected component (if applicable): anaconda 13.21.144 RHEL6.2-20111013.1 Additional info: Tested on i386
This is not a fipscheck bug - fipscheck is not used by openssl. Is the machine with SSE2 instruction set? Are the .hmac checksums for libcrypto.so and libssl.so in the installation image?
(In reply to comment #2) > Are the .hmac checksums for libcrypto.so and > libssl.so in the installation image? Where to find them?
At the same path as the libcrypto.so.* and libssl.so.* libraries are placed.
BTW, the SSE2 support can be identified by grep sse2 /proc/cpuinfo.
Searching content of initrd and stage2 image of anaconda: # find |grep -E 'lib(crypto|ssl)' ./squashfs-root/usr/lib/libssl.so.1.0.0 ./squashfs-root/usr/lib/.libcrypto.so.10.hmac ./squashfs-root/usr/lib/.libssl.so.10.hmac ./squashfs-root/usr/lib/libcrypto.so.10 ./squashfs-root/usr/lib/libcrypto.so.1.0.0 ./squashfs-root/usr/lib/libssl3.so ./squashfs-root/usr/lib/.libcrypto.so.1.0.0.hmac ./squashfs-root/usr/lib/.libssl.so.1.0.0.hmac ./squashfs-root/usr/lib/libssl.so.10 ./initrd/usr/lib/.libcrypto.so.10.hmac ./initrd/usr/lib/.libssl.so.10.hmac ./initrd/usr/lib/.libcrypto.so.1.0.0.hmac ./initrd/usr/lib/.libssl.so.1.0.0.hmac ./initrd/lib/libcrypto.so.10 ./initrd/lib/libssl3.so ./initrd/lib/libssl.so.10 Something seems to be wrong in initrd. I'll try installation with modified initrd tomorrow (I'll move *hmac files from /usr/lib to /lib)
As the machine does not have SSE2 instruction set support this is not a bug. OpenSSL FIPS mode is not supported on machines without SSE2 instruction set support.