diff options
author | marcel <marcel@FreeBSD.org> | 1999-08-14 17:28:46 +0000 |
---|---|---|
committer | marcel <marcel@FreeBSD.org> | 1999-08-14 17:28:46 +0000 |
commit | 195c2867a7981b012681e6b20ea15c73c451b503 (patch) | |
tree | accd80df8d7633ca8b19237e620cdd355e233dcc /sys/i386/linux/linux_proto.h | |
parent | ac3a4d6b97e4fdfa5ef88b63c02630ab97d7e175 (diff) | |
download | FreeBSD-src-195c2867a7981b012681e6b20ea15c73c451b503.zip FreeBSD-src-195c2867a7981b012681e6b20ea15c73c451b503.tar.gz |
Implementation of linux_rt_sigaction and linux_rt_sigprocmask syscalls. Both
functions use the new sigset_t and sigaction_t which allows support for more
than 32 signals. Only the lower 32 signals are supported for now.
linux_rt_sigaction, linux_sigaction and linux_signal use linux_do_sigaction
to do the actual work. That way unnecessary redundancy is avoided. The same
has been done for linux_rt_sigprocmask and linux_sigprocmask. They call
linux_do_sigprocmask to do the actual work.
Diffstat (limited to 'sys/i386/linux/linux_proto.h')
-rw-r--r-- | sys/i386/linux/linux_proto.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/sys/i386/linux/linux_proto.h b/sys/i386/linux/linux_proto.h index 0729eee..78b66e8 100644 --- a/sys/i386/linux/linux_proto.h +++ b/sys/i386/linux/linux_proto.h @@ -2,7 +2,7 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * created from Id: syscalls.master,v 1.18 1999/08/12 19:51:03 marcel Exp + * created from Id: syscalls.master,v 1.19 1999/08/14 17:14:13 marcel Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -394,6 +394,18 @@ struct linux_mremap_args { int new_len; char new_len_[PAD_(int)]; int flags; char flags_[PAD_(int)]; }; +struct linux_rt_sigaction_args { + int sig; char sig_[PAD_(int)]; + struct linux_new_sigaction * act; char act_[PAD_(struct linux_new_sigaction *)]; + struct linux_new_sigaction * oact; char oact_[PAD_(struct linux_new_sigaction *)]; + size_t sigsetsize; char sigsetsize_[PAD_(size_t)]; +}; +struct linux_rt_sigprocmask_args { + int how; char how_[PAD_(int)]; + struct linux_new_sigset * mask; char mask_[PAD_(struct linux_new_sigset *)]; + struct linux_new_sigset * omask; char omask_[PAD_(struct linux_new_sigset *)]; + size_t sigsetsize; char sigsetsize_[PAD_(size_t)]; +}; struct linux_chown_args { char * path; char path_[PAD_(char *)]; int uid; char uid_[PAD_(int)]; @@ -499,6 +511,8 @@ int linux_getdents __P((struct proc *, struct linux_getdents_args *)); int linux_newselect __P((struct proc *, struct linux_newselect_args *)); int linux_msync __P((struct proc *, struct linux_msync_args *)); int linux_mremap __P((struct proc *, struct linux_mremap_args *)); +int linux_rt_sigaction __P((struct proc *, struct linux_rt_sigaction_args *)); +int linux_rt_sigprocmask __P((struct proc *, struct linux_rt_sigprocmask_args *)); int linux_chown __P((struct proc *, struct linux_chown_args *)); #ifdef COMPAT_43 |