diff options
author | Jan Kratochvil <jan.kratochvil@redhat.com> | 2012-10-28 16:06:03 +0100 |
---|---|---|
committer | Jan Kratochvil <jan.kratochvil@redhat.com> | 2012-10-28 16:06:03 +0100 |
commit | 65c438d4666faf334b22463cd578049942f3a403 (patch) | |
tree | 85901794ff3a1ba1d49f0fb966ec72e14db138c8 | |
parent | fed45d7e43973e31d35d870b9c1b7ab865dbae73 (diff) | |
download | elfutils-65c438d4666faf334b22463cd578049942f3a403.tar.gz |
.
-rw-r--r-- | libdw/libdw.map | 1 | ||||
-rw-r--r-- | libdwfl/find-debuginfo.c | 8 | ||||
-rw-r--r-- | libdwfl/libdwfl.h | 4 |
3 files changed, 13 insertions, 0 deletions
diff --git a/libdw/libdw.map b/libdw/libdw.map index 9a373752..853671f1 100644 --- a/libdw/libdw.map +++ b/libdw/libdw.map @@ -258,6 +258,7 @@ ELFUTILS_0.149 { ELFUTILS_0.155 { global: dwfl_report_elf_baseaddr; + dwfl_fd_find_debuginfo; dwfl_frame_state_pid; dwfl_frame_state_core; dwfl_frame_state_data; diff --git a/libdwfl/find-debuginfo.c b/libdwfl/find-debuginfo.c index 21db91a4..40c96404 100644 --- a/libdwfl/find-debuginfo.c +++ b/libdwfl/find-debuginfo.c @@ -269,3 +269,11 @@ dwfl_standard_find_debuginfo (Dwfl_Module *mod, return fd; } INTDEF (dwfl_standard_find_debuginfo) + +bool +dwfl_fd_find_debuginfo (Dwfl_Module *mod, GElf_Word debuglink_crc, int fd) +{ + bool cancheck = debuglink_crc != (GElf_Word) 0; + return validate (mod, fd, cancheck, debuglink_crc); +} +INTDEF (dwfl_fd_find_debuginfo) diff --git a/libdwfl/libdwfl.h b/libdwfl/libdwfl.h index 3b8cb37b..3a8d3e07 100644 --- a/libdwfl/libdwfl.h +++ b/libdwfl/libdwfl.h @@ -304,6 +304,10 @@ extern int dwfl_standard_find_debuginfo (Dwfl_Module *, void **, const char *, const char *, GElf_Word, char **); +/* Provide supplied separate debug info file FD for MOD. */ +extern bool dwfl_fd_find_debuginfo (Dwfl_Module *mod, GElf_Word debuglink_crc, + int fd); + /* This callback must be used when using dwfl_offline_* to report modules, if ET_REL is to be supported. */ |