提交 73133962 编写于 作者: A Andy Polyakov

Last dso_dlfcn.c check-in said "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"
and disabled it on banch of systems it's known to exists, such as FreeBSD,
Solaris, 64-bit HP-UX, MacOS X. Get it straight.
上级 26e71a18
...@@ -64,7 +64,6 @@ ...@@ -64,7 +64,6 @@
# ifndef _GNU_SOURCE # ifndef _GNU_SOURCE
# define _GNU_SOURCE /* make sure dladdr is declared */ # define _GNU_SOURCE /* make sure dladdr is declared */
# endif # endif
# define HAVE_DLINFO 1
#endif #endif
#include <stdio.h> #include <stdio.h>
...@@ -79,8 +78,13 @@ DSO_METHOD *DSO_METHOD_dlfcn(void) ...@@ -79,8 +78,13 @@ DSO_METHOD *DSO_METHOD_dlfcn(void)
#else #else
#ifdef HAVE_DLFCN_H #ifdef HAVE_DLFCN_H
# include <dlfcn.h>
#include <dlfcn.h> # define HAVE_DLINFO 1
# if defined(_AIX) || defined(__CYGWIN__) || \
defined(__SCO_VERSION__) || defined(_SCO_ELF) || \
(defined(__OpenBSD__) && !defined(RTLD_SELF))
# undef HAVE_DLINFO
# endif
#endif #endif
/* Part of the hack in "dlfcn_load" ... */ /* Part of the hack in "dlfcn_load" ... */
...@@ -134,7 +138,6 @@ DSO_METHOD *DSO_METHOD_dlfcn(void) ...@@ -134,7 +138,6 @@ DSO_METHOD *DSO_METHOD_dlfcn(void)
* be hacked further relatively easily to deal with cases as we find * be hacked further relatively easily to deal with cases as we find
* them. Initially this is to cope with OpenBSD. */ * them. Initially this is to cope with OpenBSD. */
#if defined(__OpenBSD__) || defined(__NetBSD__) #if defined(__OpenBSD__) || defined(__NetBSD__)
# define HAVE_DLINFO 1
# ifdef DL_LAZY # ifdef DL_LAZY
# define DLOPEN_FLAG DL_LAZY # define DLOPEN_FLAG DL_LAZY
# else # else
...@@ -146,7 +149,6 @@ DSO_METHOD *DSO_METHOD_dlfcn(void) ...@@ -146,7 +149,6 @@ DSO_METHOD *DSO_METHOD_dlfcn(void)
# endif # endif
#else #else
# ifdef OPENSSL_SYS_SUNOS # ifdef OPENSSL_SYS_SUNOS
# define HAVE_DLINFO 1
# define DLOPEN_FLAG 1 # define DLOPEN_FLAG 1
# else # else
# define DLOPEN_FLAG RTLD_NOW /* Hope this works everywhere else */ # define DLOPEN_FLAG RTLD_NOW /* Hope this works everywhere else */
...@@ -397,7 +399,6 @@ This is a quote from IRIX manual for dladdr(3c): ...@@ -397,7 +399,6 @@ This is a quote from IRIX manual for dladdr(3c):
intention to change this interface, so on a practical level, the code intention to change this interface, so on a practical level, the code
below is safe to use on IRIX. below is safe to use on IRIX.
*/ */
#define HAVE_DLINFO 1
#include <rld_interface.h> #include <rld_interface.h>
#ifndef _RLD_INTERFACE_DLFCN_H_DLADDR #ifndef _RLD_INTERFACE_DLFCN_H_DLADDR
#define _RLD_INTERFACE_DLFCN_H_DLADDR #define _RLD_INTERFACE_DLFCN_H_DLADDR
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册