freebsd-dev/libexec/rtld-elf
Konstantin Belousov c5637b8be8 rtld: ignore fstatfs(2) errors when checking MNT_NOEXEC flag
File descriptor we operate on might reference something that is not a
file, e.g. shmfd.  In this case, we cannot check MNT_NOEXEC in
principle.

If fstatfs(2) caused some failure on normal filesystem, then typical
expectation is that read or mmap of this file would also fail.  If not,
mmap(2) PROT_EXEC on MNT_NOEXEC filesystem returns EACCES.

Reported by:	obiwac@gmail.com
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2021-11-06 06:40:17 +02:00
..
aarch64 rtld: Remove calculate_tls_end 2021-08-16 13:55:35 +03:00
amd64 rtld: Remove calculate_tls_end 2021-08-16 13:55:35 +03:00
arm rtld-elf/paths.h: Make it usable outside rtld 2021-10-21 03:08:54 +03:00
i386 rtld: Remove calculate_tls_end 2021-08-16 13:55:35 +03:00
mips rtld: Remove calculate_tls_end 2021-08-16 13:55:35 +03:00
powerpc rtld: Remove calculate_tls_end 2021-08-16 13:55:35 +03:00
powerpc64 rtld: Remove calculate_tls_end 2021-08-16 13:55:35 +03:00
riscv rtld: Remove calculate_tls_end 2021-08-16 13:55:35 +03:00
rtld-libc rtld: provide private getenv(3) 2021-08-17 15:05:47 +03:00
tests rtld/tests: Avoid function name conflict with libc opendir() 2021-07-06 10:51:57 +01:00
debug.c libexec: adoption of SPDX licensing ID tags. 2017-11-27 15:25:02 +00:00
debug.h Use rtld_putstr() instead of write() for the rtld msg() macro 2019-06-26 15:43:26 +00:00
libmap.c rtld-elf/paths.h: Make it usable outside rtld 2021-10-21 03:08:54 +03:00
libmap.conf Move libmap.conf to libexec/rtld-elf/ 2018-09-18 00:25:00 +00:00
libmap.h rtld: constify most variables holding references to the environment values 2021-08-17 15:06:08 +03:00
Makefile rtld: Do not install libmap.conf when installing the COMPAT32 version 2021-10-13 14:42:08 +02:00
Makefile.depend
map_object.c rtld: Round down relro_size 2021-08-13 12:58:53 +03:00
rtld_lock.c rtld: initialize default dlerror_seen_val as true 2021-05-13 02:31:29 +03:00
rtld_lock.h rtld_lock.h: add some comments about versioning of struct RtldLockInfo 2021-04-11 11:16:13 +03:00
rtld_malloc.c rtld-elf/paths.h: Make it usable outside rtld 2021-10-21 03:08:54 +03:00
rtld_malloc.h Add header file missed in r343564. 2019-01-29 22:45:24 +00:00
rtld_paths.h rtld-elf/paths.h: Make it usable outside rtld 2021-10-21 03:08:54 +03:00
rtld_printf.c Reduce size of rtld by 22% by pulling in less code from libc 2019-06-30 11:49:58 +00:00
rtld_printf.h Use rtld_putstr() instead of write() for the rtld msg() macro 2019-06-26 15:43:26 +00:00
rtld_tls.h Remove sparc64 specific parts of rtld-elf. 2020-02-26 18:49:25 +00:00
rtld_utrace.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
rtld.1 rtld direct exec: add -d option 2021-10-13 03:41:48 +03:00
rtld.c rtld: ignore fstatfs(2) errors when checking MNT_NOEXEC flag 2021-11-06 06:40:17 +02:00
rtld.h rtld: Support DT_RELR relative relocation format 2021-10-17 02:37:13 +03:00
Symbol.map rtld dl_iterate_phdr(): dlpi_tls_data is wrong 2021-04-06 03:23:08 +03:00
xmalloc.c Make p_vaddr % p_align == p_offset % p_align for (some) TLS segments. 2020-04-04 22:37:50 +00:00