提交 3cdad428 编写于 作者: H Heiko Carstens

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

Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
上级 003d7ab4
...@@ -2092,7 +2092,7 @@ char *dentry_path(struct dentry *dentry, char *buf, int buflen) ...@@ -2092,7 +2092,7 @@ char *dentry_path(struct dentry *dentry, char *buf, int buflen)
* return NULL; * return NULL;
* } * }
*/ */
asmlinkage long sys_getcwd(char __user *buf, unsigned long size) SYSCALL_DEFINE2(getcwd, char __user *, buf, unsigned long, size)
{ {
int error; int error;
struct path pwd, root; struct path pwd, root;
......
...@@ -2081,7 +2081,7 @@ asmlinkage long sys_mkdirat(int dfd, const char __user *pathname, int mode) ...@@ -2081,7 +2081,7 @@ asmlinkage long sys_mkdirat(int dfd, const char __user *pathname, int mode)
return error; return error;
} }
asmlinkage long sys_mkdir(const char __user *pathname, int mode) SYSCALL_DEFINE2(mkdir, const char __user *, pathname, int, mode)
{ {
return sys_mkdirat(AT_FDCWD, pathname, mode); return sys_mkdirat(AT_FDCWD, pathname, mode);
} }
...@@ -2195,7 +2195,7 @@ static long do_rmdir(int dfd, const char __user *pathname) ...@@ -2195,7 +2195,7 @@ static long do_rmdir(int dfd, const char __user *pathname)
return error; return error;
} }
asmlinkage long sys_rmdir(const char __user *pathname) SYSCALL_DEFINE1(rmdir, const char __user *, pathname)
{ {
return do_rmdir(AT_FDCWD, pathname); return do_rmdir(AT_FDCWD, pathname);
} }
......
...@@ -522,7 +522,7 @@ SYSCALL_DEFINE2(access, const char __user *, filename, int, mode) ...@@ -522,7 +522,7 @@ SYSCALL_DEFINE2(access, const char __user *, filename, int, mode)
return sys_faccessat(AT_FDCWD, filename, mode); return sys_faccessat(AT_FDCWD, filename, mode);
} }
asmlinkage long sys_chdir(const char __user * filename) SYSCALL_DEFINE1(chdir, const char __user *, filename)
{ {
struct path path; struct path path;
int error; int error;
...@@ -543,7 +543,7 @@ asmlinkage long sys_chdir(const char __user * filename) ...@@ -543,7 +543,7 @@ asmlinkage long sys_chdir(const char __user * filename)
return error; return error;
} }
asmlinkage long sys_fchdir(unsigned int fd) SYSCALL_DEFINE1(fchdir, unsigned int, fd)
{ {
struct file *file; struct file *file;
struct inode *inode; struct inode *inode;
......
...@@ -371,7 +371,8 @@ static inline struct super_block *quotactl_block(const char __user *special) ...@@ -371,7 +371,8 @@ static inline struct super_block *quotactl_block(const char __user *special)
* calls. Maybe we need to add the process quotas etc. in the future, * calls. Maybe we need to add the process quotas etc. in the future,
* but we probably should use rlimits for that. * but we probably should use rlimits for that.
*/ */
asmlinkage long sys_quotactl(unsigned int cmd, const char __user *special, qid_t id, void __user *addr) SYSCALL_DEFINE4(quotactl, unsigned int, cmd, const char __user *, special,
qid_t, id, void __user *, addr)
{ {
uint cmds, type; uint cmds, type;
struct super_block *sb = NULL; struct super_block *sb = NULL;
......
...@@ -369,7 +369,7 @@ static inline void file_pos_write(struct file *file, loff_t pos) ...@@ -369,7 +369,7 @@ static inline void file_pos_write(struct file *file, loff_t pos)
file->f_pos = pos; file->f_pos = pos;
} }
asmlinkage long sys_read(unsigned int fd, char __user * buf, size_t count) SYSCALL_DEFINE3(read, unsigned int, fd, char __user *, buf, size_t, count)
{ {
struct file *file; struct file *file;
ssize_t ret = -EBADF; ssize_t ret = -EBADF;
...@@ -386,7 +386,8 @@ asmlinkage long sys_read(unsigned int fd, char __user * buf, size_t count) ...@@ -386,7 +386,8 @@ asmlinkage long sys_read(unsigned int fd, char __user * buf, size_t count)
return ret; return ret;
} }
asmlinkage long sys_write(unsigned int fd, const char __user * buf, size_t count) SYSCALL_DEFINE3(write, unsigned int, fd, const char __user *, buf,
size_t, count)
{ {
struct file *file; struct file *file;
ssize_t ret = -EBADF; ssize_t ret = -EBADF;
...@@ -688,8 +689,8 @@ ssize_t vfs_writev(struct file *file, const struct iovec __user *vec, ...@@ -688,8 +689,8 @@ ssize_t vfs_writev(struct file *file, const struct iovec __user *vec,
EXPORT_SYMBOL(vfs_writev); EXPORT_SYMBOL(vfs_writev);
asmlinkage long SYSCALL_DEFINE3(readv, unsigned long, fd, const struct iovec __user *, vec,
sys_readv(unsigned long fd, const struct iovec __user *vec, unsigned long vlen) unsigned long, vlen)
{ {
struct file *file; struct file *file;
ssize_t ret = -EBADF; ssize_t ret = -EBADF;
...@@ -709,8 +710,8 @@ sys_readv(unsigned long fd, const struct iovec __user *vec, unsigned long vlen) ...@@ -709,8 +710,8 @@ sys_readv(unsigned long fd, const struct iovec __user *vec, unsigned long vlen)
return ret; return ret;
} }
asmlinkage long SYSCALL_DEFINE3(writev, unsigned long, fd, const struct iovec __user *, vec,
sys_writev(unsigned long fd, const struct iovec __user *vec, unsigned long vlen) unsigned long, vlen)
{ {
struct file *file; struct file *file;
ssize_t ret = -EBADF; ssize_t ret = -EBADF;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册