summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2004-01-15 13:40:23 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2004-01-15 13:40:23 +0000
commit09d5fbfc6f24fd2f95eb7cf67f75c6a61c9246e0 (patch)
treec2ea7a9f71b4ff4d81126b52b1e3e3889028fde1
parent1eab234346d0a48e8df1dc8ce7bbdc4f8a3bdf78 (diff)
ABI breakage happened with the sigaltstack replacement. It is too late,
now we just have to cope. Since setjmp uses it, the alpha and sparc64 are unhappy with the structure change. In a few days, we will make the second hop here, for now, use the old system call until all binaries have the new struct in them.
-rw-r--r--lib/libc/arch/alpha/gen/setjmp.S8
-rw-r--r--lib/libc/arch/sparc64/gen/setjmp.S8
-rw-r--r--lib/libc/sys/Makefile.inc3
3 files changed, 10 insertions, 9 deletions
diff --git a/lib/libc/arch/alpha/gen/setjmp.S b/lib/libc/arch/alpha/gen/setjmp.S
index 66d0d42b4e7..30909064fbf 100644
--- a/lib/libc/arch/alpha/gen/setjmp.S
+++ b/lib/libc/arch/alpha/gen/setjmp.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: setjmp.S,v 1.4 2002/01/04 13:51:20 art Exp $ */
+/* $OpenBSD: setjmp.S,v 1.5 2004/01/15 13:39:38 deraadt Exp $ */
/* $NetBSD: setjmp.S,v 1.2 1996/10/17 03:08:06 cgd Exp $ */
/*
@@ -32,7 +32,7 @@
#if defined(LIBC_SCCS)
.text
- .asciz "$OpenBSD: setjmp.S,v 1.4 2002/01/04 13:51:20 art Exp $"
+ .asciz "$OpenBSD: setjmp.S,v 1.5 2004/01/15 13:39:38 deraadt Exp $"
#endif
/*
@@ -71,10 +71,10 @@ LEAF(setjmp, 1)
CALL(sigblock) /* see what's blocked */
stq v0, (1 * 8)(s0) /* and remember it in sc_mask */
- lda sp, -16(sp) /* sizeof struct sigaltstack */
+ lda sp, -16(sp) /* sizeof struct osigaltstack */
mov zero, a0
mov sp, a1
- CALL(sigaltstack)
+ CALL(osigaltstack)
ldl t0, 12(sp)
lda sp, 16(sp)
ldq ra, ((26 + 4) * 8)(s0) /* restore return address */
diff --git a/lib/libc/arch/sparc64/gen/setjmp.S b/lib/libc/arch/sparc64/gen/setjmp.S
index 60c61058c13..4d156c8b3dd 100644
--- a/lib/libc/arch/sparc64/gen/setjmp.S
+++ b/lib/libc/arch/sparc64/gen/setjmp.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: setjmp.S,v 1.3 2003/06/02 20:18:32 millert Exp $ */
+/* $OpenBSD: setjmp.S,v 1.4 2004/01/15 13:40:22 deraadt Exp $ */
/* $NetBSD: setjmp.S,v 1.4 2000/08/28 00:45:59 eeh Exp $ */
/*
@@ -55,7 +55,7 @@
ENTRY(setjmp)
/*
* We use the part of the sigcontext structure, the sp, pc, and npc
- * fields, for the sigstack call so we don't need to get our own
+ * fields, for the osigaltstack call so we don't need to get our own
* stackframe. It won't be filled out till later anyway.
*/
mov %o0, %o3 /* Save our jmp_buf in %o3 */
@@ -76,8 +76,8 @@ ENTRY(setjmp)
st %o0, [%o3 + 0x38] /* sc.sc_mask = current mask; */
- mov SYS_sigaltstack, %g1
- clr %o0 /* sigaltstack(NULL, &foo) */
+ mov SYS_osigaltstack, %g1
+ clr %o0 /* osigaltstack(NULL, &foo) */
add %o3, 0x40, %o1 /* (foo being the sigcontext sc_mask) */
t ST_SYSCALL
diff --git a/lib/libc/sys/Makefile.inc b/lib/libc/sys/Makefile.inc
index fc16d954812..5276d01df42 100644
--- a/lib/libc/sys/Makefile.inc
+++ b/lib/libc/sys/Makefile.inc
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile.inc,v 1.67 2004/01/12 18:27:28 tedu Exp $
+# $OpenBSD: Makefile.inc,v 1.68 2004/01/15 13:40:22 deraadt Exp $
# $NetBSD: Makefile.inc,v 1.35 1995/10/16 23:49:07 jtc Exp $
# @(#)Makefile.inc 8.1 (Berkeley) 6/17/93
@@ -47,6 +47,7 @@ ASM= accept.o access.o acct.o adjtime.o bind.o chdir.o chflags.o chmod.o \
mkfifo.o mknod.o mlock.o mlockall.o \
mount.o mprotect.o msgctl.o msgget.o msgrcv.o msgsnd.o msync.o \
munlock.o munlockall.o munmap.o nanosleep.o nfssvc.o \
+ osigaltstack.o \
open.o pathconf.o pipe.o poll.o profil.o quotactl.o \
read.o readlink.o readv.o reboot.o recvfrom.o recvmsg.o rename.o \
revoke.o rmdir.o select.o semget.o semop.o sendmsg.o sendto.o \