platform_bionic/linker
Jiyong Park 527757e16b Don't resolve permitted.paths
Linker resolves the paths in /system/etc/ld.config.txt to canonicalize
the paths and to ensure they exist. However, as permitted paths for the
default namespace contain directories such as /vendor/app, /mnt/expand,
and etc., the resolving causes selinux denial on some processes which do
not have access to some of the permitted paths.

In order to silence the bogus selinux denial, resolution is skipped for
permitted paths.

Note that the resolution is not strictly required especially for
Treble-ized devices where permitted paths are already canonicalized (i.e
/vendor isn't a symlink to /system/vendor).

Bug: 65843095
Test: no selinux denial on /vendor/app, /vendor/framework, etc. while
booting.

Change-Id: I1a9921e45f4c15b08cdf8f1caee64c4cb0761e1f
2017-09-21 11:48:06 +09:00
..
arch Remove obsolete __stack_chk_fail_local. 2017-05-23 16:43:30 -07:00
tests Revert "linker: disable ld.config.txt in ASAN mode" 2017-08-04 14:15:20 +09:00
Android.bp linker: the global group is added to all built-in namespaces 2017-08-04 14:14:09 +09:00
Android.mk Convert linker from Android.mk to Android.bp 2016-07-15 13:39:29 -07:00
dlfcn.cpp Make dl_iterate_phdr return correct name for first entry 2017-05-31 23:45:15 +00:00
ld.config.format.md Load namespace configuration from ld.config.txt 2017-03-24 15:50:45 -07:00
linked_list.h Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker.cpp Make default namespace handle the 'visible' flag. 2017-08-17 10:12:51 +09:00
linker.h Make dl_iterate_phdr return correct name for first entry 2017-05-31 23:45:15 +00:00
linker_allocator.cpp Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_allocator.h Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_block_allocator.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_block_allocator.h Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_cfi.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_cfi.h Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_common_types.h Extract soinfo and globals to separate files. 2016-08-08 16:12:53 -07:00
linker_config.cpp Don't resolve permitted.paths 2017-09-21 11:48:06 +09:00
linker_config.h linker: add android_get_exported_namespace 2017-04-28 10:14:28 +09:00
linker_debug.h Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_dlwarning.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_dlwarning.h Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_gdb_support.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_gdb_support.h Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_globals.cpp Extract soinfo and globals to separate files. 2016-08-08 16:12:53 -07:00
linker_globals.h Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_libc_support.c Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_libcxx_support.cpp Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_logger.cpp Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_logger.h Add support for disabling the greylist. 2017-04-06 10:59:24 -07:00
linker_main.cpp linker: the global group is added to all built-in namespaces 2017-08-04 14:14:09 +09:00
linker_main.h linker: the global group is added to all built-in namespaces 2017-08-04 14:14:09 +09: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 Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_memory.cpp Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_mips.cpp linker: fix mips build 2016-08-09 06:58:55 -07:00
linker_namespaces.cpp linker: the global group is added to all built-in namespaces 2017-08-04 14:14:09 +09:00
linker_namespaces.h linker: the global group is added to all built-in namespaces 2017-08-04 14:14:09 +09:00
linker_phdr.cpp linker: the global group is added to all built-in namespaces 2017-08-04 14:14:09 +09:00
linker_phdr.h Check alignment along with range of mapped file fragments 2016-08-10 10:52:55 -07:00
linker_reloc_iterators.h Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_relocs.h Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_sdk_versions.cpp Unify linker files under one license (BSD) 2017-02-15 15:35:33 -08:00
linker_sleb128.h Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_soinfo.cpp Move libc_log code into libasync_safe. 2017-05-03 08:50:43 -07:00
linker_soinfo.h Make dl_iterate_phdr return correct name for first entry 2017-05-31 23:45:15 +00:00
linker_utils.cpp Extract format_string function. 2017-03-13 16:25:51 -07:00
linker_utils.h Load namespace configuration from ld.config.txt 2017-03-24 15:50:45 -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