Adapt ASLR to ltrace
[platform/upstream/ltrace.git] / ltrace-elf.h
index ea14512..4a824c4 100644 (file)
@@ -139,6 +139,10 @@ struct elf_each_symbol_t {
 int elf_read_relocs(struct ltelf *lte, Elf_Scn *scn, GElf_Shdr *shdr,
                    struct vect *rela_vec);
 
+/* Read a given DT_ TAG from LTE.  Value is returned in *VALUEP.
+ * Returns 0 on success or a negative value on failure.  */
+int elf_load_dynamic_entry(struct ltelf *lte, int tag, GElf_Addr *valuep);
+
 /* Read, respectively, 1, 2, 4, or 8 bytes from Elf data at given
  * OFFSET, and store it in *RETP.  Returns 0 on success or a negative
  * value if there's not enough data.  */
@@ -162,6 +166,7 @@ int elf_read_next_uleb128(Elf_Data *data, GElf_Xword *offset, uint64_t *retp);
 /* Return whether there's AMOUNT more bytes after OFFSET in DATA.  */
 int elf_can_read_next(Elf_Data *data, GElf_Xword offset, GElf_Xword amount);
 
+void delete_symbol_chain(struct library_symbol *);
 #if __WORDSIZE == 32
 #define PRI_ELF_ADDR           PRIx32
 #define GELF_ADDR_CAST(x)      (void *)(uint32_t)(x)