@@ -, +, @@ and lld --- libsandbox/wrapper-funcs/__wrapper_exec.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) --- a/libsandbox/wrapper-funcs/__wrapper_exec.c +++ a/libsandbox/wrapper-funcs/__wrapper_exec.c @@ -165,7 +165,9 @@ static bool sb_check_exec(const char *filename, char *const argv[]) \ while (sym < symend) { \ char *symname = (void *)(elf + stroff + sym->st_name); \ - if (ELF##n##_ST_VISIBILITY(sym->st_other) == STV_DEFAULT && \ + if ((ELF##n##_ST_TYPE(sym->st_info) == STT_OBJECT || \ + ELF##n##_ST_TYPE(sym->st_info) == STT_FUNC) && \ + ELF##n##_ST_VISIBILITY(sym->st_other) == STV_DEFAULT && \ sym->st_shndx != SHN_UNDEF && sym->st_shndx < SHN_LORESERVE && \ sym->st_name && \ /* Minor optimization to avoid strcmp. */ \ --