Merge 0746c4a9f3
("Merge branch 'i2c/for-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux") into android-mainline
Steps on the way to 5.10-rc1 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: Iec426c6de4a59a517e5fa575a9424b883d958f08
This commit is contained in:
10
kernel/sys.c
10
kernel/sys.c
@@ -375,7 +375,7 @@ long __sys_setregid(gid_t rgid, gid_t egid)
|
||||
if (rgid != (gid_t) -1) {
|
||||
if (gid_eq(old->gid, krgid) ||
|
||||
gid_eq(old->egid, krgid) ||
|
||||
ns_capable(old->user_ns, CAP_SETGID))
|
||||
ns_capable_setid(old->user_ns, CAP_SETGID))
|
||||
new->gid = krgid;
|
||||
else
|
||||
goto error;
|
||||
@@ -384,7 +384,7 @@ long __sys_setregid(gid_t rgid, gid_t egid)
|
||||
if (gid_eq(old->gid, kegid) ||
|
||||
gid_eq(old->egid, kegid) ||
|
||||
gid_eq(old->sgid, kegid) ||
|
||||
ns_capable(old->user_ns, CAP_SETGID))
|
||||
ns_capable_setid(old->user_ns, CAP_SETGID))
|
||||
new->egid = kegid;
|
||||
else
|
||||
goto error;
|
||||
@@ -434,7 +434,7 @@ long __sys_setgid(gid_t gid)
|
||||
old = current_cred();
|
||||
|
||||
retval = -EPERM;
|
||||
if (ns_capable(old->user_ns, CAP_SETGID))
|
||||
if (ns_capable_setid(old->user_ns, CAP_SETGID))
|
||||
new->gid = new->egid = new->sgid = new->fsgid = kgid;
|
||||
else if (gid_eq(kgid, old->gid) || gid_eq(kgid, old->sgid))
|
||||
new->egid = new->fsgid = kgid;
|
||||
@@ -746,7 +746,7 @@ long __sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid)
|
||||
old = current_cred();
|
||||
|
||||
retval = -EPERM;
|
||||
if (!ns_capable(old->user_ns, CAP_SETGID)) {
|
||||
if (!ns_capable_setid(old->user_ns, CAP_SETGID)) {
|
||||
if (rgid != (gid_t) -1 && !gid_eq(krgid, old->gid) &&
|
||||
!gid_eq(krgid, old->egid) && !gid_eq(krgid, old->sgid))
|
||||
goto error;
|
||||
@@ -873,7 +873,7 @@ long __sys_setfsgid(gid_t gid)
|
||||
|
||||
if (gid_eq(kgid, old->gid) || gid_eq(kgid, old->egid) ||
|
||||
gid_eq(kgid, old->sgid) || gid_eq(kgid, old->fsgid) ||
|
||||
ns_capable(old->user_ns, CAP_SETGID)) {
|
||||
ns_capable_setid(old->user_ns, CAP_SETGID)) {
|
||||
if (!gid_eq(kgid, old->fsgid)) {
|
||||
new->fsgid = kgid;
|
||||
if (security_task_fix_setgid(new,old,LSM_SETID_FS) == 0)
|
||||
|
Reference in New Issue
Block a user