We discovered a problem running openssl with our application on WinNT4.0 and
using Visual C++ 6.0.

When we run our application, it makes a call to SSL_write, then an access
violation occurs executing fwrite within the function file_write of openSSL.

Upon closer inspection, we found the culprit to be stdout. From within our
application, while initializing openSSL, b->ptr (b is type BIO) is set to
stdout. Just before the crash within openSSL, b->ptr is still pointing to
that
address; however, if a variable is set within openSSL to stdout, that
variable
points to a different address.

In other words: If a variable is set to stdout in our application, and a
variable is set to stdout within openSSL, the two point to different
addresses
in NT--in Unix, both point to the same address. In NT, if an attempt is
made to use the stdout address set in the calling from application within
openSSL, a crash occurs.

An earlier message on the listserv indicated a similar problem (see "App
crash
on NT"); the solution suggested using the multithreaded dll version of the
run-time libraries. We verified that the correct libraries are indeed being
used.

Has anyone else seen this, or knows why the stdouts would be different?
Thanks!

Paul

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to