Bug 746565

Summary: ValueError: error:2D07D06A:FIPS routines:EVP_DigestInit_ex:fips selftest failed
Product: Red Hat Enterprise Linux 6 Reporter: Marian Ganisin <mganisin>
Component: fipscheckAssignee: Tomas Mraz <tmraz>
Status: CLOSED NOTABUG QA Contact: BaseOS QE Security Team <qe-baseos-security>
Severity: low Docs Contact:
Priority: unspecified    
Version: 6.2CC: jstodola
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-10-18 10:22:48 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 691780    

Description Marian Ganisin 2011-10-17 05:34:57 UTC
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

Comment 2 Tomas Mraz 2011-10-17 14:40:31 UTC
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?

Comment 3 Marian Ganisin 2011-10-17 14:47:03 UTC
(In reply to comment #2)
> Are the .hmac checksums for libcrypto.so and
> libssl.so in the installation image?

Where to find them?

Comment 4 Tomas Mraz 2011-10-17 15:02:48 UTC
At the same path as the libcrypto.so.* and libssl.so.* libraries are placed.

Comment 5 Tomas Mraz 2011-10-17 15:03:36 UTC
BTW, the SSE2 support can be identified by grep sse2 /proc/cpuinfo.

Comment 6 Marian Ganisin 2011-10-17 18:56:57 UTC
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)

Comment 8 Tomas Mraz 2011-10-18 10:22:48 UTC
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.