|
@@ -914,6 +914,14 @@ static int ecryptfs_setattr(struct dentry *dentry, struct iattr *ia)
|
|
|
if (rc < 0)
|
|
|
goto out;
|
|
|
}
|
|
|
+
|
|
|
+ /*
|
|
|
+ * mode change is for clearing setuid/setgid bits. Allow lower fs
|
|
|
+ * to interpret this in its own way.
|
|
|
+ */
|
|
|
+ if (ia->ia_valid & (ATTR_KILL_SUID | ATTR_KILL_SGID))
|
|
|
+ ia->ia_valid &= ~ATTR_MODE;
|
|
|
+
|
|
|
rc = notify_change(lower_dentry, ia);
|
|
|
out:
|
|
|
fsstack_copy_attr_all(inode, lower_inode, NULL);
|