diff options
Diffstat (limited to 'fs/attr.c')
-rw-r--r-- | fs/attr.c | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -116,6 +116,15 @@ int notify_change(struct dentry * dentry, struct iattr * attr) | |||
116 | attr->ia_atime = now; | 116 | attr->ia_atime = now; |
117 | if (!(ia_valid & ATTR_MTIME_SET)) | 117 | if (!(ia_valid & ATTR_MTIME_SET)) |
118 | attr->ia_mtime = now; | 118 | attr->ia_mtime = now; |
119 | if (ia_valid & ATTR_KILL_PRIV) { | ||
120 | attr->ia_valid &= ~ATTR_KILL_PRIV; | ||
121 | ia_valid &= ~ATTR_KILL_PRIV; | ||
122 | error = security_inode_need_killpriv(dentry); | ||
123 | if (error > 0) | ||
124 | error = security_inode_killpriv(dentry); | ||
125 | if (error) | ||
126 | return error; | ||
127 | } | ||
119 | if (ia_valid & ATTR_KILL_SUID) { | 128 | if (ia_valid & ATTR_KILL_SUID) { |
120 | attr->ia_valid &= ~ATTR_KILL_SUID; | 129 | attr->ia_valid &= ~ATTR_KILL_SUID; |
121 | if (mode & S_ISUID) { | 130 | if (mode & S_ISUID) { |