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

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
This commit is contained in:
Heiko Carstens 2009-01-14 14:14:30 +01:00
parent 1e7bfb2134
commit 938bb9f5e8
5 changed files with 21 additions and 24 deletions

View file

@ -72,7 +72,7 @@ int set_task_ioprio(struct task_struct *task, int ioprio)
} }
EXPORT_SYMBOL_GPL(set_task_ioprio); EXPORT_SYMBOL_GPL(set_task_ioprio);
asmlinkage long sys_ioprio_set(int which, int who, int ioprio) SYSCALL_DEFINE3(ioprio_set, int, which, int, who, int, ioprio)
{ {
int class = IOPRIO_PRIO_CLASS(ioprio); int class = IOPRIO_PRIO_CLASS(ioprio);
int data = IOPRIO_PRIO_DATA(ioprio); int data = IOPRIO_PRIO_DATA(ioprio);
@ -188,7 +188,7 @@ int ioprio_best(unsigned short aprio, unsigned short bprio)
return aprio; return aprio;
} }
asmlinkage long sys_ioprio_get(int which, int who) SYSCALL_DEFINE2(ioprio_get, int, which, int, who)
{ {
struct task_struct *g, *p; struct task_struct *g, *p;
struct user_struct *user; struct user_struct *user;
@ -252,4 +252,3 @@ asmlinkage long sys_ioprio_get(int which, int who)
read_unlock(&tasklist_lock); read_unlock(&tasklist_lock);
return ret; return ret;
} }

View file

@ -576,7 +576,7 @@ static const struct inotify_operations inotify_user_ops = {
.destroy_watch = free_inotify_user_watch, .destroy_watch = free_inotify_user_watch,
}; };
asmlinkage long sys_inotify_init1(int flags) SYSCALL_DEFINE1(inotify_init1, int, flags)
{ {
struct inotify_device *dev; struct inotify_device *dev;
struct inotify_handle *ih; struct inotify_handle *ih;
@ -655,7 +655,7 @@ out_put_fd:
return ret; return ret;
} }
asmlinkage long sys_inotify_init(void) SYSCALL_DEFINE0(inotify_init)
{ {
return sys_inotify_init1(0); return sys_inotify_init1(0);
} }

View file

@ -1068,10 +1068,9 @@ static int copy_nodes_to_user(unsigned long __user *mask, unsigned long maxnode,
return copy_to_user(mask, nodes_addr(*nodes), copy) ? -EFAULT : 0; return copy_to_user(mask, nodes_addr(*nodes), copy) ? -EFAULT : 0;
} }
asmlinkage long sys_mbind(unsigned long start, unsigned long len, SYSCALL_DEFINE6(mbind, unsigned long, start, unsigned long, len,
unsigned long mode, unsigned long, mode, unsigned long __user *, nmask,
unsigned long __user *nmask, unsigned long maxnode, unsigned long, maxnode, unsigned, flags)
unsigned flags)
{ {
nodemask_t nodes; nodemask_t nodes;
int err; int err;
@ -1091,8 +1090,8 @@ asmlinkage long sys_mbind(unsigned long start, unsigned long len,
} }
/* Set the process memory policy */ /* Set the process memory policy */
asmlinkage long sys_set_mempolicy(int mode, unsigned long __user *nmask, SYSCALL_DEFINE3(set_mempolicy, int, mode, unsigned long __user *, nmask,
unsigned long maxnode) unsigned long, maxnode)
{ {
int err; int err;
nodemask_t nodes; nodemask_t nodes;
@ -1110,9 +1109,9 @@ asmlinkage long sys_set_mempolicy(int mode, unsigned long __user *nmask,
return do_set_mempolicy(mode, flags, &nodes); return do_set_mempolicy(mode, flags, &nodes);
} }
asmlinkage long sys_migrate_pages(pid_t pid, unsigned long maxnode, SYSCALL_DEFINE4(migrate_pages, pid_t, pid, unsigned long, maxnode,
const unsigned long __user *old_nodes, const unsigned long __user *, old_nodes,
const unsigned long __user *new_nodes) const unsigned long __user *, new_nodes)
{ {
const struct cred *cred = current_cred(), *tcred; const struct cred *cred = current_cred(), *tcred;
struct mm_struct *mm; struct mm_struct *mm;
@ -1185,10 +1184,9 @@ out:
/* Retrieve NUMA policy */ /* Retrieve NUMA policy */
asmlinkage long sys_get_mempolicy(int __user *policy, SYSCALL_DEFINE5(get_mempolicy, int __user *, policy,
unsigned long __user *nmask, unsigned long __user *, nmask, unsigned long, maxnode,
unsigned long maxnode, unsigned long, addr, unsigned long, flags)
unsigned long addr, unsigned long flags)
{ {
int err; int err;
int uninitialized_var(pval); int uninitialized_var(pval);

View file

@ -1055,10 +1055,10 @@ out:
* Move a list of pages in the address space of the currently executing * Move a list of pages in the address space of the currently executing
* process. * process.
*/ */
asmlinkage long sys_move_pages(pid_t pid, unsigned long nr_pages, SYSCALL_DEFINE6(move_pages, pid_t, pid, unsigned long, nr_pages,
const void __user * __user *pages, const void __user * __user *, pages,
const int __user *nodes, const int __user *, nodes,
int __user *status, int flags) int __user *, status, int, flags)
{ {
const struct cred *cred = current_cred(), *tcred; const struct cred *cred = current_cred(), *tcred;
struct task_struct *task; struct task_struct *task;

View file

@ -1216,8 +1216,8 @@ long keyctl_get_security(key_serial_t keyid,
/* /*
* the key control system call * the key control system call
*/ */
asmlinkage long sys_keyctl(int option, unsigned long arg2, unsigned long arg3, SYSCALL_DEFINE5(keyctl, int, option, unsigned long, arg2, unsigned long, arg3,
unsigned long arg4, unsigned long arg5) unsigned long, arg4, unsigned long, arg5)
{ {
switch (option) { switch (option) {
case KEYCTL_GET_KEYRING_ID: case KEYCTL_GET_KEYRING_ID: