DF-0165 / fix.diff
diff --git a/sys/kern/kern_caps.c b/sys/kern/kern_caps.c --- a/sys/kern/kern_caps.c +++ b/sys/kern/kern_caps.c @@ -332,8 +332,9 @@ res = caps_check_cred(cred, cap); if (cap & __SYSCAP_GROUP_MASK) { - cap = (cap & __SYSCAP_GROUP_MASK) >> __SYSCAP_GROUP_SHIFT; - res |= caps_check_cred(cred, cap); + int gcap = (cap & __SYSCAP_GROUP_MASK) >> __SYSCAP_GROUP_SHIFT; + + res |= caps_check_cred(cred, gcap); } if (res & __SYSCAP_SELF) return EPERM; |