Discussion:
What is openssl.so?
(too old to reply)
Herman
2005-04-24 18:30:07 UTC
Permalink
Hi everybody,

Just some schtoopidt questions:
I compiled and installed OpenSSL and it seems to work. (I am using
Webmin and HTTPS connections work.)

I am actually trying to get FreeRadius to work and it has trouble
finding the MD5xxxxxx functions:
/root/sw/freeradius/freeradius-1.0.2/src/lib/.libs/libradius.so:
undefined reference to `MD5Final'

which lead me down a long and winding road trying to figure out how
OpenSSL should be installed and removing all redundant/old cruft that
may be confusing the FreeRadius build.

In /lib I have an old file openssl.so.0.9.6b
I don't have a file called openssl.so anywhere, but I do have openssl.a

Questions:
What is the difference between .a and .so files?
Can I delete the old openssl.so.0.9.6b file?

Any other ideas that may help me get the Radius/SSL configuration
figured out?

Regards,
--
Herman
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List openssl-***@openssl.org
Automated List Manager ***@openssl.org
Schneider John
2005-04-25 12:40:29 UTC
Permalink
.so =3D shared object... like a DLL.=20
.a is a static library.

Sometimes people append the version to a .so library and=20
then have a link pointing to whichever version they want.

e.g. "ln -s openssl.so.0.9.6b openssl.so"

This will create the link... then anything going after=20
openssl.so (and able to find it in LD_LIBRARY_PATH) will=20
get directed to openssl.so.0.9.6b.



-----Original Message-----
From: owner-openssl-***@openssl.org
[mailto:owner-openssl-***@openssl.org] On Behalf Of Herman
Sent: Sunday, April 24, 2005 1:29 PM
To: openssl-***@openssl.org
Subject: What is openssl.so?

Hi everybody,

Just some schtoopidt questions:
I compiled and installed OpenSSL and it seems to work. (I am using
Webmin and HTTPS connections work.)

I am actually trying to get FreeRadius to work and it has trouble
finding the MD5xxxxxx functions:
/root/sw/freeradius/freeradius-1.0.2/src/lib/.libs/libradius.so:=20
undefined reference to `MD5Final'

which lead me down a long and winding road trying to figure out how
OpenSSL should be installed and removing all redundant/old cruft that
may be confusing the FreeRadius build.

In /lib I have an old file openssl.so.0.9.6b I don't have a file called
openssl.so anywhere, but I do have openssl.a

Questions:
What is the difference between .a and .so files?
Can I delete the old openssl.so.0.9.6b file?

Any other ideas that may help me get the Radius/SSL configuration
figured out?

Regards,
--
Herman
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List openssl-***@openssl.org
Automated List Manager ***@openssl.org


This e-mail is confidential. If you are not the intended recipient, you mu=
st not disclose or use the information contained in it. If you have receiv=
ed this e-mail in error, please tell us immediately by return e-mail to Ema=
***@sentry.com and delete the document.

E-mails containing unprofessional, discourteous or offensive remarks violat=
e Sentry policy. You may report employee violations by forwarding the messa=
ge to ***@sentry.com.

No recipient may use the information in this e-mail in violation of any civ=
il or criminal statute. Sentry disclaims all liability for any unauthorized=
uses of this e-mail or its contents.

This e-mail constitutes neither an offer nor an acceptance of any offer. No=
contract may be entered into by a Sentry employee without express approval=
from an authorized Sentry manager.

Warning: Computer viruses can be transmitted via e-mail. Sentry accepts no =
liability or responsibility for any damage caused by any virus transmitted =
with this e-mail.

______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List openssl-***@openssl.org
Automated List Manager ***@openssl.org
Herman
2005-04-25 14:03:44 UTC
Permalink
.so = shared object... like a DLL.
.a is a static library.
Sometimes people append the version to a .so library and
then have a link pointing to whichever version they want.
e.g. "ln -s openssl.so.0.9.6b openssl.so"
This will create the link... then anything going after
openssl.so (and able to find it in LD_LIBRARY_PATH) will
get directed to openssl.so.0.9.6b.
Thanks, that explains the nomenclature.

I have started reading the code of OpenSSL to figure out how the system
is put together - mighty slow going - lots to learn.

On my system, openssl.a is now the new version that I built from the tar
ball and openssl.so is an old version that came with the original
installation. Intuitively, it doesn't look like a good idea to have two
different versions of the library in use.

So, my next schtoopidt question is: Can I generate a .so file myself, by
doing the ./configure differently and making it again?

Cheers,

Herman

______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List openssl-***@openssl.org
Automated List Manager ***@openssl.org
Marco Roeland
2005-04-25 14:25:20 UTC
Permalink
Post by Herman
On my system, openssl.a is now the new version that I built from the tar
ball and openssl.so is an old version that came with the original
installation. Intuitively, it doesn't look like a good idea to have two
different versions of the library in use.
If they have different version numbers you can have both a 0.9.6.x and a
0.9.7.x library at the same time. Which version a program uses, and
whether is statically includes functions from the .a static library or
dynamically links against a .so library is specified during linking of
the program. Use ldd(1) to determine if a program uses dynamic libraries
and which ones. Read up on ldconfig(8) on the version numbers and so on.
Post by Herman
So, my next schtoopidt question is: Can I generate a .so file myself, by
doing the ./configure differently and making it again?
./configure shared

You _can_ build a .so from the .a 's you already have, but using
"./configure shared" in a clean directory probably is easiest!
--
Marco Roeland
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List openssl-***@openssl.org
Automated List Manager ***@openssl.org
Herman
2005-04-25 14:35:50 UTC
Permalink
Post by Marco Roeland
Post by Herman
On my system, openssl.a is now the new version that I built from the tar
ball and openssl.so is an old version that came with the original
installation. Intuitively, it doesn't look like a good idea to have two
different versions of the library in use.
If they have different version numbers you can have both a 0.9.6.x and a
0.9.7.x library at the same time. Which version a program uses, and
whether is statically includes functions from the .a static library or
dynamically links against a .so library is specified during linking of
the program. Use ldd(1) to determine if a program uses dynamic libraries
and which ones. Read up on ldconfig(8) on the version numbers and so on.
Post by Herman
So, my next schtoopidt question is: Can I generate a .so file myself, by
doing the ./configure differently and making it again?
./configure shared
You _can_ build a .so from the .a 's you already have, but using
"./configure shared" in a clean directory probably is easiest!
OK, thanks!

What I'll do, is rebuild the whole thing using the 'shared' parameter,
and keep both shared libraries. Hopefully then, everything will be in tune.

Herman
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List openssl-***@openssl.org
Automated List Manager ***@openssl.org
Loading...