plt.c revision 2d45b1a8e26a36a9f85dc49e721c4390ca93dc40
1d914a206a11cc1011a45f00674b1e16988fae77fJuan Cespedes#include <gelf.h> 2d914a206a11cc1011a45f00674b1e16988fae77fJuan Cespedes#include "ltrace.h" 3d914a206a11cc1011a45f00674b1e16988fae77fJuan Cespedes#include "elf.h" 4d914a206a11cc1011a45f00674b1e16988fae77fJuan Cespedes 52d45b1a8e26a36a9f85dc49e721c4390ca93dc40Ian WienandGElf_Addr arch_plt_sym_val(struct ltelf *lte, size_t ndx, GElf_Rela * rela) 6d914a206a11cc1011a45f00674b1e16988fae77fJuan Cespedes{ 72d45b1a8e26a36a9f85dc49e721c4390ca93dc40Ian Wienand return lte->plt_addr + ndx * 12 + 32; 89a2ad351a1c3215dc596ff3e2e3fd4bc24445a6bIan Wienand} 99a2ad351a1c3215dc596ff3e2e3fd4bc24445a6bIan Wienand 102d45b1a8e26a36a9f85dc49e721c4390ca93dc40Ian Wienandvoid *plt2addr(struct process *proc, void **plt) 119a2ad351a1c3215dc596ff3e2e3fd4bc24445a6bIan Wienand{ 122d45b1a8e26a36a9f85dc49e721c4390ca93dc40Ian Wienand return (void *)plt; 13d914a206a11cc1011a45f00674b1e16988fae77fJuan Cespedes} 14