Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
17da2bd9
Commit
17da2bd9
authored
Jan 14, 2009
by
Heiko Carstens
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[CVE-2009-0029] System call wrappers part 08
Signed-off-by:
Heiko Carstens
<
heiko.carstens@de.ibm.com
>
parent
754fe8d2
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
19 additions
and
26 deletions
+19
-26
kernel/exit.c
kernel/exit.c
+3
-4
kernel/fork.c
kernel/fork.c
+1
-1
kernel/futex.c
kernel/futex.c
+3
-3
kernel/module.c
kernel/module.c
+4
-6
kernel/sched.c
kernel/sched.c
+1
-1
kernel/signal.c
kernel/signal.c
+7
-11
No files found.
kernel/exit.c
View file @
17da2bd9
...
...
@@ -1754,9 +1754,8 @@ static long do_wait(enum pid_type type, struct pid *pid, int options,
return
retval
;
}
asmlinkage
long
sys_waitid
(
int
which
,
pid_t
upid
,
struct
siginfo
__user
*
infop
,
int
options
,
struct
rusage
__user
*
ru
)
SYSCALL_DEFINE5
(
waitid
,
int
,
which
,
pid_t
,
upid
,
struct
siginfo
__user
*
,
infop
,
int
,
options
,
struct
rusage
__user
*
,
ru
)
{
struct
pid
*
pid
=
NULL
;
enum
pid_type
type
;
...
...
@@ -1833,7 +1832,7 @@ SYSCALL_DEFINE4(wait4, pid_t, upid, int __user *, stat_addr,
* sys_waitpid() remains for compatibility. waitpid() should be
* implemented by calling sys_wait4() from libc.a.
*/
asmlinkage
long
sys_waitpid
(
pid_t
pid
,
int
__user
*
stat_addr
,
int
options
)
SYSCALL_DEFINE3
(
waitpid
,
pid_t
,
pid
,
int
__user
*
,
stat_addr
,
int
,
options
)
{
return
sys_wait4
(
pid
,
stat_addr
,
options
,
NULL
);
}
...
...
kernel/fork.c
View file @
17da2bd9
...
...
@@ -901,7 +901,7 @@ static void copy_flags(unsigned long clone_flags, struct task_struct *p)
clear_freeze_flag
(
p
);
}
asmlinkage
long
sys_set_tid_address
(
int
__user
*
tidptr
)
SYSCALL_DEFINE1
(
set_tid_address
,
int
__user
*
,
tidptr
)
{
current
->
clear_child_tid
=
tidptr
;
...
...
kernel/futex.c
View file @
17da2bd9
...
...
@@ -1978,9 +1978,9 @@ long do_futex(u32 __user *uaddr, int op, u32 val, ktime_t *timeout,
}
asmlinkage
long
sys_futex
(
u32
__user
*
uaddr
,
int
op
,
u32
val
,
struct
timespec
__user
*
utime
,
u32
__user
*
uaddr2
,
u32
val3
)
SYSCALL_DEFINE6
(
futex
,
u32
__user
*
,
uaddr
,
int
,
op
,
u32
,
val
,
struct
timespec
__user
*
,
utime
,
u32
__user
*
,
uaddr2
,
u32
,
val3
)
{
struct
timespec
ts
;
ktime_t
t
,
*
tp
=
NULL
;
...
...
kernel/module.c
View file @
17da2bd9
...
...
@@ -743,8 +743,8 @@ static void wait_for_zero_refcount(struct module *mod)
mutex_lock
(
&
module_mutex
);
}
asmlinkage
long
sys_delete_module
(
const
char
__user
*
name_user
,
unsigned
int
flags
)
SYSCALL_DEFINE2
(
delete_module
,
const
char
__user
*
,
name_user
,
unsigned
int
,
flags
)
{
struct
module
*
mod
;
char
name
[
MODULE_NAME_LEN
];
...
...
@@ -2296,10 +2296,8 @@ static noinline struct module *load_module(void __user *umod,
}
/* This is where the real work happens */
asmlinkage
long
sys_init_module
(
void
__user
*
umod
,
unsigned
long
len
,
const
char
__user
*
uargs
)
SYSCALL_DEFINE3
(
init_module
,
void
__user
*
,
umod
,
unsigned
long
,
len
,
const
char
__user
*
,
uargs
)
{
struct
module
*
mod
;
int
ret
=
0
;
...
...
kernel/sched.c
View file @
17da2bd9
...
...
@@ -5869,7 +5869,7 @@ SYSCALL_DEFINE1(sched_get_priority_min, int, policy)
* this syscall writes the default timeslice value of a given process
* into the user-space timespec buffer. A value of '0' means infinity.
*/
SYSCALL_DEFINE
4
(
sched_rr_get_interval
,
pid_t
,
pid
,
SYSCALL_DEFINE
2
(
sched_rr_get_interval
,
pid_t
,
pid
,
struct
timespec
__user
*
,
interval
)
{
struct
task_struct
*
p
;
...
...
kernel/signal.c
View file @
17da2bd9
...
...
@@ -2014,8 +2014,8 @@ int sigprocmask(int how, sigset_t *set, sigset_t *oldset)
return
error
;
}
asmlinkage
long
sys_rt_sigprocmask
(
int
how
,
sigset_t
__user
*
set
,
sigset_t
__user
*
oset
,
size_t
sigsetsize
)
SYSCALL_DEFINE4
(
rt_sigprocmask
,
int
,
how
,
sigset_t
__user
*
,
set
,
sigset_t
__user
*
,
oset
,
size_t
,
sigsetsize
)
{
int
error
=
-
EINVAL
;
sigset_t
old_set
,
new_set
;
...
...
@@ -2074,8 +2074,7 @@ long do_sigpending(void __user *set, unsigned long sigsetsize)
return
error
;
}
asmlinkage
long
sys_rt_sigpending
(
sigset_t
__user
*
set
,
size_t
sigsetsize
)
SYSCALL_DEFINE2
(
rt_sigpending
,
sigset_t
__user
*
,
set
,
size_t
,
sigsetsize
)
{
return
do_sigpending
(
set
,
sigsetsize
);
}
...
...
@@ -2146,11 +2145,9 @@ int copy_siginfo_to_user(siginfo_t __user *to, siginfo_t *from)
#endif
asmlinkage
long
sys_rt_sigtimedwait
(
const
sigset_t
__user
*
uthese
,
siginfo_t
__user
*
uinfo
,
const
struct
timespec
__user
*
uts
,
size_t
sigsetsize
)
SYSCALL_DEFINE4
(
rt_sigtimedwait
,
const
sigset_t
__user
*
,
uthese
,
siginfo_t
__user
*
,
uinfo
,
const
struct
timespec
__user
*
,
uts
,
size_t
,
sigsetsize
)
{
int
ret
,
sig
;
sigset_t
these
;
...
...
@@ -2223,8 +2220,7 @@ sys_rt_sigtimedwait(const sigset_t __user *uthese,
return
ret
;
}
asmlinkage
long
sys_kill
(
pid_t
pid
,
int
sig
)
SYSCALL_DEFINE2
(
kill
,
pid_t
,
pid
,
int
,
sig
)
{
struct
siginfo
info
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment