I am trying to update my web server to the latest openssl with the heartbleed patch ( 1.0.1g ). I grabbed the tarball from openssl.org. Said the usual ./configure; mak
I resolved it. The problem was simple. These symbols are indeed undefined in libssl.so
(or .a
). They are actually defined in libcrypto.so
. I wasn't getting the new libcrypto.so
because....
...The new openssl tarball installs its outputs by default in /usr/local/ssl
. This is configurable, but it really wants to install ALL the ssl stuff (including the libs) in /something/something/ssl
. So you have /something/something/ssl/lib
, /something/something/ssl/bin
etc.
So when I said make install
, it created /usr/local/ssl
with all the good stuff in it. I
made a symbolic link in /usr/lib64 from openssl.so.1.0.0 -> /usr/local/etc/ssl/lib/openssl.so.1.0.0.
But I did not realize that I needed to do the same for libcrypto.so
, so that still had the old stuff.
So I was using the new libssl.so
, and an old libcrypto.so
. Bad mojo.