summaryrefslogtreecommitdiff
path: root/libbacktrace/internal.h
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@golang.org>2017-09-20 21:09:37 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2017-09-20 21:09:37 +0000
commit9283471ba0d8b605a5ddf8cbd2814d81d4dd8550 (patch)
treee52a88d0b1f5cfcb40440155b8e658b582180f36 /libbacktrace/internal.h
parent2ffb574542b10b14841c2807047e7396e3a63f37 (diff)
re PR sanitizer/77631 (no symbols in backtrace shown by ASan when debug info is split)
PR sanitizer/77631 Support for external debug info. * elf.c: Include <errno.h>, <sys/stat.h>, <unistd.h>. (S_ISLNK): Define if not defined. (xstrnlen): Define if strnlen is not available. (b_elf_note): Define type. (NT_GNU_BUILD_ID): Define macro. (elf_crc32, elf_crc32_file): New static functions. (elf_is_symlink, elf_readlink): New static functions. (elf_open_debugfile_by_buildid): New static function. (elf_try_debugfile): New static function. (elf_find_debugfile_by_debuglink): New static function. (elf_open_debugfile_by_debuglink): New static function. (elf_add): Add filename and debuginfo parameters. Adjust all callers. Look for external debug info notes, and try to fetch debug info from external file. (struct phdr_data): Add exe_filename field. (phdr_callback): Pass filename to elf_add. (backtrace_initialize): Add filename parameter. * internal.h (backtrace_initialize): Add filename parameter. * fileline.c (fileline_initialize): Pass filename to backtrace_initialize. * pecoff.c (fileline_initialize): Add unused filename parameter. * unknown.c (fileline_initialize): Likewise. * xcoff.c (fileline_initialize): Likewise. * configure.ac: Check for objcopy --add-gnu-debuglink. * Makefile.am (dtest): New test target. * configure, Makefile.in: Rebuild. Co-Authored-By: Denis Khalikov <d.khalikov@partner.samsung.com> From-SVN: r253032
Diffstat (limited to 'libbacktrace/internal.h')
-rw-r--r--libbacktrace/internal.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/libbacktrace/internal.h b/libbacktrace/internal.h
index 89b7bf7d2d1..f52d1f94029 100644
--- a/libbacktrace/internal.h
+++ b/libbacktrace/internal.h
@@ -268,6 +268,7 @@ extern int backtrace_vector_release (struct backtrace_state *state,
appropriate one. */
extern int backtrace_initialize (struct backtrace_state *state,
+ const char *filename,
int descriptor,
backtrace_error_callback error_callback,
void *data,