diff options
author | 1998-08-07 01:44:01 +0000 | |
---|---|---|
committer | 1998-08-07 01:44:01 +0000 | |
commit | ee4ffbe68aa25bcf6cee967eb9998c2b1d52f4bb (patch) | |
tree | 877367029fedfd8b373070008d3dc02d00cb8eb8 | |
parent | changes to shrink compressed ramdisk size so that it would fit on floppy. (diff) | |
download | wireguard-openbsd-ee4ffbe68aa25bcf6cee967eb9998c2b1d52f4bb.tar.xz wireguard-openbsd-ee4ffbe68aa25bcf6cee967eb9998c2b1d52f4bb.zip |
Add correct handling of more systemcalls. either not implemented before
or poorly implemented.
-rw-r--r-- | lib/libc/arch/powerpc/sys/exect.S | 23 | ||||
-rw-r--r-- | lib/libc/arch/powerpc/sys/ptrace.S | 13 | ||||
-rw-r--r-- | lib/libc/arch/powerpc/sys/reboot.S | 1 | ||||
-rw-r--r-- | lib/libc/arch/powerpc/sys/setlogin.S | 1 | ||||
-rw-r--r-- | lib/libc/arch/powerpc/sys/sigpending.S | 12 | ||||
-rw-r--r-- | lib/libc/arch/powerpc/sys/sigreturn.S | 3 |
6 files changed, 47 insertions, 6 deletions
diff --git a/lib/libc/arch/powerpc/sys/exect.S b/lib/libc/arch/powerpc/sys/exect.S index 31307cc3f2e..46108f9d7b3 100644 --- a/lib/libc/arch/powerpc/sys/exect.S +++ b/lib/libc/arch/powerpc/sys/exect.S @@ -1 +1,22 @@ -/* rubbish */ +/* + * COPYRIGHT + */ +#if defined(SYSLIBC_SCCS) + .text + .asciz "$OpenBSD: exect.S,v 1.2 1998/08/07 01:44:01 rahnds Exp $" +#endif /* SYSLIBC_SCCS */ + +#include "SYS.h" + + .text +PSEUDO_PREFIX(exect,execve) + sc + + /* check for error */ + cmpwi 0, 0 + beq+ exect_ok /* OK so this is stupid but I haven't read b */ + b cerror + + /* update, curbrk and return */ +exect_ok: + blr diff --git a/lib/libc/arch/powerpc/sys/ptrace.S b/lib/libc/arch/powerpc/sys/ptrace.S index 31307cc3f2e..93627bd0f11 100644 --- a/lib/libc/arch/powerpc/sys/ptrace.S +++ b/lib/libc/arch/powerpc/sys/ptrace.S @@ -1 +1,12 @@ -/* rubbish */ +/* int ptrace(int *mask) */ + +#include "SYS.h" + + .text +PREFIX(ptrace) + sc + cmpwi 0, 0 + beq ok + b cerror +ok: + blr diff --git a/lib/libc/arch/powerpc/sys/reboot.S b/lib/libc/arch/powerpc/sys/reboot.S index 8063167c8d4..09a34c91815 100644 --- a/lib/libc/arch/powerpc/sys/reboot.S +++ b/lib/libc/arch/powerpc/sys/reboot.S @@ -1,3 +1,2 @@ -/* rubbish */ #include <SYS.h> RSYSCALL(reboot) diff --git a/lib/libc/arch/powerpc/sys/setlogin.S b/lib/libc/arch/powerpc/sys/setlogin.S index 793c846e047..8f8ea689bc0 100644 --- a/lib/libc/arch/powerpc/sys/setlogin.S +++ b/lib/libc/arch/powerpc/sys/setlogin.S @@ -1,4 +1,3 @@ -/* rubbish */ #include "SYS.h" .extern __logname_valid RSYSCALL(setlogin) diff --git a/lib/libc/arch/powerpc/sys/sigpending.S b/lib/libc/arch/powerpc/sys/sigpending.S index 31307cc3f2e..5b445d2c299 100644 --- a/lib/libc/arch/powerpc/sys/sigpending.S +++ b/lib/libc/arch/powerpc/sys/sigpending.S @@ -1 +1,11 @@ -/* rubbish */ +/* + * COPYRIGHT + */ +#if defined(SYSLIBC_SCCS) + .text + .asciz "$OpenBSD: sigpending.S,v 1.2 1998/08/07 01:44:06 rahnds Exp $" +#endif /* SYSLIBC_SCCS */ + +#include "SYS.h" + +RSYSCALL(sigpending) diff --git a/lib/libc/arch/powerpc/sys/sigreturn.S b/lib/libc/arch/powerpc/sys/sigreturn.S index 31307cc3f2e..2a75ad341f2 100644 --- a/lib/libc/arch/powerpc/sys/sigreturn.S +++ b/lib/libc/arch/powerpc/sys/sigreturn.S @@ -1 +1,2 @@ -/* rubbish */ +#include <SYS.h> +RSYSCALL(sigreturn) |