MINOR: compat: detect support for dl_iterate_phdr()

We'll use this glibc function to dump loaded libs. It's been
available since glibc-2.2.4, and as it requires dlpi headers defined
in link.h, it implicitly relies on dlfcn, thus we condition it to
USE_DL. Other operating systems or libc might have different
dependencies so let's stick to the bare minimum for now.
This commit is contained in:
Willy Tarreau 2021-12-28 15:13:12 +01:00
parent 6c9f7faa62
commit 3f3a56c9b0

View File

@ -247,6 +247,11 @@ typedef struct { } empty_t;
#endif
#endif
/* dl_iterate_phdr() is available in GLIBC 2.2.4 and up. Let's round up to 2.3.x */
#if defined(USE_DL) && defined(__GNU_LIBRARY__) && (__GLIBC__ > 2 || __GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)
#define HA_HAVE_DL_ITERATE_PHDR
#endif
/* malloc_trim() can be very convenient to reclaim unused memory especially
* from huge pattern files. It's available (and really usable) in glibc 2.8 and
* above.