Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>

+17 -16
+6 -7
fs/open.c
··· 447 447 * We do this by temporarily clearing all FS-related capabilities and 448 448 * switching the fsuid/fsgid around to the real ones. 449 449 */ 450 - asmlinkage long sys_faccessat(int dfd, const char __user *filename, int mode) 450 + SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode) 451 451 { 452 452 const struct cred *old_cred; 453 453 struct cred *override_cred; ··· 628 628 return err; 629 629 } 630 630 631 - asmlinkage long sys_fchmodat(int dfd, const char __user *filename, 632 - mode_t mode) 631 + SYSCALL_DEFINE3(fchmodat, int, dfd, const char __user *, filename, mode_t, mode) 633 632 { 634 633 struct path path; 635 634 struct inode *inode; ··· 706 707 return error; 707 708 } 708 709 709 - asmlinkage long sys_fchownat(int dfd, const char __user *filename, uid_t user, 710 - gid_t group, int flag) 710 + SYSCALL_DEFINE5(fchownat, int, dfd, const char __user *, filename, uid_t, user, 711 + gid_t, group, int, flag) 711 712 { 712 713 struct path path; 713 714 int error = -EINVAL; ··· 1059 1060 return ret; 1060 1061 } 1061 1062 1062 - asmlinkage long sys_openat(int dfd, const char __user *filename, int flags, 1063 - int mode) 1063 + SYSCALL_DEFINE4(openat, int, dfd, const char __user *, filename, int, flags, 1064 + int, mode) 1064 1065 { 1065 1066 long ret; 1066 1067
+6 -6
fs/stat.c
··· 260 260 } 261 261 262 262 #if !defined(__ARCH_WANT_STAT64) || defined(__ARCH_WANT_SYS_NEWFSTATAT) 263 - asmlinkage long sys_newfstatat(int dfd, char __user *filename, 264 - struct stat __user *statbuf, int flag) 263 + SYSCALL_DEFINE4(newfstatat, int, dfd, char __user *, filename, 264 + struct stat __user *, statbuf, int, flag) 265 265 { 266 266 struct kstat stat; 267 267 int error = -EINVAL; ··· 293 293 return error; 294 294 } 295 295 296 - asmlinkage long sys_readlinkat(int dfd, const char __user *pathname, 297 - char __user *buf, int bufsiz) 296 + SYSCALL_DEFINE4(readlinkat, int, dfd, const char __user *, pathname, 297 + char __user *, buf, int, bufsiz) 298 298 { 299 299 struct path path; 300 300 int error; ··· 400 400 return error; 401 401 } 402 402 403 - asmlinkage long sys_fstatat64(int dfd, char __user *filename, 404 - struct stat64 __user *statbuf, int flag) 403 + SYSCALL_DEFINE4(fstatat64, int, dfd, char __user *, filename, 404 + struct stat64 __user *, statbuf, int, flag) 405 405 { 406 406 struct kstat stat; 407 407 int error = -EINVAL;
+4 -2
fs/utimes.c
··· 170 170 return error; 171 171 } 172 172 173 - asmlinkage long sys_utimensat(int dfd, char __user *filename, struct timespec __user *utimes, int flags) 173 + SYSCALL_DEFINE4(utimensat, int, dfd, char __user *, filename, 174 + struct timespec __user *, utimes, int, flags) 174 175 { 175 176 struct timespec tstimes[2]; 176 177 ··· 188 187 return do_utimes(dfd, filename, utimes ? tstimes : NULL, flags); 189 188 } 190 189 191 - asmlinkage long sys_futimesat(int dfd, char __user *filename, struct timeval __user *utimes) 190 + SYSCALL_DEFINE3(futimesat, int, dfd, char __user *, filename, 191 + struct timeval __user *, utimes) 192 192 { 193 193 struct timeval times[2]; 194 194 struct timespec tstimes[2];
+1 -1
kernel/fork.c
··· 1603 1603 * constructed. Here we are modifying the current, active, 1604 1604 * task_struct. 1605 1605 */ 1606 - asmlinkage long sys_unshare(unsigned long unshare_flags) 1606 + SYSCALL_DEFINE1(unshare, unsigned long, unshare_flags) 1607 1607 { 1608 1608 int err = 0; 1609 1609 struct fs_struct *fs, *new_fs = NULL;