Commit 002c8976 authored by Heiko Carstens's avatar Heiko Carstens

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

Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
parent a26eab24
...@@ -1270,7 +1270,7 @@ static void io_destroy(struct kioctx *ioctx) ...@@ -1270,7 +1270,7 @@ static void io_destroy(struct kioctx *ioctx)
* pointer is passed for ctxp. Will fail with -ENOSYS if not * pointer is passed for ctxp. Will fail with -ENOSYS if not
* implemented. * implemented.
*/ */
asmlinkage long sys_io_setup(unsigned nr_events, aio_context_t __user *ctxp) SYSCALL_DEFINE2(io_setup, unsigned, nr_events, aio_context_t __user *, ctxp)
{ {
struct kioctx *ioctx = NULL; struct kioctx *ioctx = NULL;
unsigned long ctx; unsigned long ctx;
...@@ -1308,7 +1308,7 @@ out: ...@@ -1308,7 +1308,7 @@ out:
* implemented. May fail with -EFAULT if the context pointed to * implemented. May fail with -EFAULT if the context pointed to
* is invalid. * is invalid.
*/ */
asmlinkage long sys_io_destroy(aio_context_t ctx) SYSCALL_DEFINE1(io_destroy, aio_context_t, ctx)
{ {
struct kioctx *ioctx = lookup_ioctx(ctx); struct kioctx *ioctx = lookup_ioctx(ctx);
if (likely(NULL != ioctx)) { if (likely(NULL != ioctx)) {
...@@ -1662,8 +1662,8 @@ out_put_req: ...@@ -1662,8 +1662,8 @@ out_put_req:
* are available to queue any iocbs. Will return 0 if nr is 0. Will * are available to queue any iocbs. Will return 0 if nr is 0. Will
* fail with -ENOSYS if not implemented. * fail with -ENOSYS if not implemented.
*/ */
asmlinkage long sys_io_submit(aio_context_t ctx_id, long nr, SYSCALL_DEFINE3(io_submit, aio_context_t, ctx_id, long, nr,
struct iocb __user * __user *iocbpp) struct iocb __user * __user *, iocbpp)
{ {
struct kioctx *ctx; struct kioctx *ctx;
long ret = 0; long ret = 0;
...@@ -1737,8 +1737,8 @@ static struct kiocb *lookup_kiocb(struct kioctx *ctx, struct iocb __user *iocb, ...@@ -1737,8 +1737,8 @@ static struct kiocb *lookup_kiocb(struct kioctx *ctx, struct iocb __user *iocb,
* invalid. May fail with -EAGAIN if the iocb specified was not * invalid. May fail with -EAGAIN if the iocb specified was not
* cancelled. Will fail with -ENOSYS if not implemented. * cancelled. Will fail with -ENOSYS if not implemented.
*/ */
asmlinkage long sys_io_cancel(aio_context_t ctx_id, struct iocb __user *iocb, SYSCALL_DEFINE3(io_cancel, aio_context_t, ctx_id, struct iocb __user *, iocb,
struct io_event __user *result) struct io_event __user *, result)
{ {
int (*cancel)(struct kiocb *iocb, struct io_event *res); int (*cancel)(struct kiocb *iocb, struct io_event *res);
struct kioctx *ctx; struct kioctx *ctx;
...@@ -1799,11 +1799,11 @@ asmlinkage long sys_io_cancel(aio_context_t ctx_id, struct iocb __user *iocb, ...@@ -1799,11 +1799,11 @@ asmlinkage long sys_io_cancel(aio_context_t ctx_id, struct iocb __user *iocb,
* will be updated if not NULL and the operation blocks. Will fail * will be updated if not NULL and the operation blocks. Will fail
* with -ENOSYS if not implemented. * with -ENOSYS if not implemented.
*/ */
asmlinkage long sys_io_getevents(aio_context_t ctx_id, SYSCALL_DEFINE5(io_getevents, aio_context_t, ctx_id,
long min_nr, long, min_nr,
long nr, long, nr,
struct io_event __user *events, struct io_event __user *, events,
struct timespec __user *timeout) struct timespec __user *, timeout)
{ {
struct kioctx *ioctx = lookup_ioctx(ctx_id); struct kioctx *ioctx = lookup_ioctx(ctx_id);
long ret = -EINVAL; long ret = -EINVAL;
......
...@@ -1564,7 +1564,7 @@ EXPORT_SYMBOL(flock_lock_file_wait); ...@@ -1564,7 +1564,7 @@ EXPORT_SYMBOL(flock_lock_file_wait);
* %LOCK_MAND can be combined with %LOCK_READ or %LOCK_WRITE to allow other * %LOCK_MAND can be combined with %LOCK_READ or %LOCK_WRITE to allow other
* processes read and write access respectively. * processes read and write access respectively.
*/ */
asmlinkage long sys_flock(unsigned int fd, unsigned int cmd) SYSCALL_DEFINE2(flock, unsigned int, fd, unsigned int, cmd)
{ {
struct file *filp; struct file *filp;
struct file_lock *lock; struct file_lock *lock;
......
...@@ -1081,7 +1081,7 @@ asmlinkage long sys_openat(int dfd, const char __user *filename, int flags, ...@@ -1081,7 +1081,7 @@ asmlinkage long sys_openat(int dfd, const char __user *filename, int flags,
* For backward compatibility? Maybe this should be moved * For backward compatibility? Maybe this should be moved
* into arch/i386 instead? * into arch/i386 instead?
*/ */
asmlinkage long sys_creat(const char __user * pathname, int mode) SYSCALL_DEFINE2(creat, const char __user *, pathname, int, mode)
{ {
return sys_open(pathname, O_CREAT | O_WRONLY | O_TRUNC, mode); return sys_open(pathname, O_CREAT | O_WRONLY | O_TRUNC, mode);
} }
......
...@@ -828,7 +828,7 @@ out: ...@@ -828,7 +828,7 @@ out:
return retval; return retval;
} }
asmlinkage long sys_sendfile(int out_fd, int in_fd, off_t __user *offset, size_t count) SYSCALL_DEFINE4(sendfile, int, out_fd, int, in_fd, off_t __user *, offset, size_t, count)
{ {
loff_t pos; loff_t pos;
off_t off; off_t off;
...@@ -847,7 +847,7 @@ asmlinkage long sys_sendfile(int out_fd, int in_fd, off_t __user *offset, size_t ...@@ -847,7 +847,7 @@ asmlinkage long sys_sendfile(int out_fd, int in_fd, off_t __user *offset, size_t
return do_sendfile(out_fd, in_fd, NULL, count, 0); return do_sendfile(out_fd, in_fd, NULL, count, 0);
} }
asmlinkage long sys_sendfile64(int out_fd, int in_fd, loff_t __user *offset, size_t count) SYSCALL_DEFINE4(sendfile64, int, out_fd, int, in_fd, loff_t __user *, offset, size_t, count)
{ {
loff_t pos; loff_t pos;
ssize_t ret; ssize_t ret;
......
...@@ -320,8 +320,8 @@ asmlinkage long sys_readlinkat(int dfd, const char __user *pathname, ...@@ -320,8 +320,8 @@ asmlinkage long sys_readlinkat(int dfd, const char __user *pathname,
return error; return error;
} }
asmlinkage long sys_readlink(const char __user *path, char __user *buf, SYSCALL_DEFINE3(readlink, const char __user *, path, char __user *, buf,
int bufsiz) int, bufsiz)
{ {
return sys_readlinkat(AT_FDCWD, path, buf, bufsiz); return sys_readlinkat(AT_FDCWD, path, buf, bufsiz);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment