summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoremaste <emaste@FreeBSD.org>2015-04-05 14:06:11 +0000
committeremaste <emaste@FreeBSD.org>2015-04-05 14:06:11 +0000
commit5bcf10a834727b8fe3443cc74c05e927c2b855c3 (patch)
treeeb72e127daf4d64a37e8d41b01ed914b467faf4a
parent0a38ac8a11963c83d552b201afccb05f8fac7539 (diff)
downloadFreeBSD-src-5bcf10a834727b8fe3443cc74c05e927c2b855c3.zip
FreeBSD-src-5bcf10a834727b8fe3443cc74c05e927c2b855c3.tar.gz
MIPS rtld: report missing symbol rather than segfaulting
This is only an interim fix; MIPS should be using the MI code instead, which does not have this issue. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D661
-rw-r--r--libexec/rtld-elf/mips/reloc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libexec/rtld-elf/mips/reloc.c b/libexec/rtld-elf/mips/reloc.c
index 4e750d7..809adb8 100644
--- a/libexec/rtld-elf/mips/reloc.c
+++ b/libexec/rtld-elf/mips/reloc.c
@@ -245,7 +245,7 @@ _mips_rtld_bind(Obj_Entry *obj, Elf_Size reloff)
def = find_symdef(reloff, obj, &defobj, SYMLOOK_IN_PLT, NULL,
NULL);
if (def == NULL)
- _rtld_error("bind failed no symbol");
+ rtld_die();
target = (Elf_Addr)(defobj->relocbase + def->st_value);
dbg("bind now/fixup at %s sym # %jd in %s --> was=%p new=%p",
OpenPOWER on IntegriCloud