[Ltrace-devel] [PATCH v1 5/6] Export elf_get_sym_info

edgar.iglesias at gmail.com edgar.iglesias at gmail.com
Tue Oct 9 12:50:34 UTC 2012


From: "Edgar E. Iglesias" <edgar at axis.com>

Export the base implementation of arch_get_sym_info as
elf_get_sym_info() for backends to use if needed.

Signed-off-by: Edgar E. Iglesias <edgar at axis.com>
---
 ltrace-elf.c |   13 ++++++++++---
 ltrace-elf.h |    5 +++++
 2 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/ltrace-elf.c b/ltrace-elf.c
index cd88581..79feabe 100644
--- a/ltrace-elf.c
+++ b/ltrace-elf.c
@@ -511,10 +511,9 @@ do_close_elf(struct ltelf *lte) {
 	close(lte->fd);
 }
 
-#ifndef ARCH_HAVE_GET_SYMINFO
 int
-arch_get_sym_info(struct ltelf *lte, const char *filename,
-		  size_t sym_index, GElf_Rela *rela, GElf_Sym *sym)
+elf_get_sym_info(struct ltelf *lte, const char *filename,
+		 size_t sym_index, GElf_Rela *rela, GElf_Sym *sym)
 {
 	int i = sym_index;
 	GElf_Rel rel;
@@ -541,6 +540,14 @@ arch_get_sym_info(struct ltelf *lte, const char *filename,
 
 	return 0;
 }
+
+#ifndef ARCH_HAVE_GET_SYMINFO
+int
+arch_get_sym_info(struct ltelf *lte, const char *filename,
+		  size_t sym_index, GElf_Rela *rela, GElf_Sym *sym)
+{
+	return elf_get_sym_info(lte, filename, sym_index, rela, sym);
+}
 #endif
 
 static void
diff --git a/ltrace-elf.h b/ltrace-elf.h
index 7aba933..e8fb460 100644
--- a/ltrace-elf.h
+++ b/ltrace-elf.h
@@ -56,6 +56,11 @@ int ltelf_read_library(struct library *lib, struct Process *proc,
  * point address is stored to *ENTRYP.  */
 struct library *ltelf_read_main_binary(struct Process *proc, const char *path);
 
+/* The base implementation of backend.h (arch_get_sym_info).
+ * See backend.h for details.  */
+int elf_get_sym_info(struct ltelf *lte, const char *filename,
+		     size_t sym_index, GElf_Rela *rela, GElf_Sym *sym);
+
 Elf_Data *elf_loaddata(Elf_Scn *scn, GElf_Shdr *shdr);
 int elf_get_section_covering(struct ltelf *lte, GElf_Addr addr,
 			     Elf_Scn **tgt_sec, GElf_Shdr *tgt_shdr);
-- 
1.7.8.6




More information about the Ltrace-devel mailing list