diff options
author | Petr Machata <pmachata@redhat.com> | 2012-04-10 04:32:39 +0200 |
---|---|---|
committer | Petr Machata <pmachata@redhat.com> | 2012-04-19 01:38:02 +0200 |
commit | 18bd8ffa003c680e3d44d1b05fc3a7b43e6a25ce (patch) | |
tree | 172f5d44bb322ce3bc6a018070c3b2023ddeb1d6 /common.h | |
parent | 93327cef38b3c09a88ca293ab52d6f5b6078f187 (diff) | |
download | ltrace-18bd8ffa003c680e3d44d1b05fc3a7b43e6a25ce.tar.gz |
Add auxv reader
We should be able to instrument dynamic linker as well, if that is
requested. Unfortunately we may still need artificial _start probe,
because we don't know _r_debug address until the dynamic linker fills
the DT_DEBUG entry. (Though we are likely to find _r_debug in symbol
table if we look.)
Diffstat (limited to 'common.h')
-rw-r--r-- | common.h | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -236,5 +236,13 @@ enum plt_status arch_elf_add_plt_entry(struct Process *p, struct ltelf *l, int arch_breakpoint_init(struct Process *proc, struct breakpoint *sbp); void arch_breakpoint_destroy(struct breakpoint *sbp); +typedef void *target_address_t; +/* This should extract entry point address and interpreter (dynamic + * linker) bias if possible. Returns 0 if there were no errors, -1 + * otherwise. Sets *ENTRYP and *INTERP_BIASP to non-zero values if + * the corresponding value is known. Unknown values are set to 0. */ +int process_get_entry(struct Process *proc, + target_address_t *entryp, + target_address_t *interp_biasp); #endif |