Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 754fe8d2 authored by Heiko Carstens's avatar Heiko Carstens
Browse files

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

parent 5add95d4
Loading
Loading
Loading
Loading
+4 −4
Original line number Original line Diff line number Diff line
@@ -1141,7 +1141,7 @@ NORET_TYPE void complete_and_exit(struct completion *comp, long code)


EXPORT_SYMBOL(complete_and_exit);
EXPORT_SYMBOL(complete_and_exit);


asmlinkage long sys_exit(int error_code)
SYSCALL_DEFINE1(exit, int, error_code)
{
{
	do_exit((error_code&0xff)<<8);
	do_exit((error_code&0xff)<<8);
}
}
@@ -1182,7 +1182,7 @@ do_group_exit(int exit_code)
 * wait4()-ing process will get the correct exit code - even if this
 * wait4()-ing process will get the correct exit code - even if this
 * thread is not the thread group leader.
 * thread is not the thread group leader.
 */
 */
asmlinkage long sys_exit_group(int error_code)
SYSCALL_DEFINE1(exit_group, int, error_code)
{
{
	do_group_exit((error_code & 0xff) << 8);
	do_group_exit((error_code & 0xff) << 8);
	/* NOTREACHED */
	/* NOTREACHED */
@@ -1795,8 +1795,8 @@ asmlinkage long sys_waitid(int which, pid_t upid,
	return ret;
	return ret;
}
}


asmlinkage long sys_wait4(pid_t upid, int __user *stat_addr,
SYSCALL_DEFINE4(wait4, pid_t, upid, int __user *, stat_addr,
			  int options, struct rusage __user *ru)
		int, options, struct rusage __user *, ru)
{
{
	struct pid *pid = NULL;
	struct pid *pid = NULL;
	enum pid_type type;
	enum pid_type type;
+2 −3
Original line number Original line Diff line number Diff line
@@ -934,9 +934,8 @@ struct kimage *kexec_crash_image;


static DEFINE_MUTEX(kexec_mutex);
static DEFINE_MUTEX(kexec_mutex);


asmlinkage long sys_kexec_load(unsigned long entry, unsigned long nr_segments,
SYSCALL_DEFINE4(kexec_load, unsigned long, entry, unsigned long, nr_segments,
				struct kexec_segment __user *segments,
		struct kexec_segment __user *, segments, unsigned long, flags)
				unsigned long flags)
{
{
	struct kimage **dest_image, *image;
	struct kimage **dest_image, *image;
	int result;
	int result;
+2 −2
Original line number Original line Diff line number Diff line
@@ -5869,8 +5869,8 @@ SYSCALL_DEFINE1(sched_get_priority_min, int, policy)
 * this syscall writes the default timeslice value of a given process
 * this syscall writes the default timeslice value of a given process
 * into the user-space timespec buffer. A value of '0' means infinity.
 * into the user-space timespec buffer. A value of '0' means infinity.
 */
 */
asmlinkage
SYSCALL_DEFINE4(sched_rr_get_interval, pid_t, pid,
long sys_sched_rr_get_interval(pid_t pid, struct timespec __user *interval)
		struct timespec __user *, interval)
{
{
	struct task_struct *p;
	struct task_struct *p;
	unsigned int time_slice;
	unsigned int time_slice;
+1 −1
Original line number Original line Diff line number Diff line
@@ -1961,7 +1961,7 @@ EXPORT_SYMBOL(unblock_all_signals);
 * System call entry points.
 * System call entry points.
 */
 */


asmlinkage long sys_restart_syscall(void)
SYSCALL_DEFINE0(restart_syscall)
{
{
	struct restart_block *restart = &current_thread_info()->restart_block;
	struct restart_block *restart = &current_thread_info()->restart_block;
	return restart->fn(restart);
	return restart->fn(restart);
+4 −3
Original line number Original line Diff line number Diff line
@@ -143,7 +143,7 @@ static int set_one_prio(struct task_struct *p, int niceval, int error)
	return error;
	return error;
}
}


asmlinkage long sys_setpriority(int which, int who, int niceval)
SYSCALL_DEFINE3(setpriority, int, which, int, who, int, niceval)
{
{
	struct task_struct *g, *p;
	struct task_struct *g, *p;
	struct user_struct *user;
	struct user_struct *user;
@@ -208,7 +208,7 @@ asmlinkage long sys_setpriority(int which, int who, int niceval)
 * has been offset by 20 (ie it returns 40..1 instead of -20..19)
 * has been offset by 20 (ie it returns 40..1 instead of -20..19)
 * to stay compatible.
 * to stay compatible.
 */
 */
asmlinkage long sys_getpriority(int which, int who)
SYSCALL_DEFINE2(getpriority, int, which, int, who)
{
{
	struct task_struct *g, *p;
	struct task_struct *g, *p;
	struct user_struct *user;
	struct user_struct *user;
@@ -355,7 +355,8 @@ EXPORT_SYMBOL_GPL(kernel_power_off);
 *
 *
 * reboot doesn't sync: do that yourself before calling this.
 * reboot doesn't sync: do that yourself before calling this.
 */
 */
asmlinkage long sys_reboot(int magic1, int magic2, unsigned int cmd, void __user * arg)
SYSCALL_DEFINE4(reboot, int, magic1, int, magic2, unsigned int, cmd,
		void __user *, arg)
{
{
	char buffer[256];
	char buffer[256];


Loading