Hi Users,

I use Apache Webserver and mod_ssl as the server application. I want to upgrade 
this server to use FIPS validated module, hence I am using Openssl-fips-1.2 in 
conjunction with Openssl-0.9.8j.
I would like to know, where we have to make this fips_mode_set() API call. 
Should the fips-mode be enabled as soon as the main() function of the httpd 
project starts or can I enable it after all the dlls are loaded and I am about 
to run my own threads?

I have tried to do the following and faced problems on both accounts:

1. If the fips_mode_set() API is called in the beginning of the main() function 
in main.c in httpd project of Apache, then the server exits. The log file entry 
shows “Failed to generate temporary 512 bit RSA private key” “Seeding PRNG with 
0 bytes of entropy”.


2. If the fips_mode_set() API is called after all dlls are loaded, then, when I 
connect from my client application, it fails to connect. And when I debug I 
find that ssl_accept() in ssl_engine_io.c of mod_ssl project fails, with error 
code 5. Also, if the server page is accessed from Internet Explorer, then the 
server crashes trying to free memory!! Call stack shows calls to free() in 
dbgheap.c in msvcr80d.dll. (I am not able to provide the call stack right now 
please bear with me.) The call stack almost runs like below:

libhttpd.dll->mod_ssl.dll->ssleay32.dll->msvcr80.dll->dbgheap.

I have tried to put the LogLevel to DEBUG in the config file, to find out the 
problem area. But, the server crashes earlier itself at ap_log_error() in 
libhttpd. If this is set to ERROR, then the crash occurs at free() of dbgheap.c 
(from msvcr80d.dll).

Could you tell me which is the right place to make this call? If it should be 
in the main.c in httpd project, then could you tell me what needs to be done 
for the Failed RSA private key generation error?

3. Should my client application also be in fips-mode to connect to a 
fips-enabled server? If so, are there any additional things i have to do or 
calling the fips_mode_set() API at the very beginning of the client application 
suffice?

It would be very helpful if any of you could give a clear picture on this.


Thanks & Regards,
Uma Nayak

________________________________
http://www.mindtree.com/email/disclaimer.html
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to