summaryrefslogtreecommitdiffstats
path: root/security
diff options
context:
space:
mode:
authorThomas Cedeno <thomascedeno@google.com>2020-06-09 10:22:13 -0700
committerMicah Morton <mortonm@chromium.org>2020-06-14 10:52:02 -0700
commit39030e1351aa1aa7443bb2da24426573077c83da (patch)
treef593d47dfb088f59bf3db1ce3be5ddc475af6218 /security
parent3d77e6a8804abcc0504c904bd6e5cdf3a5cf8162 (diff)
downloadlinux-stable-39030e1351aa1aa7443bb2da24426573077c83da.tar.gz
linux-stable-39030e1351aa1aa7443bb2da24426573077c83da.tar.bz2
linux-stable-39030e1351aa1aa7443bb2da24426573077c83da.zip
security: Add LSM hooks to set*gid syscalls
The SafeSetID LSM uses the security_task_fix_setuid hook to filter set*uid() syscalls according to its configured security policy. In preparation for adding analagous support in the LSM for set*gid() syscalls, we add the requisite hook here. Tested by putting print statements in the security_task_fix_setgid hook and seeing them get hit during kernel boot. Signed-off-by: Thomas Cedeno <thomascedeno@google.com> Signed-off-by: Micah Morton <mortonm@chromium.org>
Diffstat (limited to 'security')
-rw-r--r--security/security.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/security/security.c b/security/security.c
index 51de970fbb1e..5d4ad6f3fc55 100644
--- a/security/security.c
+++ b/security/security.c
@@ -1685,6 +1685,12 @@ int security_task_fix_setuid(struct cred *new, const struct cred *old,
return call_int_hook(task_fix_setuid, 0, new, old, flags);
}
+int security_task_fix_setgid(struct cred *new, const struct cred *old,
+ int flags)
+{
+ return call_int_hook(task_fix_setgid, 0, new, old, flags);
+}
+
int security_task_setpgid(struct task_struct *p, pid_t pgid)
{
return call_int_hook(task_setpgid, 0, p, pgid);