diff options
author | 2016-11-14 23:01:07 -0500 | |
---|---|---|
committer | 2016-11-14 23:01:07 -0500 | |
commit | 7aeb66e8ab261007a95fd0fee0f573d6aede496d (patch) | |
tree | 990dff7100106b73171cd0be58c5d2626f477019 | |
parent | paxldso: fix building when ldso support is disabled (diff) | |
download | pax-utils-7aeb66e8ab261007a95fd0fee0f573d6aede496d.tar.gz pax-utils-7aeb66e8ab261007a95fd0fee0f573d6aede496d.tar.bz2 pax-utils-7aeb66e8ab261007a95fd0fee0f573d6aede496d.zip |
paxldso: always expose ldpaths array
This fixes building when ldso config logic is unavailable since consumers
(like scanelf) always attempt to walk the array. Changing the code to be
an empty array by default so it won't suck up too much space when support
isn't available.
-rw-r--r-- | paxldso.c | 4 | ||||
-rw-r--r-- | paxldso.h | 3 |
2 files changed, 4 insertions, 3 deletions
@@ -235,11 +235,11 @@ static void ldso_cache_cleanup(void) * ld.so.conf logic */ -#if PAX_LDSO_CONFIG - static array_t _ldpaths = array_init_decl; array_t *ldpaths = &_ldpaths; +#if PAX_LDSO_CONFIG + #if defined(__GLIBC__) || defined(__UCLIBC__) || defined(__NetBSD__) int ldso_config_load(const char *fname) @@ -49,8 +49,9 @@ static inline char *ldso_cache_lookup_lib(elfobj *elf, const char *fname) # define PAX_LDSO_CONFIG 1 #endif -#if PAX_LDSO_CONFIG +/* Consumers refer to ldpaths directly, so can't hide its def. */ extern array_t *ldpaths; +#if PAX_LDSO_CONFIG extern int ldso_config_load(const char *fname); #else static inline int ldso_config_load(const char *fname) |