-/* $OpenBSD: ldasm.S,v 1.10 2023/04/24 22:06:05 kettenis Exp $ */
+/* $OpenBSD: ldasm.S,v 1.11 2023/07/08 14:09:43 jasper Exp $ */
/*
* Copyright (c) 2016 Dale Rahn
ldp x2, x3, [sp], #16
ldp x0, x1, [sp], #16
- // restore LR saved by PLT stub
+ // restore LR saved by PLT stub
ldp xzr, x30, [sp], #16
br x17
END(_dl_bind_start)
-/* $OpenBSD: dlfcn.c,v 1.113 2022/11/09 18:44:11 deraadt Exp $ */
+/* $OpenBSD: dlfcn.c,v 1.114 2023/07/08 14:09:43 jasper Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
object->obj_flags |= DF_1_NODELETE;
object->nodelete = 1;
}
-
+
_dl_link_dlopen(object);
if (OBJECT_REF_CNT(object) > 1) {
-/* $OpenBSD: loader.c,v 1.212 2023/02/20 00:51:57 gnezdo Exp $ */
+/* $OpenBSD: loader.c,v 1.213 2023/07/08 14:09:43 jasper Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
}
}
- /*
+ /*
* TEXTREL binaries are loaded without immutable on un-writeable sections.
* After text relocations are finished, these regions can become
* immutable. OPENBSD_MUTABLE section always overlaps writeable LOADs,
-/* $OpenBSD: resolve.c,v 1.99 2023/04/13 19:57:30 millert Exp $ */
+/* $OpenBSD: resolve.c,v 1.100 2023/07/08 14:09:43 jasper Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
elf_object_t *object;
Elf_Addr gnu_hash = 0;
-#if 0
- _dl_printf("objname [%s], dynp %p, objtype %x lbase %lx, obase %lx\n",
- objname, dynp, objtype, lbase, obase);
-#endif
+ DL_DEB(("objname [%s], dynp %p, objtype %x lbase %lx, obase %lx\n",
+ objname, dynp, objtype, lbase, obase));
+
object = _dl_calloc(1, sizeof(elf_object_t));
if (object == NULL)
_dl_oom();
if (((*hashval ^ hash) >> 1) == 0) {
const Elf_Sym *sym = symt +
(hashval - obj->chains_gnu);
-
+
int r = matched_symbol(obj, sym, sl);
if (r)
return r > 0;