diff options
author | Dale Rahn <drahn@cvs.openbsd.org> | 2004-02-09 02:33:49 +0000 |
---|---|---|
committer | Dale Rahn <drahn@cvs.openbsd.org> | 2004-02-09 02:33:49 +0000 |
commit | 2802b09b39b8fb211c2217b62d9e460cb3d06132 (patch) | |
tree | db0ab5f96c044ce4bf9d878bac4dacf8ba822025 | |
parent | 0881e7c20e0f8229fe8c91a9d85671822f71b26e (diff) |
Disable lazy binding until that feature is fixed.
-rw-r--r-- | libexec/ld.so/arm/rtld_machine.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/libexec/ld.so/arm/rtld_machine.c b/libexec/ld.so/arm/rtld_machine.c index de652c63a80..922e5046bec 100644 --- a/libexec/ld.so/arm/rtld_machine.c +++ b/libexec/ld.so/arm/rtld_machine.c @@ -1,4 +1,4 @@ -/* $OpenBSD: rtld_machine.c,v 1.1 2004/02/07 06:00:49 drahn Exp $ */ +/* $OpenBSD: rtld_machine.c,v 1.2 2004/02/09 02:33:48 drahn Exp $ */ /* * Copyright (c) 2004 Dale Rahn @@ -340,7 +340,10 @@ resolve_failed: void _dl_md_reloc_got(elf_object_t *object, int lazy) { +#define DISABLE_LAZY +#ifndef DISABLE_LAZY Elf_Addr *pltgot = (Elf_Addr *)object->Dyn.info[DT_PLTGOT]; +#endif Elf_Addr ooff; Elf_Addr plt_addr; const Elf_Sym *this; @@ -389,12 +392,17 @@ _dl_md_reloc_got(elf_object_t *object, int lazy) } #endif +#define DISABLE_LAZY +#ifndef DISABLE_LAZY if (!lazy) { +#endif _dl_md_reloc(object, DT_JMPREL, DT_PLTRELSZ); +#ifndef DISABLE_LAZY } else { pltgot[1] = (Elf_Addr)object; pltgot[2] = (Elf_Addr)_dl_bind_start; } +#endif if (object->got_size != 0) _dl_mprotect((void*)object->got_addr, object->got_size, PROT_READ); |