Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
362e9c07
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
161
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
362e9c07
编写于
1月 14, 2009
作者:
H
Heiko Carstens
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[CVE-2009-0029] System call wrappers part 05
Signed-off-by:
N
Heiko Carstens
<
heiko.carstens@de.ibm.com
>
上级
b290ebe2
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
21 addition
and
27 deletion
+21
-27
kernel/itimer.c
kernel/itimer.c
+2
-3
kernel/posix-timers.c
kernel/posix-timers.c
+19
-24
未找到文件。
kernel/itimer.c
浏览文件 @
362e9c07
...
...
@@ -260,9 +260,8 @@ unsigned int alarm_setitimer(unsigned int seconds)
return
it_old
.
it_value
.
tv_sec
;
}
asmlinkage
long
sys_setitimer
(
int
which
,
struct
itimerval
__user
*
value
,
struct
itimerval
__user
*
ovalue
)
SYSCALL_DEFINE3
(
setitimer
,
int
,
which
,
struct
itimerval
__user
*
,
value
,
struct
itimerval
__user
*
,
ovalue
)
{
struct
itimerval
set_buffer
,
get_buffer
;
int
error
;
...
...
kernel/posix-timers.c
浏览文件 @
362e9c07
...
...
@@ -477,10 +477,9 @@ static void release_posix_timer(struct k_itimer *tmr, int it_id_set)
/* Create a POSIX.1b interval timer. */
asmlinkage
long
sys_timer_create
(
const
clockid_t
which_clock
,
struct
sigevent
__user
*
timer_event_spec
,
timer_t
__user
*
created_timer_id
)
SYSCALL_DEFINE3
(
timer_create
,
const
clockid_t
,
which_clock
,
struct
sigevent
__user
*
,
timer_event_spec
,
timer_t
__user
*
,
created_timer_id
)
{
struct
k_itimer
*
new_timer
;
int
error
,
new_timer_id
;
...
...
@@ -661,8 +660,8 @@ common_timer_get(struct k_itimer *timr, struct itimerspec *cur_setting)
}
/* Get the time remaining on a POSIX.1b interval timer. */
asmlinkage
long
sys_timer_gettime
(
timer_t
timer_id
,
struct
itimerspec
__user
*
setting
)
SYSCALL_DEFINE2
(
timer_gettime
,
timer_t
,
timer_id
,
struct
itimerspec
__user
*
,
setting
)
{
struct
k_itimer
*
timr
;
struct
itimerspec
cur_setting
;
...
...
@@ -691,8 +690,7 @@ sys_timer_gettime(timer_t timer_id, struct itimerspec __user *setting)
* the call back to do_schedule_next_timer(). So all we need to do is
* to pick up the frozen overrun.
*/
asmlinkage
long
sys_timer_getoverrun
(
timer_t
timer_id
)
SYSCALL_DEFINE1
(
timer_getoverrun
,
timer_t
,
timer_id
)
{
struct
k_itimer
*
timr
;
int
overrun
;
...
...
@@ -760,10 +758,9 @@ common_timer_set(struct k_itimer *timr, int flags,
}
/* Set a POSIX.1b interval timer */
asmlinkage
long
sys_timer_settime
(
timer_t
timer_id
,
int
flags
,
const
struct
itimerspec
__user
*
new_setting
,
struct
itimerspec
__user
*
old_setting
)
SYSCALL_DEFINE4
(
timer_settime
,
timer_t
,
timer_id
,
int
,
flags
,
const
struct
itimerspec
__user
*
,
new_setting
,
struct
itimerspec
__user
*
,
old_setting
)
{
struct
k_itimer
*
timr
;
struct
itimerspec
new_spec
,
old_spec
;
...
...
@@ -816,8 +813,7 @@ static inline int timer_delete_hook(struct k_itimer *timer)
}
/* Delete a POSIX.1b interval timer. */
asmlinkage
long
sys_timer_delete
(
timer_t
timer_id
)
SYSCALL_DEFINE1
(
timer_delete
,
timer_t
,
timer_id
)
{
struct
k_itimer
*
timer
;
unsigned
long
flags
;
...
...
@@ -903,8 +899,8 @@ int do_posix_clock_nonanosleep(const clockid_t clock, int flags,
}
EXPORT_SYMBOL_GPL
(
do_posix_clock_nonanosleep
);
asmlinkage
long
sys_clock_settime
(
const
clockid_t
which_clock
,
const
struct
timespec
__user
*
tp
)
SYSCALL_DEFINE2
(
clock_settime
,
const
clockid_t
,
which_clock
,
const
struct
timespec
__user
*
,
tp
)
{
struct
timespec
new_tp
;
...
...
@@ -916,8 +912,8 @@ asmlinkage long sys_clock_settime(const clockid_t which_clock,
return
CLOCK_DISPATCH
(
which_clock
,
clock_set
,
(
which_clock
,
&
new_tp
));
}
asmlinkage
long
sys_clock_gettime
(
const
clockid_t
which_clock
,
struct
timespec
__user
*
tp
)
SYSCALL_DEFINE2
(
clock_gettime
,
const
clockid_t
,
which_clock
,
struct
timespec
__user
*
,
tp
)
{
struct
timespec
kernel_tp
;
int
error
;
...
...
@@ -933,8 +929,8 @@ sys_clock_gettime(const clockid_t which_clock, struct timespec __user *tp)
}
asmlinkage
long
sys_clock_getres
(
const
clockid_t
which_clock
,
struct
timespec
__user
*
tp
)
SYSCALL_DEFINE2
(
clock_getres
,
const
clockid_t
,
which_clock
,
struct
timespec
__user
*
,
tp
)
{
struct
timespec
rtn_tp
;
int
error
;
...
...
@@ -963,10 +959,9 @@ static int common_nsleep(const clockid_t which_clock, int flags,
which_clock
);
}
asmlinkage
long
sys_clock_nanosleep
(
const
clockid_t
which_clock
,
int
flags
,
const
struct
timespec
__user
*
rqtp
,
struct
timespec
__user
*
rmtp
)
SYSCALL_DEFINE4
(
clock_nanosleep
,
const
clockid_t
,
which_clock
,
int
,
flags
,
const
struct
timespec
__user
*
,
rqtp
,
struct
timespec
__user
*
,
rmtp
)
{
struct
timespec
t
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录