diff options
author | Ulf Möller <ulf@openssl.org> | 2006-04-11 21:00:13 +0000 |
---|---|---|
committer | Ulf Möller <ulf@openssl.org> | 2006-04-11 21:00:13 +0000 |
commit | 0ef888cd3e53fe5aef1d1e787b111626c2ddd569 (patch) | |
tree | 7933ea3509b18a16ea9a17961dc33c276e299595 /crypto/dso | |
parent | 26c777d516174165e4b4d55b1dd460366dddaec1 (diff) | |
download | openssl-0ef888cd3e53fe5aef1d1e787b111626c2ddd569.tar.gz |
Use Dl_info only on systems where it is known to exist. It does not
exist on AIX 4.3.3, AIX 5.1, SCO 5, or Cygwin.
Diffstat (limited to 'crypto/dso')
-rw-r--r-- | crypto/dso/dso_dlfcn.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/crypto/dso/dso_dlfcn.c b/crypto/dso/dso_dlfcn.c index a8e8b0faaf..f7c08973f4 100644 --- a/crypto/dso/dso_dlfcn.c +++ b/crypto/dso/dso_dlfcn.c @@ -64,6 +64,7 @@ # ifndef _GNU_SOURCE # define _GNU_SOURCE /* make sure dladdr is declared */ # endif +# define HAVE_DLINFO 1 #endif #include <stdio.h> @@ -133,6 +134,7 @@ DSO_METHOD *DSO_METHOD_dlfcn(void) * be hacked further relatively easily to deal with cases as we find * them. Initially this is to cope with OpenBSD. */ #if defined(__OpenBSD__) || defined(__NetBSD__) +# define HAVE_DLINFO 1 # ifdef DL_LAZY # define DLOPEN_FLAG DL_LAZY # else @@ -144,6 +146,7 @@ DSO_METHOD *DSO_METHOD_dlfcn(void) # endif #else # ifdef OPENSSL_SYS_SUNOS +# define HAVE_DLINFO 1 # define DLOPEN_FLAG 1 # else # define DLOPEN_FLAG RTLD_NOW /* Hope this works everywhere else */ @@ -395,6 +398,7 @@ This is a quote from IRIX manual for dladdr(3c): intention to change this interface, so on a practical level, the code below is safe to use on IRIX. */ +#define HAVE_DLINFO 1 #include <rld_interface.h> #ifndef _RLD_INTERFACE_DLFCN_H_DLADDR #define _RLD_INTERFACE_DLFCN_H_DLADDR @@ -422,7 +426,7 @@ static int dladdr(void *address, Dl_info *dl) static int dlfcn_pathbyaddr(void *addr,char *path,int sz) { -#if 1 /*def HAVE_DLINFO */ +#ifdef HAVE_DLINFO Dl_info dli; int len; |