sigset_t change (part 1 of 5)

-----------------------------

Rename sigaction, sigprocmask, sigpending and sigsuspend to
osigaction, osigprocmask, osigpending and osigsuspend (resp)
and add new syscalls for them to support the new sisgset_t
without breaking existing binaries.

Change the prototype of sigaltstack to use the typedef stack_t
instead of struct sigaltstack to reflect that it is SUSv2
compliant.

Also, rename sigreturn to osigreturn and add a new syscall
to support the modified stackframe. The change is caused by
sigreturn operating on ucontext_t now and the fact that
siginfo_t has been updated to conform to SUSv2.
This commit is contained in:
marcel 1999-09-29 15:01:21 +00:00
parent 104201a6c3
commit a77a86a323

View File

@ -93,19 +93,18 @@
size_t offset, u_int scale); }
45 STD BSD { int ktrace(const char *fname, int ops, int facs, \
int pid); }
46 STD POSIX { int sigaction(int signum, struct sigaction *nsa, \
struct sigaction *osa); }
46 STD POSIX { int osigaction(int signum, struct osigaction *nsa, \
struct osigaction *osa); }
47 STD POSIX { gid_t getgid(void); }
48 STD POSIX { int sigprocmask(int how, sigset_t mask); }
48 STD POSIX { int osigprocmask(int how, osigset_t mask); }
; XXX note nonstandard (bogus) calling convention - the libc stub passes
; us the mask, not a pointer to it, and we return the old mask as the
; (int) return value.
49 STD BSD { int getlogin(char *namebuf, u_int namelen); }
50 STD BSD { int setlogin(char *namebuf); }
51 STD BSD { int acct(char *path); }
52 STD POSIX { int sigpending(void); }
53 STD BSD { int sigaltstack(struct sigaltstack *nss, \
struct sigaltstack *oss); }
52 STD POSIX { int osigpending(void); }
53 STD BSD { int sigaltstack(stack_t *ss, stack_t *oss); }
54 STD POSIX { int ioctl(int fd, u_long com, caddr_t data); }
55 STD BSD { int reboot(int opt); }
56 STD POSIX { int revoke(char *path); }
@ -167,7 +166,7 @@
100 STD BSD { int getpriority(int which, int who); }
101 COMPAT BSD { int send(int s, caddr_t buf, int len, int flags); }
102 COMPAT BSD { int recv(int s, caddr_t buf, int len, int flags); }
103 STD BSD { int sigreturn(struct sigcontext *sigcntxp); }
103 STD BSD { int osigreturn(struct osigcontext *sigcntxp); }
104 STD BSD { int bind(int s, caddr_t name, int namelen); }
105 STD BSD { int setsockopt(int s, int level, int name, \
caddr_t val, int valsize); }
@ -177,7 +176,7 @@
struct sigvec *osv); }
109 COMPAT BSD { int sigblock(int mask); }
110 COMPAT BSD { int sigsetmask(int mask); }
111 STD POSIX { int sigsuspend(sigset_t mask); }
111 STD POSIX { int osigsuspend(osigset_t mask); }
; XXX note nonstandard (bogus) calling convention - the libc stub passes
; us the mask, not a pointer to it.
112 COMPAT BSD { int sigstack(struct sigstack *nss, \
@ -477,3 +476,12 @@
337 STD BSD { int kldsym(int fileid, int cmd, void *data); }
338 STD BSD { int jail(struct jail *jail); }
339 UNIMPL BSD pioctl
340 STD POSIX { int sigprocmask(int how, const sigset_t *set, \
sigset_t *oset); }
341 STD POSIX { int sigsuspend(const sigset_t *sigmask); }
342 STD POSIX { int sigaction(int sig, const struct sigaction *act, \
struct sigaction *oact); }
343 STD POSIX { int sigpending(sigset_t *set); }
344 STD BSD { int sigreturn(ucontext_t *sigcntxp); }
345 UNIMPL NOHIDE sigtimedwait
346 UNIMPL NOHIDE sigwaitinfo