From a8563c0ee84c642700cd3982b81dcd28d27f93ec Mon Sep 17 00:00:00 2001 From: John Hodge Date: Wed, 26 Oct 2011 21:15:29 +0800 Subject: [PATCH] Usermode/ld-acess - Added support for R_ARM_COPY --- Usermode/Libraries/ld-acess.so_src/elf.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Usermode/Libraries/ld-acess.so_src/elf.c b/Usermode/Libraries/ld-acess.so_src/elf.c index 0877c229..3bc159ef 100644 --- a/Usermode/Libraries/ld-acess.so_src/elf.c +++ b/Usermode/Libraries/ld-acess.so_src/elf.c @@ -307,6 +307,12 @@ void *Elf32Relocate(void *Base, char **envp, const char *Filename) val = (intptr_t)GetSymbol(Sym, NULL); *ptr = val + addend; break; + case R_ARM_COPY: { + size_t size; + void *src = GetSymbol(Sym, &size); + DEBUGS(" elf_doRelocate_arm: R_ARM_COPY (%p, %p, %i)", ptr, src, size); + memcpy(ptr, src, size); + break; } default: SysDebug("elf_doRelocate_arm: Unknown Relocation, %i", type); break; -- 2.20.1