about summary refs log tree commit diff
path: root/arch/x86_64/reloc.h
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011-06-25 22:36:21 -0400
committerRich Felker <dalias@aerifal.cx>2011-06-25 22:36:21 -0400
commit32de61e81a64c8bb2cd23e3476f00433692f8e59 (patch)
tree1c078d393681448b498d865db9550d4d209732fa /arch/x86_64/reloc.h
parent1a3ff4f9099cf3d6b65a77cf9bfb7f69a7698a30 (diff)
downloadmusl-32de61e81a64c8bb2cd23e3476f00433692f8e59.tar.gz
musl-32de61e81a64c8bb2cd23e3476f00433692f8e59.tar.xz
musl-32de61e81a64c8bb2cd23e3476f00433692f8e59.zip
fix some symbol resolution issues in dynamic linker
1. search was wrongly beginning with lib itself rather than dso head
2. inconsistent resolution of function pointers for functions in plt
Diffstat (limited to 'arch/x86_64/reloc.h')
-rw-r--r--arch/x86_64/reloc.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86_64/reloc.h b/arch/x86_64/reloc.h
index 6642fdd4..b0bbfb3e 100644
--- a/arch/x86_64/reloc.h
+++ b/arch/x86_64/reloc.h
@@ -5,6 +5,7 @@
 #define ETC_LDSO_PATH "/etc/ld-musl-x86_64.path"
 
 #define IS_COPY(x) ((x)==R_X86_64_COPY)
+#define IS_PLT(x) ((x)==R_X86_64_JUMP_SLOT)
 
 static inline void do_single_reloc(size_t *reloc_addr, int type, size_t sym_val, size_t sym_size, unsigned char *base_addr, size_t addend)
 {