diff options
| author | James Morris <[email protected]> | 2006-06-23 09:03:58 +0000 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2006-06-23 14:42:53 +0000 |
| commit | 03e68060636e05989ea94bcb671ab633948f328c (patch) | |
| tree | aee5e7b55f31998536dd3a4f54f38caeee6105d6 /security/selinux/hooks.c | |
| parent | [PATCH] move_pages: fix 32 -> 64 bit compat function (diff) | |
| download | kernel-03e68060636e05989ea94bcb671ab633948f328c.tar.gz kernel-03e68060636e05989ea94bcb671ab633948f328c.zip | |
[PATCH] lsm: add task_setioprio hook
Implement an LSM hook for setting a task's IO priority, similar to the hook
for setting a tasks's nice value.
A previous version of this LSM hook was included in an older version of
multiadm by Jan Engelhardt, although I don't recall it being submitted
upstream.
Also included is the corresponding SELinux hook, which re-uses the setsched
permission in the proccess class.
Signed-off-by: James Morris <[email protected]>
Acked-by: Stephen Smalley <[email protected]>
Cc: Jan Engelhardt <[email protected]>
Cc: Chris Wright <[email protected]>
Cc: Jens Axboe <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'security/selinux/hooks.c')
| -rw-r--r-- | security/selinux/hooks.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 093efba4d9b6..9dcf298921d4 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c @@ -2645,6 +2645,11 @@ static int selinux_task_setnice(struct task_struct *p, int nice) return task_has_perm(current,p, PROCESS__SETSCHED); } +static int selinux_task_setioprio(struct task_struct *p, int ioprio) +{ + return task_has_perm(current, p, PROCESS__SETSCHED); +} + static int selinux_task_setrlimit(unsigned int resource, struct rlimit *new_rlim) { struct rlimit *old_rlim = current->signal->rlim + resource; @@ -4383,6 +4388,7 @@ static struct security_operations selinux_ops = { .task_getsid = selinux_task_getsid, .task_setgroups = selinux_task_setgroups, .task_setnice = selinux_task_setnice, + .task_setioprio = selinux_task_setioprio, .task_setrlimit = selinux_task_setrlimit, .task_setscheduler = selinux_task_setscheduler, .task_getscheduler = selinux_task_getscheduler, |
