keys: Replace uid/gid/perm permissions checking with an ACL
[sfrench/cifs-2.6.git] / security / smack / smack_lsm.c
index 0de725f88bedb24a0c0207b9953074316ee158f5..6095dc3565a55a18f47e76ac7a7daa62cbdf082c 100644 (file)
@@ -4285,7 +4285,8 @@ static int smack_key_permission(key_ref_t key_ref,
 #endif
        if (perm & (KEY_NEED_READ | KEY_NEED_SEARCH | KEY_NEED_VIEW))
                request |= MAY_READ;
-       if (perm & (KEY_NEED_WRITE | KEY_NEED_LINK | KEY_NEED_SETATTR))
+       if (perm & (KEY_NEED_WRITE | KEY_NEED_LINK | KEY_NEED_SETSEC |
+                   KEY_NEED_INVAL | KEY_NEED_REVOKE | KEY_NEED_CLEAR))
                request |= MAY_WRITE;
        rc = smk_access(tkp, keyp->security, request, &ad);
        rc = smk_bu_note("key access", tkp, keyp->security, request, rc);