summaryrefslogtreecommitdiffstats
path: root/libdwfl/libdwflP.h
diff options
context:
space:
mode:
authorMark Wielaard <[email protected]>2020-06-11 00:06:30 +0200
committerMark Wielaard <[email protected]>2020-06-11 03:58:27 +0200
commit49f13584d60322578c19b6118393ab04236ca7bf (patch)
tree88c79fbf73c54734c51b6b4a9a2a154e229f30c6 /libdwfl/libdwflP.h
parentc0d643e7d91fc002c9fecd83277c62a0e56ef76f (diff)
parent2c7c40373b68968cce20a60a28234e2a2cbc55cb (diff)
Merge tag 'elfutils-0.178' into mjw/RH-DTSdts-0.178
elfutils 0.178 release Adopt ebl backends loading from trunk.
Diffstat (limited to 'libdwfl/libdwflP.h')
-rw-r--r--libdwfl/libdwflP.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/libdwfl/libdwflP.h b/libdwfl/libdwflP.h
index 941a8b66..f631f946 100644
--- a/libdwfl/libdwflP.h
+++ b/libdwfl/libdwflP.h
@@ -40,6 +40,7 @@
#include "../libdw/libdwP.h" /* We need its INTDECLs. */
#include "../libdwelf/libdwelfP.h"
+#include "../debuginfod/debuginfod.h"
typedef struct Dwfl_Process Dwfl_Process;
@@ -114,6 +115,7 @@ struct Dwfl_User_Core
struct Dwfl
{
const Dwfl_Callbacks *callbacks;
+ debuginfod_client *debuginfod;
Dwfl_Module *modulelist; /* List in order used by full traversals. */
@@ -242,8 +244,7 @@ struct Dwfl_Thread
{
Dwfl_Process *process;
pid_t tid;
- /* The current frame being unwound. Initially it is the bottom frame.
- Later the processed frames get freed and this pointer is updated. */
+ /* Bottom (innermost) frame while we're initializing, NULL afterwards. */
Dwfl_Frame *unwound;
void *callbacks_arg;
};
@@ -635,6 +636,19 @@ extern Dwfl_Error __libdw_open_elf (int fd, Elf **elfp) internal_function;
extern bool __libdwfl_dynamic_vaddr_get (Elf *elf, GElf_Addr *vaddrp)
internal_function;
+/* Internal interface to libdebuginfod (if installed). */
+int
+__libdwfl_debuginfod_find_executable (Dwfl *dwfl,
+ const unsigned char *build_id_bits,
+ size_t build_id_len);
+int
+__libdwfl_debuginfod_find_debuginfo (Dwfl *dwfl,
+ const unsigned char *build_id_bits,
+ size_t build_id_len);
+void
+__libdwfl_debuginfod_end (debuginfod_client *c);
+
+
/* These are working nicely for --core, but are not ready to be
exported interfaces quite yet. */