[CVE-2009-0029] System call wrappers part 31

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
This commit is contained in:
Heiko Carstens 2009-01-14 14:14:33 +01:00
parent 6559eed8ca
commit 836f92adf1
5 changed files with 21 additions and 22 deletions

View file

@ -205,8 +205,8 @@ static const struct file_operations signalfd_fops = {
.read = signalfd_read, .read = signalfd_read,
}; };
asmlinkage long sys_signalfd4(int ufd, sigset_t __user *user_mask, SYSCALL_DEFINE4(signalfd4, int, ufd, sigset_t __user *, user_mask,
size_t sizemask, int flags) size_t, sizemask, int, flags)
{ {
sigset_t sigmask; sigset_t sigmask;
struct signalfd_ctx *ctx; struct signalfd_ctx *ctx;
@ -259,8 +259,8 @@ asmlinkage long sys_signalfd4(int ufd, sigset_t __user *user_mask,
return ufd; return ufd;
} }
asmlinkage long sys_signalfd(int ufd, sigset_t __user *user_mask, SYSCALL_DEFINE3(signalfd, int, ufd, sigset_t __user *, user_mask,
size_t sizemask) size_t, sizemask)
{ {
return sys_signalfd4(ufd, user_mask, sizemask, 0); return sys_signalfd4(ufd, user_mask, sizemask, 0);
} }

View file

@ -1435,8 +1435,8 @@ static long vmsplice_to_pipe(struct file *file, const struct iovec __user *iov,
* Currently we punt and implement it as a normal copy, see pipe_to_user(). * Currently we punt and implement it as a normal copy, see pipe_to_user().
* *
*/ */
asmlinkage long sys_vmsplice(int fd, const struct iovec __user *iov, SYSCALL_DEFINE4(vmsplice, int, fd, const struct iovec __user *, iov,
unsigned long nr_segs, unsigned int flags) unsigned long, nr_segs, unsigned int, flags)
{ {
struct file *file; struct file *file;
long error; long error;
@ -1461,9 +1461,9 @@ asmlinkage long sys_vmsplice(int fd, const struct iovec __user *iov,
return error; return error;
} }
asmlinkage long sys_splice(int fd_in, loff_t __user *off_in, SYSCALL_DEFINE6(splice, int, fd_in, loff_t __user *, off_in,
int fd_out, loff_t __user *off_out, int, fd_out, loff_t __user *, off_out,
size_t len, unsigned int flags) size_t, len, unsigned int, flags)
{ {
long error; long error;
struct file *in, *out; struct file *in, *out;
@ -1685,7 +1685,7 @@ static long do_tee(struct file *in, struct file *out, size_t len,
return ret; return ret;
} }
asmlinkage long sys_tee(int fdin, int fdout, size_t len, unsigned int flags) SYSCALL_DEFINE4(tee, int, fdin, int, fdout, size_t, len, unsigned int, flags)
{ {
struct file *in; struct file *in;
int error, fput_in; int error, fput_in;

View file

@ -177,7 +177,7 @@ static struct file *timerfd_fget(int fd)
return file; return file;
} }
asmlinkage long sys_timerfd_create(int clockid, int flags) SYSCALL_DEFINE2(timerfd_create, int, clockid, int, flags)
{ {
int ufd; int ufd;
struct timerfd_ctx *ctx; struct timerfd_ctx *ctx;
@ -208,9 +208,9 @@ asmlinkage long sys_timerfd_create(int clockid, int flags)
return ufd; return ufd;
} }
asmlinkage long sys_timerfd_settime(int ufd, int flags, SYSCALL_DEFINE4(timerfd_settime, int, ufd, int, flags,
const struct itimerspec __user *utmr, const struct itimerspec __user *, utmr,
struct itimerspec __user *otmr) struct itimerspec __user *, otmr)
{ {
struct file *file; struct file *file;
struct timerfd_ctx *ctx; struct timerfd_ctx *ctx;

View file

@ -1733,9 +1733,8 @@ pi_faulted:
* @head: pointer to the list-head * @head: pointer to the list-head
* @len: length of the list-head, as userspace expects * @len: length of the list-head, as userspace expects
*/ */
asmlinkage long SYSCALL_DEFINE2(set_robust_list, struct robust_list_head __user *, head,
sys_set_robust_list(struct robust_list_head __user *head, size_t, len)
size_t len)
{ {
if (!futex_cmpxchg_enabled) if (!futex_cmpxchg_enabled)
return -ENOSYS; return -ENOSYS;
@ -1756,9 +1755,9 @@ sys_set_robust_list(struct robust_list_head __user *head,
* @head_ptr: pointer to a list-head pointer, the kernel fills it in * @head_ptr: pointer to a list-head pointer, the kernel fills it in
* @len_ptr: pointer to a length field, the kernel fills in the header size * @len_ptr: pointer to a length field, the kernel fills in the header size
*/ */
asmlinkage long SYSCALL_DEFINE3(get_robust_list, int, pid,
sys_get_robust_list(int pid, struct robust_list_head __user * __user *head_ptr, struct robust_list_head __user * __user *, head_ptr,
size_t __user *len_ptr) size_t __user *, len_ptr)
{ {
struct robust_list_head __user *head; struct robust_list_head __user *head;
unsigned long ret; unsigned long ret;

View file

@ -1817,8 +1817,8 @@ SYSCALL_DEFINE5(prctl, int, option, unsigned long, arg2, unsigned long, arg3,
return error; return error;
} }
asmlinkage long sys_getcpu(unsigned __user *cpup, unsigned __user *nodep, SYSCALL_DEFINE3(getcpu, unsigned __user *, cpup, unsigned __user *, nodep,
struct getcpu_cache __user *unused) struct getcpu_cache __user *, unused)
{ {
int err = 0; int err = 0;
int cpu = raw_smp_processor_id(); int cpu = raw_smp_processor_id();