Commit 2e4d0924 authored by Heiko Carstens's avatar Heiko Carstens

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

Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
parent 938bb9f5
...@@ -1962,8 +1962,8 @@ static int may_mknod(mode_t mode) ...@@ -1962,8 +1962,8 @@ static int may_mknod(mode_t mode)
} }
} }
asmlinkage long sys_mknodat(int dfd, const char __user *filename, int mode, SYSCALL_DEFINE4(mknodat, int, dfd, const char __user *, filename, int, mode,
unsigned dev) unsigned, dev)
{ {
int error; int error;
char *tmp; char *tmp;
...@@ -2044,7 +2044,7 @@ int vfs_mkdir(struct inode *dir, struct dentry *dentry, int mode) ...@@ -2044,7 +2044,7 @@ int vfs_mkdir(struct inode *dir, struct dentry *dentry, int mode)
return error; return error;
} }
asmlinkage long sys_mkdirat(int dfd, const char __user *pathname, int mode) SYSCALL_DEFINE3(mkdirat, int, dfd, const char __user *, pathname, int, mode)
{ {
int error = 0; int error = 0;
char * tmp; char * tmp;
...@@ -2291,7 +2291,7 @@ slashes: ...@@ -2291,7 +2291,7 @@ slashes:
goto exit2; goto exit2;
} }
asmlinkage long sys_unlinkat(int dfd, const char __user *pathname, int flag) SYSCALL_DEFINE3(unlinkat, int, dfd, const char __user *, pathname, int, flag)
{ {
if ((flag & ~AT_REMOVEDIR) != 0) if ((flag & ~AT_REMOVEDIR) != 0)
return -EINVAL; return -EINVAL;
...@@ -2328,8 +2328,8 @@ int vfs_symlink(struct inode *dir, struct dentry *dentry, const char *oldname) ...@@ -2328,8 +2328,8 @@ int vfs_symlink(struct inode *dir, struct dentry *dentry, const char *oldname)
return error; return error;
} }
asmlinkage long sys_symlinkat(const char __user *oldname, SYSCALL_DEFINE3(symlinkat, const char __user *, oldname,
int newdfd, const char __user *newname) int, newdfd, const char __user *, newname)
{ {
int error; int error;
char *from; char *from;
...@@ -2422,9 +2422,8 @@ int vfs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *new_de ...@@ -2422,9 +2422,8 @@ int vfs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *new_de
* with linux 2.0, and to avoid hard-linking to directories * with linux 2.0, and to avoid hard-linking to directories
* and other special files. --ADM * and other special files. --ADM
*/ */
asmlinkage long sys_linkat(int olddfd, const char __user *oldname, SYSCALL_DEFINE5(linkat, int, olddfd, const char __user *, oldname,
int newdfd, const char __user *newname, int, newdfd, const char __user *, newname, int, flags)
int flags)
{ {
struct dentry *new_dentry; struct dentry *new_dentry;
struct nameidata nd; struct nameidata nd;
...@@ -2624,8 +2623,8 @@ int vfs_rename(struct inode *old_dir, struct dentry *old_dentry, ...@@ -2624,8 +2623,8 @@ int vfs_rename(struct inode *old_dir, struct dentry *old_dentry,
return error; return error;
} }
asmlinkage long sys_renameat(int olddfd, const char __user *oldname, SYSCALL_DEFINE4(renameat, int, olddfd, const char __user *, oldname,
int newdfd, const char __user *newname) int, newdfd, const char __user *, newname)
{ {
struct dentry *old_dir, *new_dir; struct dentry *old_dir, *new_dir;
struct dentry *old_dentry, *new_dentry; struct dentry *old_dentry, *new_dentry;
......
...@@ -660,7 +660,8 @@ SYSCALL_DEFINE0(inotify_init) ...@@ -660,7 +660,8 @@ SYSCALL_DEFINE0(inotify_init)
return sys_inotify_init1(0); return sys_inotify_init1(0);
} }
asmlinkage long sys_inotify_add_watch(int fd, const char __user *pathname, u32 mask) SYSCALL_DEFINE3(inotify_add_watch, int, fd, const char __user *, pathname,
u32, mask)
{ {
struct inode *inode; struct inode *inode;
struct inotify_device *dev; struct inotify_device *dev;
...@@ -704,7 +705,7 @@ fput_and_out: ...@@ -704,7 +705,7 @@ fput_and_out:
return ret; return ret;
} }
asmlinkage long sys_inotify_rm_watch(int fd, __s32 wd) SYSCALL_DEFINE2(inotify_rm_watch, int, fd, __s32, wd)
{ {
struct file *filp; struct file *filp;
struct inotify_device *dev; struct inotify_device *dev;
......
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