summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/csu/aarch64/md_init.h8
-rw-r--r--lib/csu/alpha/md_init.h10
-rw-r--r--lib/csu/amd64/md_init.h10
-rw-r--r--lib/csu/arm/md_init.h8
-rw-r--r--lib/csu/boot.h4
-rw-r--r--lib/csu/hppa/boot_md.h4
-rw-r--r--lib/csu/hppa/md_init.h14
-rw-r--r--lib/csu/i386/md_init.h10
-rw-r--r--lib/csu/m88k/md_init.h7
-rw-r--r--lib/csu/mips64/boot_md.h4
-rw-r--r--lib/csu/mips64/md_init.h16
-rw-r--r--lib/csu/powerpc/md_init.h10
-rw-r--r--lib/csu/powerpc64/md_init.h10
-rw-r--r--lib/csu/riscv64/md_init.h6
-rw-r--r--lib/csu/sh/md_init.h10
-rw-r--r--lib/csu/sparc64/md_init.h8
-rw-r--r--libexec/ld.so/aarch64/archdep.h4
-rw-r--r--libexec/ld.so/alpha/archdep.h4
-rw-r--r--libexec/ld.so/amd64/archdep.h4
-rw-r--r--libexec/ld.so/arm/archdep.h4
-rw-r--r--libexec/ld.so/hppa/archdep.h6
-rw-r--r--libexec/ld.so/i386/archdep.h4
-rw-r--r--libexec/ld.so/m88k/archdep.h4
-rw-r--r--libexec/ld.so/mips64/archdep.h6
-rw-r--r--libexec/ld.so/powerpc/archdep.h6
-rw-r--r--libexec/ld.so/powerpc64/archdep.h6
-rw-r--r--libexec/ld.so/riscv64/archdep.h4
-rw-r--r--libexec/ld.so/sh/archdep.h4
-rw-r--r--libexec/ld.so/sparc64/archdep.h4
29 files changed, 83 insertions, 116 deletions
diff --git a/lib/csu/aarch64/md_init.h b/lib/csu/aarch64/md_init.h
index 71356c6e93c..c02b804f407 100644
--- a/lib/csu/aarch64/md_init.h
+++ b/lib/csu/aarch64/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.11 2023/03/31 18:46:24 kettenis Exp $ */
+/* $OpenBSD: md_init.h,v 1.12 2023/11/18 16:26:16 deraadt Exp $ */
/*-
* Copyright (c) 2001 Ross Harvey
@@ -112,10 +112,6 @@
" \n" \
" b ___start \n" \
" \n" \
- "_dl_exit: \n" \
- " mov x8, #" STR(SYS_exit) " \n" \
- " svc #0 \n" \
- " dsb nsh \n" \
- " isb \n" \
+ "_csu_abort: \n" \
" udf #0 \n" \
".previous");
diff --git a/lib/csu/alpha/md_init.h b/lib/csu/alpha/md_init.h
index d503c751913..76c80b2d561 100644
--- a/lib/csu/alpha/md_init.h
+++ b/lib/csu/alpha/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.12 2020/10/15 16:30:23 deraadt Exp $ */
+/* $OpenBSD: md_init.h,v 1.13 2023/11/18 16:26:16 deraadt Exp $ */
/*-
* Copyright (c) 2001 Ross Harvey
* All rights reserved.
@@ -95,11 +95,9 @@
" mov $9, $16 \n" \
" mov 0, $17 \n" \
" jsr $26, ___start \n" \
- ".globl _dl_exit \n" \
- ".type _dl_exit@function \n" \
- "_dl_exit: \n" \
- " lda $0, " STR(SYS_exit) " \n" \
- " callsys \n" \
+ ".globl _csu_abort \n" \
+ ".type _csu_abort@function \n" \
+ "_csu_abort: \n" \
" halt ")
#define MD_START_ARGS char **sp, void (*cleanup)(void)
diff --git a/lib/csu/amd64/md_init.h b/lib/csu/amd64/md_init.h
index 948e7c928bb..fa9e812c87d 100644
--- a/lib/csu/amd64/md_init.h
+++ b/lib/csu/amd64/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.10 2023/04/25 04:10:21 deraadt Exp $ */
+/* $OpenBSD: md_init.h,v 1.11 2023/11/18 16:26:16 deraadt Exp $ */
/*-
* Copyright (c) 2001 Ross Harvey
@@ -107,12 +107,10 @@
" addq $8,%rsp \n" \
" jmp ___start \n" \
" \n" \
- " .global _dl_exit \n" \
- " .type _dl_exit,@function \n" \
+ " .global _csu_abort \n" \
+ " .type _csu_abort,@function \n" \
" .align 8 \n" \
- "_dl_exit: \n" \
+ "_csu_abort: \n" \
" endbr64 \n" \
- " movl $ " STR(SYS_exit) ", %eax \n" \
- " syscall \n" \
" int3 \n" \
" .previous")
diff --git a/lib/csu/arm/md_init.h b/lib/csu/arm/md_init.h
index 3a9b581b6dc..63bfc8bee1d 100644
--- a/lib/csu/arm/md_init.h
+++ b/lib/csu/arm/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.17 2020/10/19 17:57:40 naddy Exp $ */
+/* $OpenBSD: md_init.h,v 1.18 2023/11/18 16:26:16 deraadt Exp $ */
/*-
* Copyright (c) 2001 Ross Harvey
@@ -154,10 +154,6 @@
".L__DYNAMIC: \n" \
" .long _DYNAMIC(GOTOFF) \n" \
" \n" \
- "_dl_exit: \n" \
- " mov r12, #" STR(SYS_exit) " \n" \
- " swi #0 \n" \
- " dsb nsh \n" \
- " isb \n" \
+ "_csu_abort: \n" \
" udf #0 \n" \
".previous");
diff --git a/lib/csu/boot.h b/lib/csu/boot.h
index 72cbfee007b..da6d424bdeb 100644
--- a/lib/csu/boot.h
+++ b/lib/csu/boot.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: boot.h,v 1.34 2022/10/21 18:14:09 deraadt Exp $ */
+/* $OpenBSD: boot.h,v 1.35 2023/11/18 16:26:15 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -40,7 +40,7 @@
#include <machine/reloc.h>
__dead
-void _dl_exit(int);
+void _csu_abort(void);
#include "archdep.h"
diff --git a/lib/csu/hppa/boot_md.h b/lib/csu/hppa/boot_md.h
index a770f7af4bb..0a8f4060781 100644
--- a/lib/csu/hppa/boot_md.h
+++ b/lib/csu/hppa/boot_md.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: boot_md.h,v 1.4 2022/10/27 19:40:21 deraadt Exp $ */
+/* $OpenBSD: boot_md.h,v 1.5 2023/11/18 16:26:16 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -40,7 +40,7 @@
#include <machine/reloc.h>
__dead
-void _dl_exit(int);
+void _csu_abort(void);
#include "archdep.h"
diff --git a/lib/csu/hppa/md_init.h b/lib/csu/hppa/md_init.h
index 5abe6daff30..7b0813e18fe 100644
--- a/lib/csu/hppa/md_init.h
+++ b/lib/csu/hppa/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.15 2020/10/15 16:30:23 deraadt Exp $ */
+/* $OpenBSD: md_init.h,v 1.16 2023/11/18 16:26:16 deraadt Exp $ */
/*
* Copyright (c) 2003 Dale Rahn. All rights reserved.
@@ -137,17 +137,13 @@
" copy %dp, %r19 \n" \
" .exit \n" \
" .procend \n" \
- " .export _dl_exit, entry \n" \
- " .type _dl_exit,@function \n" \
- " .label _dl_exit \n" \
+ " .export _csu_abort, entry \n" \
+ " .type _csu_abort,@function \n" \
+ " .label _csu_abort \n" \
" .proc \n" \
" .callinfo frame=0, calls \n" \
" .entry \n" \
- "_dl_exit: \n" \
- " stw %rp, -24(%sp) \n" \
- " ldil L%0xc0000000, %r1 \n" \
- " ble 4(%sr7, %r1) \n" \
- " ldi " STR(SYS_exit) ", %t1 \n" \
+ "_csu_abort: \n" \
" break 0,0 \n" \
" .exit \n" \
" .procend")
diff --git a/lib/csu/i386/md_init.h b/lib/csu/i386/md_init.h
index efd601d12bc..f401328e79e 100644
--- a/lib/csu/i386/md_init.h
+++ b/lib/csu/i386/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.12 2023/04/25 04:06:06 deraadt Exp $ */
+/* $OpenBSD: md_init.h,v 1.13 2023/11/18 16:26:16 deraadt Exp $ */
/*-
* Copyright (c) 2001 Ross Harvey
@@ -114,10 +114,8 @@
" call ___start # ___start(argc,argv,envp,0) \n" \
" \n" \
" .align 4 \n" \
- " .globl _dl_exit \n" \
- " .type _dl_exit,@function \n" \
- "_dl_exit: \n" \
- " mov $" STR(SYS_exit) ", %eax\n" \
- " int $0x80 \n" \
+ " .globl _csu_abort \n" \
+ " .type _csu_abort,@function \n" \
+ "_csu_abort: \n" \
" int3 \n" \
" .previous")
diff --git a/lib/csu/m88k/md_init.h b/lib/csu/m88k/md_init.h
index f73ed3e23bf..6f37b9d2f6f 100644
--- a/lib/csu/m88k/md_init.h
+++ b/lib/csu/m88k/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.9 2020/10/15 16:30:23 deraadt Exp $ */
+/* $OpenBSD: md_init.h,v 1.10 2023/11/18 16:26:16 deraadt Exp $ */
/*
* Copyright (c) 2012 Miodrag Vallat.
@@ -99,9 +99,6 @@
" addu %r4, %r4, 4 \n" \
" /* envp = argv + argc + 1 */ \n" \
\
- "_dl_exit: \n" \
- " or %r13, %r0, " STR(SYS_exit) " \n" \
- " tb0 0, %r0, 450 \n" \
- " or %r0, %r0, %r0 \n" \
+ "_csu_abort: \n" \
" tb0 0, %r0, 130 /* breakpoint */ \n" \
" .previous");
diff --git a/lib/csu/mips64/boot_md.h b/lib/csu/mips64/boot_md.h
index 09fb17f4d6f..8c2f6ec417a 100644
--- a/lib/csu/mips64/boot_md.h
+++ b/lib/csu/mips64/boot_md.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: boot_md.h,v 1.3 2022/10/27 19:40:23 deraadt Exp $ */
+/* $OpenBSD: boot_md.h,v 1.4 2023/11/18 16:26:16 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -40,7 +40,7 @@
#include <machine/reloc.h>
__dead
-void _dl_exit(int);
+void _csu_abort(int);
#include "archdep.h"
diff --git a/lib/csu/mips64/md_init.h b/lib/csu/mips64/md_init.h
index ad4e70af95d..0f5045d4a0b 100644
--- a/lib/csu/mips64/md_init.h
+++ b/lib/csu/mips64/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.20 2020/10/20 15:26:59 visa Exp $ */
+/* $OpenBSD: md_init.h,v 1.21 2023/11/18 16:26:16 deraadt Exp $ */
/*-
* Copyright (c) 2001 Ross Harvey
@@ -140,14 +140,12 @@
" dla $t9, ___start \n" \
" jr $t9 \n" \
" .end __start \n" \
- " .globl _dl_exit \n" \
- " .ent _dl_exit \n" \
- " .type _dl_exit, @function \n" \
- "_dl_exit: \n" \
- " li $v0, " STR(SYS_exit) " \n" \
- " syscall \n" \
- " teq $zero, $zero, 0x52 \n" \
- " .end _dl_exit \n" \
+ " .globl _csu_abort \n" \
+ " .ent _csu_abort \n" \
+ " .type _csu_abort, @function \n" \
+ "_csu_abort: \n" \
+ " teq zero, zero, 0x52 \n" \
+ " .end _csu_abort \n" \
" .previous")
struct kframe {
diff --git a/lib/csu/powerpc/md_init.h b/lib/csu/powerpc/md_init.h
index fa4a3f514fb..7c206e640b2 100644
--- a/lib/csu/powerpc/md_init.h
+++ b/lib/csu/powerpc/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.11 2020/10/15 16:30:23 deraadt Exp $ */
+/* $OpenBSD: md_init.h,v 1.12 2023/11/18 16:26:16 deraadt Exp $ */
/*-
* Copyright (c) 2001 Ross Harvey
@@ -119,10 +119,8 @@ __asm( \
" \n" \
" .text \n" \
" .align 2 \n" \
-" .globl _dl_exit \n" \
-" .type _dl_exit, @function \n" \
-"_dl_exit: \n" \
-" li %r0, " STR(SYS_exit) " \n" \
-" sc \n" \
+" .globl _csu_abort \n" \
+" .type _csu_abort, @function \n" \
+"_csu_abort: \n" \
" .long 0 # illegal \n" \
)
diff --git a/lib/csu/powerpc64/md_init.h b/lib/csu/powerpc64/md_init.h
index e2054bd5754..110cc5b2ed6 100644
--- a/lib/csu/powerpc64/md_init.h
+++ b/lib/csu/powerpc64/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.4 2020/10/15 16:30:23 deraadt Exp $ */
+/* $OpenBSD: md_init.h,v 1.5 2023/11/18 16:26:16 deraadt Exp $ */
/*
* Copyright (c) 2020 Dale Rahn <drahn@openbsd.org>
@@ -111,10 +111,8 @@ __asm( \
" li %r6, 0 \n" \
" bl ___start \n" \
" \n" \
-" .globl _dl_exit \n" \
-" .type _dl_exit, @function \n" \
-"_dl_exit: \n" \
-" li %r0, " STR(SYS_exit) " \n" \
-" sc \n" \
+" .globl _csu_abort \n" \
+" .type _csu_abort, @function \n" \
+"_csu_abort: \n" \
" .long 0 # illegal \n" \
)
diff --git a/lib/csu/riscv64/md_init.h b/lib/csu/riscv64/md_init.h
index 1f454384c58..62bf4638547 100644
--- a/lib/csu/riscv64/md_init.h
+++ b/lib/csu/riscv64/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.3 2021/07/22 18:16:13 kettenis Exp $ */
+/* $OpenBSD: md_init.h,v 1.4 2023/11/18 16:26:16 deraadt Exp $ */
/*
* Copyright (c) 2020 Dale Rahn <drahn@openbsd.org>
*
@@ -107,8 +107,6 @@
" j ___start \n" \
" .size _start, .-_start \n" \
" .size __start, .-__start \n" \
- "_dl_exit: \n" \
- " li t0, " STR(SYS_exit) " \n" \
- " ecall \n" \
+ "_csu_abort: \n" \
" unimp \n" \
".previous");
diff --git a/lib/csu/sh/md_init.h b/lib/csu/sh/md_init.h
index f2940122c4a..b75014616d5 100644
--- a/lib/csu/sh/md_init.h
+++ b/lib/csu/sh/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.10 2020/10/15 16:30:23 deraadt Exp $ */
+/* $OpenBSD: md_init.h,v 1.11 2023/11/18 16:26:16 deraadt Exp $ */
/* $NetBSD: dot_init.h,v 1.3 2005/12/24 22:02:10 perry Exp $ */
/*-
@@ -131,10 +131,8 @@ __asm(".section " #section "\n" \
" .long _DYNAMIC - .L_offbase \n" \
\
" .align 2 \n" \
- " .globl _dl_exit \n" \
- " .type _dl_exit,@function \n" \
- "_dl_exit: \n" \
- " mov #" STR(SYS_exit) ", r0 \n" \
- " .word 0xc380 /* trapa #0x80 */ \n" \
+ " .globl _csu_abort \n" \
+ " .type _csu_abort,@function \n" \
+ "_csu_abort: \n" \
" sleep /* illegal */ \n" \
".previous")
diff --git a/lib/csu/sparc64/md_init.h b/lib/csu/sparc64/md_init.h
index 09f0f0cc1ec..7857bacdf23 100644
--- a/lib/csu/sparc64/md_init.h
+++ b/lib/csu/sparc64/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.9 2020/10/15 16:30:23 deraadt Exp $ */
+/* $OpenBSD: md_init.h,v 1.10 2023/11/18 16:26:16 deraadt Exp $ */
/*-
* Copyright (c) 2001 Ross Harvey
@@ -100,10 +100,8 @@
" ba,pt %icc, ___start \n" \
" clr %o1 \n" \
" \n" \
- " .global _dl_exit \n" \
- "_dl_exit: \n" \
- " mov " STR(SYS_exit) ", %g1 \n" \
- " t 0 \n" \
+ " .global _csu_abort \n" \
+ "_csu_abort: \n" \
" unimp \n" \
" .previous")
diff --git a/libexec/ld.so/aarch64/archdep.h b/libexec/ld.so/aarch64/archdep.h
index 8e6fa7d9259..80411488917 100644
--- a/libexec/ld.so/aarch64/archdep.h
+++ b/libexec/ld.so/aarch64/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.8 2022/01/17 01:35:36 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.9 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -45,7 +45,7 @@ RELOC_DYN(Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE(r->r_info) == R_AARCH64_ABS64) {
*p = v + s->st_value + r->r_addend;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/alpha/archdep.h b/libexec/ld.so/alpha/archdep.h
index f952fea5252..4590afc8956 100644
--- a/libexec/ld.so/alpha/archdep.h
+++ b/libexec/ld.so/alpha/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.25 2022/01/31 05:44:13 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.26 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -50,7 +50,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE(r->r_info) == RELOC_GLOB_DAT) {
*p = v + s->st_value + r->r_addend;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/amd64/archdep.h b/libexec/ld.so/amd64/archdep.h
index f717f9c7ee8..415056dea41 100644
--- a/libexec/ld.so/amd64/archdep.h
+++ b/libexec/ld.so/amd64/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.15 2022/01/17 01:35:36 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.16 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -45,7 +45,7 @@ RELOC_DYN(Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE(r->r_info) == R_X86_64_64) {
*p = v + s->st_value + r->r_addend;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/arm/archdep.h b/libexec/ld.so/arm/archdep.h
index c6adff41b85..7d23f0a9b82 100644
--- a/libexec/ld.so/arm/archdep.h
+++ b/libexec/ld.so/arm/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.15 2022/01/17 01:35:36 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.16 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -45,7 +45,7 @@ RELOC_DYN(Elf_Rel *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE(r->r_info) == R_ARM_ABS32) {
*p += v + s->st_value;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/hppa/archdep.h b/libexec/ld.so/hppa/archdep.h
index 6aa05877c79..52676803ba6 100644
--- a/libexec/ld.so/hppa/archdep.h
+++ b/libexec/ld.so/hppa/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.18 2022/01/31 05:43:22 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.19 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 2004 Michael Shalayeff
@@ -49,7 +49,7 @@ RELOC_JMPREL(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v,
p[0] = v + s->st_value + r->r_addend;
p[1] = pltgot;
} else {
- _dl_exit(5);
+ _csu_abort();
}
}
@@ -64,7 +64,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE(r->r_info) == RELOC_PLABEL32) {
*p = v + s->st_value + r->r_addend;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/i386/archdep.h b/libexec/ld.so/i386/archdep.h
index 65dcaab019b..e5a9c772b2c 100644
--- a/libexec/ld.so/i386/archdep.h
+++ b/libexec/ld.so/i386/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.23 2022/01/17 01:35:36 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.24 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -46,7 +46,7 @@ RELOC_DYN(const Elf_Rel *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE(r->r_info) == RELOC_32) {
*p += v + s->st_value;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/m88k/archdep.h b/libexec/ld.so/m88k/archdep.h
index fa16862117f..c22bbd2177e 100644
--- a/libexec/ld.so/m88k/archdep.h
+++ b/libexec/ld.so/m88k/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.10 2022/01/16 02:14:27 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.11 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -43,7 +43,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE(r->r_info) == RELOC_32) {
*p = v + s->st_value + r->r_addend;
} else if (ELF_R_TYPE(r->r_info) != RELOC_NONE) {
- _dl_exit(ELF_R_TYPE(r->r_info) + 100);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/mips64/archdep.h b/libexec/ld.so/mips64/archdep.h
index 386765ea44b..957527b08ac 100644
--- a/libexec/ld.so/mips64/archdep.h
+++ b/libexec/ld.so/mips64/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.17 2022/01/17 19:45:34 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.18 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998-2002 Opsycon AB, Sweden.
@@ -45,7 +45,7 @@ do { \
else \
*adrp += val; \
} else if (ELF_R_TYPE(relp->r_info) != R_MIPS_NONE) { \
- _dl_exit(ELF_R_TYPE(relp->r_info)+100); \
+ _csu_abort(); \
} \
} while (0)
@@ -76,7 +76,7 @@ do { \
if (sp->st_shndx == SHN_UNDEF || \
sp->st_shndx == SHN_COMMON) { \
if (ELF_ST_BIND(sp->st_info) != STB_WEAK) \
- _dl_exit(7); \
+ _csu_abort(); \
} else if (ELF_ST_TYPE(sp->st_info) == STT_FUNC) { \
*gotp += __loff; \
} else { \
diff --git a/libexec/ld.so/powerpc/archdep.h b/libexec/ld.so/powerpc/archdep.h
index 678672bf010..5f26d7290d8 100644
--- a/libexec/ld.so/powerpc/archdep.h
+++ b/libexec/ld.so/powerpc/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.25 2022/01/17 01:35:36 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.26 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -58,7 +58,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
if (((val & 0xfe000000) != 0) &&
((val & 0xfe000000) != 0xfe000000)) {
/* invalid offset */
- _dl_exit(20);
+ _csu_abort();
}
val &= ~0xfc000000;
val |= 0x48000000;
@@ -67,7 +67,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE((r)->r_info) == RELOC_GLOB_DAT) {
*p = v + s->st_value + r->r_addend;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/powerpc64/archdep.h b/libexec/ld.so/powerpc64/archdep.h
index b27d9a74c49..93cff9e49d9 100644
--- a/libexec/ld.so/powerpc64/archdep.h
+++ b/libexec/ld.so/powerpc64/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.4 2022/01/16 02:16:40 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.5 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -59,7 +59,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
if (((val & 0xfe000000) != 0) &&
((val & 0xfe000000) != 0xfe000000)) {
/* invalid offset */
- _dl_exit(20);
+ _csu_abort();
}
val &= ~0xfc000000;
val |= 0x48000000;
@@ -68,7 +68,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE((r)->r_info) == R_PPC64_GLOB_DAT) {
*p = v + s->st_value + r->r_addend;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/riscv64/archdep.h b/libexec/ld.so/riscv64/archdep.h
index 5e090c73a82..8c85c83af8f 100644
--- a/libexec/ld.so/riscv64/archdep.h
+++ b/libexec/ld.so/riscv64/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.4 2022/01/16 02:17:05 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.5 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 2021 Dale Rahn <drahn@openbsd.org>
@@ -44,7 +44,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE(r->r_info) == R_RISCV_64) {
*p = v + s->st_value + r->r_addend;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/sh/archdep.h b/libexec/ld.so/sh/archdep.h
index d56c32bad07..0a3c6c4f813 100644
--- a/libexec/ld.so/sh/archdep.h
+++ b/libexec/ld.so/sh/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.14 2022/01/17 01:35:36 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.15 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -43,7 +43,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
} else if (ELF_R_TYPE(r->r_info) == R_SH_DIR32) {
*p = s->st_value + v + r->r_addend;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}
diff --git a/libexec/ld.so/sparc64/archdep.h b/libexec/ld.so/sparc64/archdep.h
index 3a7b2d58ddd..e4c57b71171 100644
--- a/libexec/ld.so/sparc64/archdep.h
+++ b/libexec/ld.so/sparc64/archdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archdep.h,v 1.28 2022/01/17 01:35:36 guenther Exp $ */
+/* $OpenBSD: archdep.h,v 1.29 2023/11/18 16:26:17 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -41,7 +41,7 @@ RELOC_DYN(const Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v)
if (ELF_R_TYPE(r->r_info) == RELOC_RELATIVE) {
*p = v + r->r_addend;
} else {
- _dl_exit(6);
+ _csu_abort();
}
}