On Wed, Feb 20, 2013, Rickard Binnare wrote:

> 
> > So FIPS_mode_set() cannot succeed if FIPS_selftest() fails, for static
> > or dynamic linking.
> No this is not the case on the windows platform.
> Tested on a Windows 7 machine using Visual Studio 2010 with OpenSSL.1.0.1.c
> and OpenSSL-Fips-2.0.
> The FIPS_mode_set() succeeds but FIPS_selftest() fails. The FIPS_mode_set
> method should not succeed as you have stated above if FIPS_selftest fails.
> FIPS_selftest
> clearly works when it is called in the call chain starting
> with FIPS_mode_set, but not otherwise. I think this
> has to do with how Windows handles loading and mapping of DLL:s.
> I recommend trying this, if you do not believe me.
> 
> Here is a minimalistic test program that displays this anomaly. Dynamic
> linked. It could easily be modified to show
> OpenSSL error msgs. But I try to keep it short.
> 

You say it is "dynamic linked". How are you actually handling that? Are you
linking to libeay32.dll only or fipscanister.lib too?

I've known cases where FIPS_selftest appears to fail on non-Windows platforms
because the application was linked against a shared library and fipscanister:
effectively there were two instances of fipscanister which were confusing the
hell out of each other.

Steve.
--
Dr Stephen N. Henson. OpenSSL project core developer.
Commercial tech support now available see: http://www.openssl.org
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to