platform_bionic/linker
dimitry 7217a092a6 Libraries without dt_soname are inaccessible
When linker tries to check if a library without dt_soname is accessible
it crashes. This change fixes this problem to return false instead
(making them inaccessible from other namespaces)

This went unnoticed because vendor libraries on current
devices all have dt_soname set. This was only discovered
on one of the newer devices which has a vendor prebuilt
library without a soname.

Bug: http://b/78661414
Bug: https://issuetracker.google.com/77287902
Test: cts-tradefed run commandAndExit cts -m CtsJniTestCases
Change-Id: Idb192b4ed7a810840ba2a9177bad2360ffbb75e2
(cherry picked from commit 94f7a87510)
2018-04-29 13:39:46 +02:00
..
arch Switch x86 begin.c to asm; align ESP correctly 2018-02-12 21:43:12 -08:00
tests linker: Allow link namespaces without name filters 2018-01-25 14:45:29 +08:00
Android.bp Disable lld, failed to link bionic/linker. 2018-04-16 09:51:50 -07:00
Android.mk Convert linker from Android.mk to Android.bp 2016-07-15 13:39:29 -07:00
dlfcn.cpp linker: Allow link namespaces without name filters 2018-01-25 14:45:29 +08:00
ld.config.format.md Load namespace configuration from ld.config.txt 2017-03-24 15:50:45 -07:00
ld_android.cpp Break libdl.so and ld-android.so's dependency on libc.so. 2018-03-30 13:56:03 -07:00
linked_list.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker.arm.map linker: Allow link namespaces without name filters 2018-01-25 14:45:29 +08:00
linker.cpp Reject .so files using ELF TLS. 2018-03-23 18:46:07 -07:00
linker.generic.map linker: Allow link namespaces without name filters 2018-01-25 14:45:29 +08:00
linker.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_allocator.cpp Always log errno when aborting. 2017-09-15 16:18:49 -07:00
linker_allocator.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_block_allocator.cpp Always log errno when aborting. 2017-09-15 16:18:49 -07:00
linker_block_allocator.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_cfi.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_cfi.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_common_types.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_config.cpp Be clearer about linker warnings. 2018-02-28 12:37:28 -08:00
linker_config.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_debug.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_dlwarning.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_dlwarning.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_exidx_static.c Implement __gnu_Unwind_Find_exidx/__cxa_type_match 2017-08-29 18:18:27 +02:00
linker_gdb_support.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_gdb_support.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_globals.cpp Be clearer about linker warnings. 2018-02-28 12:37:28 -08:00
linker_globals.h Be clearer about linker warnings. 2018-02-28 12:37:28 -08:00
linker_libc_support.c Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_libcxx_support.cpp Adapt to the new libc++/libc++abi update. 2018-01-08 14:44:42 -08:00
linker_logger.cpp Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_logger.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_main.cpp Fix logic in loading dependencies crossing namespace boundaries 2017-12-10 22:04:55 +01:00
linker_main.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_mapped_file_fragment.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_mapped_file_fragment.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_memory.cpp linker_memory: return success in enable_fallback_allocator. 2018-01-24 15:08:53 -08:00
linker_mips.cpp MIPS: Fix MIPS linker VDSO issues 2017-10-13 12:08:30 +02:00
linker_namespaces.cpp Be clearer about linker warnings. 2018-02-28 12:37:28 -08:00
linker_namespaces.h Libraries without dt_soname are inaccessible 2018-04-29 13:39:46 +02:00
linker_phdr.cpp Be clearer about linker warnings. 2018-02-28 12:37:28 -08:00
linker_phdr.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_reloc_iterators.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_relocs.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_sdk_versions.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_sleb128.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_soinfo.cpp Be clearer about linker warnings. 2018-02-28 12:37:28 -08:00
linker_soinfo.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_utils.cpp Be clearer about linker warnings. 2018-02-28 12:37:28 -08:00
linker_utils.h Switch the rest of our internal headers to #pragma once. 2018-02-13 14:27:17 -08:00
linker_wrapper.cpp Use an embedded linker for host bionic 2017-09-20 13:59:13 -07:00
MODULE_LICENSE_BSD Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
rt.cpp More dynamic linker cleanup. 2012-10-30 16:35:38 -07:00